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

Class MHO_EndZeroPadder. More...

#include <MHO_EndZeroPadder.hh>

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

Public Member Functions

 MHO_EndZeroPadder ()
 
virtual ~MHO_EndZeroPadder ()
 
void DeselectAllAxes ()
 Deselects all axes by setting each axis to false. More...
 
virtual void DisableNormFXMode ()
 Disables Normal Mapping FX Mode by setting fNormFXMode to false. UNUSED - TODO REMOVE ME! More...
 
virtual void DisableTagCopy ()
 Disables copying tags by setting fCopyTags to false. More...
 
virtual void DoNotPreserveWorkspace ()
 Sets preserve workspace flag to false, delete memory after execution. More...
 
virtual void EnableNormFXMode ()
 Enables Normalized FX Mode by setting fNormFXMode to true. UNUSED - TODO REMOVE ME! More...
 
virtual void EnableTagCopy ()
 Enables copying of tags. More...
 
virtual void PreserveWorkspace ()
 Sets a flag to preserve workspace memory after execution. More...
 
void SelectAllAxes ()
 Selects all axes for transformation. sometimes we may want to select/deselect particular dimensions of the x-form default is to transform along every dimension, but that may not always be needed. More...
 
void SelectAxis (std::size_t axis_index)
 Selects an axis for transformation if its index is within the array rank. More...
 
virtual void SetEndPadded ()
 Setter for end padded, zero padding from end of data out to end of the array. More...
 
virtual void SetPaddedSize (std::size_t new_size)
 Setter for padded size, instead of a multiplicative factor, the original array, length N is padded out ot the new specified length M. More...
 
virtual void SetPaddingFactor (std::size_t factor)
 Setter for padding factor, the factor M by which the new array will be extended (original array, length N, new array length NM) More...
 
virtual void SetReverseEndPadded ()
 Setter for reverse end padded, place data at end of array and zero pad out to start. More...
 
- Public Member Functions inherited from hops::MHO_UnaryOperator< XArgType >
 MHO_UnaryOperator ()
 
virtual ~MHO_UnaryOperator ()
 
virtual bool Execute () override
 Executes operation using provided arguments and return type. More...
 
virtual bool Execute () override=0
 Function Execute. More...
 
virtual bool Initialize () override
 Initializes the system using in-place or out-of-place arguments. More...
 
virtual bool Initialize () override=0
 Function Initialize. More...
 
 MHO_Operator ()
 
virtual void SetArgs (const XArgType *in, XArgType *out)
 Setter for args. More...
 
virtual void SetArgs (XArgType *in)
 Setter for args. More...
 
- Public Member Functions inherited from hops::MHO_Operator
 MHO_Operator ()
 
virtual ~MHO_Operator ()
 
std::string GetName () const
 Getter for operator name. More...
 
virtual double Priority () const
 Get the the priority field value. More...
 
void SetName (std::string name)
 Setter for operator name. More...
 
virtual void SetPriority (const double &priority)
 Setter for operator priority (determines order of execution within a operator category) More...
 

Protected Member Functions

virtual bool ExecuteInPlace (XArgType *in)
 Executes operation in-place by copying temporary workspace back to input object. More...
 
virtual bool ExecuteOutOfPlace (const XArgType *in, XArgType *out)
 Function ExecuteOutOfPlace. More...
 
virtual bool InitializeInPlace (XArgType *in)
 Initializes in-place by creating a temporary workspace and calling InitializeOutOfPlace. More...
 
virtual bool InitializeOutOfPlace (const XArgType *in, XArgType *out)
 Initializes out-of-place processing for input and output arrays. More...
 

Additional Inherited Members

- Protected Attributes inherited from hops::MHO_UnaryOperator< XArgType >
bool fInPlace
 
std::tuple< XArgType * > fInPlaceArgs
 
std::tuple< const XArgType *, XArgType * > fOutOfPlaceArgs
 

Detailed Description

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

Class MHO_EndZeroPadder.

Pads out the end of a multidimensional array with zeros.

Author
J. Barrett - barre.nosp@m.ttj@.nosp@m.mit.e.nosp@m.du
Date
Fri Aug 11 13:35:43 2023 -0400

Constructor & Destructor Documentation

◆ MHO_EndZeroPadder()

template<typename XArgType >
hops::MHO_EndZeroPadder< XArgType >::MHO_EndZeroPadder ( )
inline

◆ ~MHO_EndZeroPadder()

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

Member Function Documentation

◆ DeselectAllAxes()

template<typename XArgType >
void hops::MHO_EndZeroPadder< XArgType >::DeselectAllAxes ( )
inline

Deselects all axes by setting each axis to false.

◆ DisableNormFXMode()

template<typename XArgType >
virtual void hops::MHO_EndZeroPadder< XArgType >::DisableNormFXMode ( )
inlinevirtual

Disables Normal Mapping FX Mode by setting fNormFXMode to false. UNUSED - TODO REMOVE ME!

Note
This is a virtual function.

◆ DisableTagCopy()

