PLaSK library

Loading...
Searching...
No Matches
Public Member Functions | List of all members
plask::edge::UniversalStrategy Struct Referenceabstract

Base class for all universal strategies. More...

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

Inheritance diagram for plask::edge::UniversalStrategy:
[legend]
Collaboration diagram for plask::edge::UniversalStrategy:
[legend]

## Public Member Functions
UniversalStrategy * | clone () const override=0
| Clone this strategy.
Public Member Functions inherited from plask::edge::Strategy
virtual | ~Strategy ()
virtual Type | type () const =0
virtual void | applyLo (double bbox_lo, double bbox_hi, double &p, shared_ptr< Material > &result_material, const Strategy *opposite) const =0
| Apply strategy to given point `p`.
virtual void | applyHi (double bbox_lo, double bbox_hi, double &p, shared_ptr< Material > &result_material, const Strategy *opposite) const =0
| Apply strategy to given point `p`.
virtual bool | canMoveOutsideBoundingBox () const
| Check if this strategy can move point p to place outside bounding box.
virtual std::string | str () const =0
| Get string representation of this strategy.

## Additional Inherited Members
Public Types inherited from plask::edge::Strategy
enum | Type { DEFAULT , SIMPLE , EXTEND , PERIODIC , MIRROR }
| Enum holding strategy types. More...
Static Public Member Functions inherited from plask::edge::Strategy
static Strategy * | fromStr (const std::string &str, const MaterialsDB &materialsDB=MaterialsDB::getDefault())
| Create new strategy (using operator new) described by string `str`.
static std::unique_ptr< Strategy > | fromStrUnique (const std::string &str, const MaterialsDB &materialsDB=MaterialsDB::getDefault())
| Create new strategy described by string `str`.

## Detailed Description

Base class for all universal strategies.

Universal strategies form subset of strategies, and could be required in some context.

Definition at line 124 of file edge.hpp.

## Member Function Documentation

## ◆ clone()

UniversalStrategy * plask::edge::UniversalStrategy::clone | ( |  | ) | const
| override pure virtual

Clone this strategy.

Returns
  strategy identical to this one, constructed using operator new

Implements plask::edge::Strategy.

Implemented in plask::edge::Null, plask::edge::SimpleMaterial, and plask::edge::Extend.

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

- plask/geometry/edge.hpp