PLaSK library

Loading...
Searching...
No Matches
Public Member Functions | List of all members
plask::edge::StrategyHolder< direction, StrategyType > Class Template Reference

Held edge strategy with given type and: More...

`#include <plask/geometry/edge.hpp>`

## Public Member Functions
| StrategyHolder (const StrategyType &strategy=Null())
template<int adirection>
| StrategyHolder (const StrategyHolder< adirection, StrategyType > &strategyHolder)
| ~StrategyHolder ()
const StrategyType & | getStrategy () const
void | setStrategy (const StrategyType &strategy)
std::string | str () const
StrategyHolder< direction, StrategyType > & | operator= (const StrategyType &strategy)
template<int adirection>
StrategyHolder< direction, StrategyType > & | operator= (const StrategyHolder< adirection, StrategyType > &strategyHolder)
template<int dims>
void | applyLo (const typename Primitive< dims >::Box &bbox, Vec< dims, double > &p, shared_ptr< Material > &result_material, const Strategy *opposite) const
template<int dims>
void | applyHi (const typename Primitive< dims >::Box &bbox, Vec< dims, double > &p, shared_ptr< Material > &result_material, const Strategy *opposite) const
template<int dims>
void | applyIfLo (const typename Primitive< dims >::Box &bbox, Vec< dims, double > &p, shared_ptr< Material > &result_material, const Strategy *opposite) const
template<int dims>
void | applyIfHi (const typename Primitive< dims >::Box &bbox, Vec< dims, double > &p, shared_ptr< Material > &result_material, const Strategy *opposite) const

## Detailed Description

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

Held edge strategy with given type and:

- delegate apply methods to held strategy,
- allow to assign strategy to self (using operator=).
  Template Parameters

    direction | held strategy working direction (coordinate of vector component)
    StrategyType | (base) type of held strategy, typically Strategy or UniversalStrategy

Definition at line 224 of file edge.hpp.

## Constructor & Destructor Documentation

## ◆ StrategyHolder() [1/2]

template<int direction, typename StrategyType = Strategy>

plask::edge::StrategyHolder< direction, StrategyType >::StrategyHolder | ( | const StrategyType & | strategy = `Null()` | ) |
| inline

Definition at line 229 of file edge.hpp.

## ◆ StrategyHolder() [2/2]

template<int direction, typename StrategyType = Strategy>
template<int adirection>

plask::edge::StrategyHolder< direction, StrategyType >::StrategyHolder | ( | const StrategyHolder< adirection, StrategyType > & | strategyHolder | ) |
| inline

Definition at line 232 of file edge.hpp.

## ◆ ~StrategyHolder()

template<int direction, typename StrategyType = Strategy>

plask::edge::StrategyHolder< direction, StrategyType >::~StrategyHolder | ( |  | ) |
| inline

Definition at line 234 of file edge.hpp.

## Member Function Documentation

## ◆ applyHi()

template<int direction, typename StrategyType = Strategy>
template<int dims>

void plask::edge::StrategyHolder< direction, StrategyType >::applyHi | ( | const typename Primitive< dims >::Box & | bbox,
|  | Vec< dims, double > & | p,
|  | shared_ptr< Material > & | result_material,
|  | const Strategy * | opposite
| ) |  | const
| inline

Definition at line 264 of file edge.hpp.

## ◆ applyIfHi()

template<int direction, typename StrategyType = Strategy>
template<int dims>

void plask::edge::StrategyHolder< direction, StrategyType >::applyIfHi | ( | const typename Primitive< dims >::Box & | bbox,
|  | Vec< dims, double > & | p,
|  | shared_ptr< Material > & | result_material,
|  | const Strategy * | opposite
| ) |  | const
| inline

Definition at line 275 of file edge.hpp.

## ◆ applyIfLo()

template<int direction, typename StrategyType = Strategy>
template<int dims>

void plask::edge::StrategyHolder< direction, StrategyType >::applyIfLo | ( | const typename Primitive< dims >::Box & | bbox,
|  | Vec< dims, double > & | p,
|  | shared_ptr< Material > & | result_material,
|  | const Strategy * | opposite
| ) |  | const
| inline

Definition at line 269 of file edge.hpp.

## ◆ applyLo()

template<int direction, typename StrategyType = Strategy>
template<int dims>

void plask::edge::StrategyHolder< direction, StrategyType >::applyLo | ( | const typename Primitive< dims >::Box & | bbox,
|  | Vec< dims, double > & | p,
|  | shared_ptr< Material > & | result_material,
|  | const Strategy * | opposite
| ) |  | const
| inline

Definition at line 259 of file edge.hpp.

## ◆ getStrategy()

template<int direction, typename StrategyType = Strategy>

const StrategyType & plask::edge::StrategyHolder< direction, StrategyType >::getStrategy | ( |  | ) | const
| inline

Definition at line 236 of file edge.hpp.

## ◆ operator=() [1/2]

template<int direction, typename StrategyType = Strategy>
template<int adirection>

StrategyHolder< direction, StrategyType > & plask::edge::StrategyHolder< direction, StrategyType >::operator= | ( | const StrategyHolder< adirection, StrategyType > & | strategyHolder | ) |
| inline

Definition at line 249 of file edge.hpp.

## ◆ operator=() [2/2]

template<int direction, typename StrategyType = Strategy>

StrategyHolder< direction, StrategyType > & plask::edge::StrategyHolder< direction, StrategyType >::operator= | ( | const StrategyType & | strategy | ) |
| inline

Definition at line 246 of file edge.hpp.

## ◆ setStrategy()

template<int direction, typename StrategyType = Strategy>

void plask::edge::StrategyHolder< direction, StrategyType >::setStrategy | ( | const StrategyType & | strategy | ) |
| inline

Definition at line 238 of file edge.hpp.

## ◆ str()

template<int direction, typename StrategyType = Strategy>

std::string plask::edge::StrategyHolder< direction, StrategyType >::str | ( |  | ) | const
| inline

Definition at line 244 of file edge.hpp.

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

- plask/geometry/edge.hpp