mkl_trig_transforms.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /*******************************************************************************
  2. * Copyright 2006-2022 Intel Corporation.
  3. *
  4. * This software and the related documents are Intel copyrighted materials, and
  5. * your use of them is governed by the express license under which they were
  6. * provided to you (License). Unless the License provides otherwise, you may not
  7. * use, modify, copy, publish, distribute, disclose or transmit this software or
  8. * the related documents without Intel's prior written permission.
  9. *
  10. * This software and the related documents are provided as is, with no express
  11. * or implied warranties, other than those that are expressly stated in the
  12. * License.
  13. *******************************************************************************/
  14. /*
  15. ! Content:
  16. ! Intel(R) oneAPI Math Kernel Library (oneMKL) interface for TT routines
  17. !******************************************************************************/
  18. #ifndef _MKL_TRIG_TRANSFORMS_H_
  19. #define _MKL_TRIG_TRANSFORMS_H_
  20. /* definitions of oneMKL types */
  21. #include "mkl_types.h"
  22. #include "mkl_dfti.h"
  23. #ifdef __cplusplus
  24. extern "C" {
  25. #endif /* __cplusplus */
  26. /* Parameters definitions for the kind of the Trigonometric Transform: */
  27. #define MKL_SINE_TRANSFORM 0
  28. #define MKL_COSINE_TRANSFORM 1
  29. #define MKL_STAGGERED_COSINE_TRANSFORM 2
  30. #define MKL_STAGGERED_SINE_TRANSFORM 3
  31. #define MKL_STAGGERED2_COSINE_TRANSFORM 4
  32. #define MKL_STAGGERED2_SINE_TRANSFORM 5
  33. /* TT lower case */
  34. void d_init_trig_transform(MKL_INT *, MKL_INT *, MKL_INT *, double *, MKL_INT *);
  35. void d_commit_trig_transform(double *, DFTI_DESCRIPTOR_HANDLE *, MKL_INT *, double *, MKL_INT *);
  36. void d_forward_trig_transform(double *, DFTI_DESCRIPTOR_HANDLE *, MKL_INT *, double *, MKL_INT *);
  37. void d_backward_trig_transform(double *, DFTI_DESCRIPTOR_HANDLE *, MKL_INT *, double *, MKL_INT *);
  38. void s_init_trig_transform(MKL_INT *, MKL_INT *, MKL_INT *, float *, MKL_INT *);
  39. void s_commit_trig_transform(float *, DFTI_DESCRIPTOR_HANDLE *, MKL_INT *, float *, MKL_INT *);
  40. void s_forward_trig_transform(float *, DFTI_DESCRIPTOR_HANDLE *, MKL_INT *, float *, MKL_INT *);
  41. void s_backward_trig_transform(float *, DFTI_DESCRIPTOR_HANDLE *, MKL_INT *, float *, MKL_INT *);
  42. void free_trig_transform(DFTI_DESCRIPTOR_HANDLE *, MKL_INT *, MKL_INT *);
  43. #ifdef __cplusplus
  44. }
  45. #endif /* __cplusplus */
  46. #endif /* _MKL_DFTI_H_ */