template<typename XArgType >
virtual void hops::MHO_EndZeroPadder< XArgType >::DisableTagCopy ( )
inlinevirtual

Disables copying tags by setting fCopyTags to false.

Note
This is a virtual function.

◆ DoNotPreserveWorkspace()

template<typename XArgType >
virtual void hops::MHO_EndZeroPadder< XArgType >::DoNotPreserveWorkspace ( )
inlinevirtual

Sets preserve workspace flag to false, delete memory after execution.

Note
This is a virtual function.

◆ EnableNormFXMode()

template<typename XArgType >
virtual void hops::MHO_EndZeroPadder< XArgType >::EnableNormFXMode ( )
inlinevirtual

Enables Normalized FX Mode by setting fNormFXMode to true. UNUSED - TODO REMOVE ME!

Note
This is a virtual function.

◆ EnableTagCopy()

template<typename XArgType >
virtual void hops::MHO_EndZeroPadder< XArgType >::EnableTagCopy ( )
inlinevirtual

Enables copying of tags.

Note
This is a virtual function.

◆ ExecuteInPlace()

template<typename XArgType >
virtual bool hops::MHO_EndZeroPadder< XArgType >::ExecuteInPlace ( XArgType *  in)
inlineprotectedvirtual

Executes operation in-place by copying temporary workspace back to input object.

Parameters
inInput object of type XArgType* that will be modified in-place.
Returns
Boolean status indicating success or failure of the operation.
Note
This is a virtual function.

Implements hops::MHO_UnaryOperator< XArgType >.

◆ ExecuteOutOfPlace()

template<typename XArgType >
virtual bool hops::MHO_EndZeroPadder< XArgType >::ExecuteOutOfPlace ( const XArgType *  in,
XArgType *  out 
)
inlineprotectedvirtual

Function ExecuteOutOfPlace.

Parameters
in(const XArgType*)
out(XArgType*)
Returns
Return value (bool)
Note
This is a virtual function.

Implements hops::MHO_UnaryOperator< XArgType >.

◆ InitializeInPlace()

template<typename XArgType >
virtual bool hops::MHO_EndZeroPadder< XArgType >::InitializeInPlace ( XArgType *  in)
inlineprotectedvirtual

Initializes in-place by creating a temporary workspace and calling InitializeOutOfPlace.

Parameters
inInput argument of type XArgType*
Returns
Result of InitializeOutOfPlace function call
Note
This is a virtual function.

Implements hops::MHO_UnaryOperator< XArgType >.

◆ InitializeOutOfPlace()

template<typename XArgType >
virtual bool hops::MHO_EndZeroPadder< XArgType >::InitializeOutOfPlace ( const XArgType *  in,
XArgType *  out 
)
inlineprotectedvirtual

Initializes out-of-place processing for input and output arrays.

Parameters
inPointer to constant input array of type XArgType
outPointer to output array of type XArgType
Returns
Boolean indicating successful initialization
Note
This is a virtual function.

Implements hops::MHO_UnaryOperator< XArgType >.

◆ PreserveWorkspace()

template<typename XArgType >
virtual void hops::MHO_EndZeroPadder< XArgType >::PreserveWorkspace ( )
inlinevirtual

Sets a flag to preserve workspace memory after execution.

Note
This is a virtual function.

◆ SelectAllAxes()

template<typename XArgType >
void hops::MHO_EndZeroPadder< XArgType >::SelectAllAxes ( )
inline

Selects all axes for transformation. sometimes we may want to select/deselect particular dimensions of the x-form default is to transform along every dimension, but that may not always be needed.

◆ SelectAxis()

template<typename XArgType >
void hops::MHO_EndZeroPadder< XArgType >::SelectAxis ( std::size_t  axis_index)
inline

Selects an axis for transformation if its index is within the array rank.

Parameters
axis_indexIndex of the axis to select.

◆ SetEndPadded()

template<typename XArgType >
virtual void hops::MHO_EndZeroPadder< XArgType >::SetEndPadded ( )
inlinevirtual

Setter for end padded, zero padding from end of data out to end of the array.

Note
This is a virtual function.

◆ SetPaddedSize()

template<typename XArgType >
virtual void hops::MHO_EndZeroPadder< XArgType >::SetPaddedSize ( std::size_t  new_size)
inlinevirtual

Setter for padded size, instead of a multiplicative factor, the original array, length N is padded out ot the new specified length M.

Parameters
new_sizeNew padded size of type std::size_t
Note
This is a virtual function.

◆ SetPaddingFactor()

template<typename XArgType >
virtual void hops::MHO_EndZeroPadder< XArgType >::SetPaddingFactor ( std::size_t  factor)
inlinevirtual

Setter for padding factor, the factor M by which the new array will be extended (original array, length N, new array length NM)

Parameters
factorNew length factor for extended array
Note
This is a virtual function.

◆ SetReverseEndPadded()

template<typename XArgType >
virtual void hops::MHO_EndZeroPadder< XArgType >::SetReverseEndPadded ( )
inlinevirtual

Setter for reverse end padded, place data at end of array and zero pad out to start.

Note
This is a virtual function.

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