From 25469cd522ad831d9e0ffc1b95278a15c8a1c1d9 Mon Sep 17 00:00:00 2001 From: yasahi-hpc <57478230+yasahi-hpc@users.noreply.github.com> Date: Tue, 1 Oct 2024 12:07:07 +0200 Subject: [PATCH] Fix unresolved doxygen for N-dimensional FFT APIs (#143) * Add norm arg * try predefined * apply predefined --------- Co-authored-by: Yuuichi Asahi --- docs/Doxyfile.in | 2 +- docs/api/standard/fftn.rst | 2 +- fft/src/KokkosFFT_Transform.hpp | 28 ++++++++++++++++++++++++---- 3 files changed, 26 insertions(+), 6 deletions(-) diff --git a/docs/Doxyfile.in b/docs/Doxyfile.in index 1e4224ef..71b91f30 100644 --- a/docs/Doxyfile.in +++ b/docs/Doxyfile.in @@ -2177,7 +2177,7 @@ INCLUDE_FILE_PATTERNS = # recursively expanded use the := operator instead of the = operator. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES. -PREDEFINED = +PREDEFINED = DOXY # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this # tag can be used to specify a list of macro names that should be expanded. The diff --git a/docs/api/standard/fftn.rst b/docs/api/standard/fftn.rst index 7052392e..36669085 100644 --- a/docs/api/standard/fftn.rst +++ b/docs/api/standard/fftn.rst @@ -5,4 +5,4 @@ KokkosFFT::fftn --------------- -.. doxygenfunction:: KokkosFFT::fftn(const ExecutionSpace& exec_space, const InViewType& in, OutViewType& out, axis_type axes, KokkosFFT::Normalization, shape_type s) \ No newline at end of file +.. doxygenfunction:: KokkosFFT::fftn(const ExecutionSpace& exec_space, const InViewType& in, OutViewType& out, axis_type axes, KokkosFFT::Normalization norm, shape_type s) \ No newline at end of file diff --git a/fft/src/KokkosFFT_Transform.hpp b/fft/src/KokkosFFT_Transform.hpp index a3224acb..490e3d7d 100644 --- a/fft/src/KokkosFFT_Transform.hpp +++ b/fft/src/KokkosFFT_Transform.hpp @@ -469,11 +469,16 @@ void irfft2(const ExecutionSpace& exec_space, const InViewType& in, /// \param exec_space [in] Kokkos execution space /// \param in [in] Input data (complex) /// \param out [out] Ouput data (complex) -/// \param axes [in] Axes over which FFT is performed (optional) +/// \param axes [in] Axes over which FFT is performed (default, all axes) /// \param norm [in] How the normalization is applied (optional) /// \param s [in] Shape of the transformed axis of the output (optional) +#if defined(DOXY) +template +#else template +#endif void fftn( const ExecutionSpace& exec_space, const InViewType& in, OutViewType& out, axis_type axes = @@ -504,11 +509,16 @@ void fftn( /// \param exec_space [in] Kokkos execution space /// \param in [in] Input data (complex) /// \param out [out] Ouput data (complex) -/// \param axes [in] Axes over which FFT is performed (optional) +/// \param axes [in] Axes over which FFT is performed (default, all axes) /// \param norm [in] How the normalization is applied (optional) /// \param s [in] Shape of the transformed axis of the output (optional) +#if defined(DOXY) +template +#else template +#endif void ifftn( const ExecutionSpace& exec_space, const InViewType& in, OutViewType& out, axis_type axes = @@ -541,11 +551,16 @@ void ifftn( /// \param exec_space [in] Kokkos execution space /// \param in [in] Input data (real) /// \param out [out] Ouput data (complex) -/// \param axes [in] Axes over which FFT is performed (optional) +/// \param axes [in] Axes over which FFT is performed (default, all axes) /// \param norm [in] How the normalization is applied (optional) /// \param s [in] Shape of the transformed axis of the output (optional) +#if defined(DOXY) +template +#else template +#endif void rfftn( const ExecutionSpace& exec_space, const InViewType& in, OutViewType& out, axis_type axes = @@ -584,11 +599,16 @@ void rfftn( /// \param exec_space [in] Kokkos execution space /// \param in [in] Input data (complex) /// \param out [out] Ouput data (real) -/// \param axes [in] Axes over which FFT is performed (optional) +/// \param axes [in] Axes over which FFT is performed (default, all axes) /// \param norm [in] How the normalization is applied (optional) /// \param s [in] Shape of the transformed axis of the output (optional) +#if defined(DOXY) +template +#else template +#endif void irfftn( const ExecutionSpace& exec_space, const InViewType& in, OutViewType& out, axis_type axes =