PLaSK library
Loading...
Searching...
No Matches
plask::edge::StrategyPairHolder< direction, StrategyType > Class Template Reference

Held pairs of strategies (for lo and hi band) with given type. More...

#include <plask/geometry/edge.hpp>

Public Member Functions

 StrategyPairHolder ()
 
void setStrategies (const StrategyType &strategy_lo, const StrategyType &strategy_hi)
 
void setBoth (const StrategyType &s)
 
void setLo (const StrategyType &strategy_lo)
 
const StrategyTypegetLo () const
 
void setHi (const StrategyType &strategy_hi)
 
const StrategyTypegetHi () const
 
void set (bool setNewHi, const StrategyType &strategy)
 Set lo or hi strategy.
 
const StrategyTypeget (bool _getHi) const
 Get lo or hi strategy.
 
template<int dims>
void apply (const typename Primitive< dims >::Box &bbox, Vec< dims, double > &p, shared_ptr< Material > &result_material) const
 
bool isSymmetric () const
 
bool isPeriodic () const
 

Detailed Description

template<int direction, typename StrategyType = Strategy>
class plask::edge::StrategyPairHolder< direction, StrategyType >

Held pairs of strategies (for lo and hi band) with given type.

Template Parameters
directionhold strategy working direction (coordinate of vector component)
StrategyType(base) type of held strategies, typically Strategy or UniversalStrategy

Definition at line 288 of file edge.hpp.

Constructor & Destructor Documentation

◆ StrategyPairHolder()

template<int direction, typename StrategyType = Strategy>
plask::edge::StrategyPairHolder< direction, StrategyType >::StrategyPairHolder ( )
inline

Definition at line 311 of file edge.hpp.

Member Function Documentation

◆ apply()

template<int direction, typename StrategyType = Strategy>
template<int dims>
void plask::edge::StrategyPairHolder< direction, StrategyType >::apply ( const typename Primitive< dims >::Box &  bbox,
Vec< dims, double > &  p,
shared_ptr< Material > &  result_material 
) const
inline

Definition at line 358 of file edge.hpp.

◆ get()

template<int direction, typename StrategyType = Strategy>
const StrategyType & plask::edge::StrategyPairHolder< direction, StrategyType >::get ( bool  _getHi) const
inline

Get lo or hi strategy.

Parameters
_getHiif true hi strategy will be returned, in other case lo strategy will be returned
Returns
lo or hi strategy, depends from _getHi value

Definition at line 353 of file edge.hpp.

◆ getHi()

template<int direction, typename StrategyType = Strategy>
const StrategyType & plask::edge::StrategyPairHolder< direction, StrategyType >::getHi ( ) const
inline

Definition at line 335 of file edge.hpp.

◆ getLo()

template<int direction, typename StrategyType = Strategy>
const StrategyType & plask::edge::StrategyPairHolder< direction, StrategyType >::getLo ( ) const
inline

Definition at line 326 of file edge.hpp.

◆ isPeriodic()

template<int direction, typename StrategyType = Strategy>
bool plask::edge::StrategyPairHolder< direction, StrategyType >::isPeriodic ( ) const
inline

Definition at line 372 of file edge.hpp.

◆ isSymmetric()

template<int direction, typename StrategyType = Strategy>
bool plask::edge::StrategyPairHolder< direction, StrategyType >::isSymmetric ( ) const
inline

Definition at line 370 of file edge.hpp.

◆ set()

template<int direction, typename StrategyType = Strategy>
void plask::edge::StrategyPairHolder< direction, StrategyType >::set ( bool  setNewHi,
const StrategyType strategy 
)
inline

Set lo or hi strategy.

Parameters
setNewHiif true new hi strategy will be set, in other case new lo strategy will be set
strategynew strategy value

Definition at line 344 of file edge.hpp.

◆ setBoth()

template<int direction, typename StrategyType = Strategy>
void plask::edge::StrategyPairHolder< direction, StrategyType >::setBoth ( const StrategyType s)
inline

Definition at line 319 of file edge.hpp.

◆ setHi()

template<int direction, typename StrategyType = Strategy>
void plask::edge::StrategyPairHolder< direction, StrategyType >::setHi ( const StrategyType strategy_hi)
inline

Definition at line 330 of file edge.hpp.

◆ setLo()

template<int direction, typename StrategyType = Strategy>
void plask::edge::StrategyPairHolder< direction, StrategyType >::setLo ( const StrategyType strategy_lo)
inline

Definition at line 321 of file edge.hpp.

◆ setStrategies()

template<int direction, typename StrategyType = Strategy>
void plask::edge::StrategyPairHolder< direction, StrategyType >::setStrategies ( const StrategyType strategy_lo,
const StrategyType strategy_hi 
)
inline

Definition at line 313 of file edge.hpp.


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