mkl_cdft.h 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /*******************************************************************************
  2. * Copyright 2002-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 Cluster DFT routines
  17. !******************************************************************************/
  18. /* Avoid multiple definition */
  19. #ifndef _MKL_CDFT_H_
  20. #define _MKL_CDFT_H_
  21. /* Include header-files */
  22. #include "mpi.h"
  23. #include "mkl_cdft_types.h"
  24. /* Keep C++ compilers from getting confused */
  25. #ifdef __cplusplus
  26. extern "C" {
  27. #endif
  28. /* Prototypes of routines */
  29. extern MKL_LONG DftiCreateDescriptorDM(MPI_Comm,DFTI_DESCRIPTOR_DM_HANDLE*,enum DFTI_CONFIG_VALUE,enum DFTI_CONFIG_VALUE,MKL_LONG,...);
  30. extern MKL_LONG DftiGetValueDM(DFTI_DESCRIPTOR_DM_HANDLE,int,...);
  31. extern MKL_LONG DftiSetValueDM(DFTI_DESCRIPTOR_DM_HANDLE,int,...);
  32. extern MKL_LONG DftiCommitDescriptorDM(DFTI_DESCRIPTOR_DM_HANDLE);
  33. extern MKL_LONG DftiComputeForwardDM(DFTI_DESCRIPTOR_DM_HANDLE,void*,...);
  34. extern MKL_LONG DftiComputeBackwardDM(DFTI_DESCRIPTOR_DM_HANDLE,void*,...);
  35. extern MKL_LONG DftiFreeDescriptorDM(DFTI_DESCRIPTOR_DM_HANDLE*);
  36. /* Keep C++ compilers from getting confused (extern "C" {) */
  37. #ifdef __cplusplus
  38. }
  39. #endif
  40. /* Avoid multiple definition (#ifndef _MKL_CDFT_H_) */
  41. #endif