OpenWalnut  1.5.0dev
Public Member Functions | Public Attributes | List of all members
VisitorVSetA Class Reference

Visitor for discriminating the type of the first valueset. More...

+ Inheritance diagram for VisitorVSetA:
+ Collaboration diagram for VisitorVSetA:

Public Member Functions

 VisitorVSetA (WValueSetBase *vsetB, size_t opIdx=0)
 Create visitor instance. More...
 
template<typename T >
result_type operator() (const WValueSet< T > *const &vsetA) const
 Called by boost::varying during static visiting. More...
 
 VisitorVSetA (double zeroTol)
 Create visitor instance. More...
 
template<typename T >
result_type operator() (const WValueSet< T > *const &vsetA) const
 Called by boost::varying during static visiting. More...
 
 VisitorVSetA (std::shared_ptr< WGridRegular3D > grid, size_t opIdx=0)
 Create visitor instance. More...
 
template<typename T >
result_type operator() (const WValueSet< T > *const &vsetA) const
 Called by boost::varying during static visiting. More...
 
 VisitorVSetA (WValueSetBase *vsetB)
 Create visitor instance. More...
 
template<typename T >
result_type operator() (const WValueSet< T > *const &vsetA) const
 Called by boost::varying during static visiting. More...
 

Public Attributes

WValueSetBasem_vsetB
 The valueset where to cascade. More...
 
size_t m_opIdx
 The operator index. More...
 
double m_zeroTol
 Zero tollerance. More...
 
std::shared_ptr< WGridRegular3Dm_grid
 The underlying grid. More...
 

Detailed Description

Visitor for discriminating the type of the first valueset.

It simply creates a new instance of VisitorVSetB with the proper integral type of the first value set.

Definition at line 444 of file WMScalarOperator.cpp.

Constructor & Destructor Documentation

◆ VisitorVSetA() [1/4]

VisitorVSetA::VisitorVSetA ( WValueSetBase vsetB,
size_t  opIdx = 0 
)
inline

Create visitor instance.

The specified valueset gets visited if the first one is visited using this visitor.

Parameters
vsetBThe valueset to visit during this visit.
opIdxThe operator index. Forwarded to VisitorVSetB

Definition at line 453 of file WMScalarOperator.cpp.

◆ VisitorVSetA() [2/4]

VisitorVSetA::VisitorVSetA ( double  zeroTol)
inlineexplicit

Create visitor instance.

Parameters
zeroTolzero tollerance

Definition at line 109 of file WMVectorNormalize.cpp.

◆ VisitorVSetA() [3/4]

VisitorVSetA::VisitorVSetA ( std::shared_ptr< WGridRegular3D grid,
size_t  opIdx = 0 
)
inline

Create visitor instance.

Parameters
opIdxThe operator index.
gridthe underlying grid

Definition at line 169 of file WMVectorOperator.cpp.

◆ VisitorVSetA() [4/4]

VisitorVSetA::VisitorVSetA ( WValueSetBase vsetB)
inlineexplicit

Create visitor instance.

The specified valueset gets visited if the first one is visited using this visitor.

Parameters
vsetBThe valueset to visit during this visit.

Definition at line 177 of file WMVectorScale.cpp.

Member Function Documentation

◆ operator()() [1/4]

template<typename T >
result_type VisitorVSetA::operator() ( const WValueSet< T > *const &  vsetA) const
inline

Called by boost::varying during static visiting.

Creates a new VisitorVSetB which finally applies the operation.

Template Parameters
Tthe real integral type of the first value set.
Parameters
vsetAthe first valueset currently visited.
Returns
the result from the operation with this and the second value set

Definition at line 469 of file WMScalarOperator.cpp.

References WValueSetBase::applyFunction(), m_opIdx, and m_vsetB.

+ Here is the call graph for this function:

◆ operator()() [2/4]

template<typename T >
result_type VisitorVSetA::operator() ( const WValueSet< T > *const &  vsetA) const
inline

Called by boost::varying during static visiting.

Template Parameters
Tthe real integral type of the first value set.
Parameters
vsetAthe first valueset currently visited.
Returns
the result from the operation

Definition at line 124 of file WMVectorNormalize.cpp.

References m_zeroTol.

◆ operator()() [3/4]

template<typename T >
result_type VisitorVSetA::operator() ( const WValueSet< T > *const &  vsetA) const
inline

Called by boost::varying during static visiting.

Template Parameters
Tthe real integral type of the first value set.
Parameters
vsetAthe first valueset currently visited.
Returns
the result from the operation

Definition at line 185 of file WMVectorOperator.cpp.

References m_grid, and m_opIdx.

◆ operator()() [4/4]

template<typename T >
result_type VisitorVSetA::operator() ( const WValueSet< T > *const &  vsetA) const
inline

Called by boost::varying during static visiting.

Creates a new VisitorVSetB which finally applies the operation.

Template Parameters
Tthe real integral type of the first value set.
Parameters
vsetAthe first valueset currently visited.
Returns
the result from the operation with this and the second value set

Definition at line 192 of file WMVectorScale.cpp.

References WValueSetBase::applyFunction(), and m_vsetB.

+ Here is the call graph for this function:

Member Data Documentation

◆ m_grid

std::shared_ptr< WGridRegular3D > VisitorVSetA::m_grid

The underlying grid.

Definition at line 263 of file WMVectorOperator.cpp.

Referenced by operator()().

◆ m_opIdx

size_t VisitorVSetA::m_opIdx

The operator index.

Definition at line 484 of file WMScalarOperator.cpp.

Referenced by operator()().

◆ m_vsetB

WValueSetBase * VisitorVSetA::m_vsetB

The valueset where to cascade.

Definition at line 479 of file WMScalarOperator.cpp.

Referenced by operator()().

◆ m_zeroTol

double VisitorVSetA::m_zeroTol

Zero tollerance.

Values smaller than this are interpreted as zero

Definition at line 165 of file WMVectorNormalize.cpp.

Referenced by operator()().


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