HOPS
HOPS class reference
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType > Class Template Reference

Class MHO_MultidimensionalFastFourierTransformInterface. More...

#include <MHO_MultidimensionalFastFourierTransformInterface.hh>

Inheritance diagram for hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >:
[legend]

Classes

class  TransformAxis
 Class TransformAxis. More...
 

Public Types

using complex_value_type = typename XArgType::value_type
 
using floating_point_value_type = typename XArgType::value_type::value_type
 

Public Member Functions

 MHO_MultidimensionalFastFourierTransformInterface ()
 
virtual ~MHO_MultidimensionalFastFourierTransformInterface ()
 
virtual void DeselectAllAxes ()
 Deselects all axes by setting fAxesToXForm to false and resetting initialization. More...
 
void DisableAxisLabelTransformation ()
 Disables axis label transformation by setting fTransformAxisLabels to false. More...
 
void EnableAxisLabelTransformation ()
 Enables transformation for axis labels. More...
 
virtual void SelectAllAxes ()
 Selects all axes for transformation. More...
 
virtual void SelectAxis (std::size_t axis_index)
 Selects an axis for transformation if within array rank. More...
 
virtual void SetBackward ()
 Setter for backward. More...
 
virtual void SetForward ()
 Setter for forward. More...
 

Protected Member Functions

template<typename XCheckType = XArgType>
std::enable_if< !std::is_base_of< MHO_TableContainerBase, XCheckType >::value, void >::type IfTableTransformAxis (XArgType *, std::size_t)
 Transforms axis of input data if transformation is enabled and axis was transformed. More...
 
template<typename XCheckType = XArgType>
std::enable_if< std::is_base_of< MHO_TableContainerBase, XCheckType >::value, void >::type IfTableTransformAxis (XArgType *in, std::size_t axis_index)
 Transforms axis of input table if specified dimension was transformed. More...
 

Protected Attributes

bool fAxesToXForm [XArgType::rank::value]
 
size_t fDimensionSize [XArgType::rank::value]
 
bool fForward
 
bool fInitialized
 
bool fIsValid
 
bool fTransformAxisLabels
 

Detailed Description

template<typename XArgType>
class hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >

Class MHO_MultidimensionalFastFourierTransformInterface.

Author
J. Barrett - barre.nosp@m.ttj@.nosp@m.mit.e.nosp@m.du
Date
Mon Jul 31 17:16:37 2023 -0400

Member Typedef Documentation

◆ complex_value_type

template<typename XArgType >
using hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::complex_value_type = typename XArgType::value_type

◆ floating_point_value_type

template<typename XArgType >
using hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::floating_point_value_type = typename XArgType::value_type::value_type

Constructor & Destructor Documentation

◆ MHO_MultidimensionalFastFourierTransformInterface()

◆ ~MHO_MultidimensionalFastFourierTransformInterface()

template<typename XArgType >
virtual hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::~MHO_MultidimensionalFastFourierTransformInterface ( )
inlinevirtual

Member Function Documentation

◆ DeselectAllAxes()

template<typename XArgType >
virtual void hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::DeselectAllAxes ( )
inlinevirtual

Deselects all axes by setting fAxesToXForm to false and resetting initialization.

Note
This is a virtual function.

◆ DisableAxisLabelTransformation()

template<typename XArgType >
void hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::DisableAxisLabelTransformation ( )
inline

Disables axis label transformation by setting fTransformAxisLabels to false.

◆ EnableAxisLabelTransformation()

template<typename XArgType >
void hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::EnableAxisLabelTransformation ( )
inline

Enables transformation for axis labels.

◆ IfTableTransformAxis() [1/2]

template<typename XArgType >
template<typename XCheckType = XArgType>
std::enable_if< !std::is_base_of< MHO_TableContainerBase, XCheckType >::value, void >::type hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::IfTableTransformAxis ( XArgType *  ,
std::size_t   
)
inlineprotected

Transforms axis of input data if transformation is enabled and axis was transformed.

Template Parameters
XCheckTypeTemplate parameter XCheckType
Parameters
!inParameter description
!axis_indexParameter description

◆ IfTableTransformAxis() [2/2]

template<typename XArgType >
template<typename XCheckType = XArgType>
std::enable_if< std::is_base_of< MHO_TableContainerBase, XCheckType >::value, void >::type hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::IfTableTransformAxis ( XArgType *  in,
std::size_t  axis_index 
)
inlineprotected

Transforms axis of input table if specified dimension was transformed.

Template Parameters
XCheckTypeTemplate parameter XCheckType
Parameters
inInput table of type XArgType
axis_indexIndex of axis to transform

◆ SelectAllAxes()

template<typename XArgType >
virtual void hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::SelectAllAxes ( )
inlinevirtual

Selects all axes for transformation.

Note
This is a virtual function.

◆ SelectAxis()

template<typename XArgType >
virtual void hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::SelectAxis ( std::size_t  axis_index)
inlinevirtual

Selects an axis for transformation if within array rank.

Parameters
axis_indexIndex of the axis to select.
Note
This is a virtual function.

Reimplemented in hops::MHO_OpenCLFastFourierTransformRadix2Stage< XArgType >.

◆ SetBackward()

template<typename XArgType >
virtual void hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::SetBackward ( )
inlinevirtual

Setter for backward.

Note
This is a virtual function.

◆ SetForward()

template<typename XArgType >
virtual void hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::SetForward ( )
inlinevirtual

Setter for forward.

Note
This is a virtual function.

Member Data Documentation

◆ fAxesToXForm

template<typename XArgType >
bool hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::fAxesToXForm[XArgType::rank::value]
protected

◆ fDimensionSize

template<typename XArgType >
size_t hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::fDimensionSize[XArgType::rank::value]
protected

◆ fForward

template<typename XArgType >
bool hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::fForward
protected

◆ fInitialized

template<typename XArgType >
bool hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::fInitialized
protected

◆ fIsValid

template<typename XArgType >
bool hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::fIsValid
protected

◆ fTransformAxisLabels

template<typename XArgType >
bool hops::MHO_MultidimensionalFastFourierTransformInterface< XArgType >::fTransformAxisLabels
protected

The documentation for this class was generated from the following file: