|
PLaSK library
|
Base class for specific mesh generator. More...
#include <plask/mesh/mesh.hpp>
Public Types | |
| enum | { DIM = (MESH_DIM < 2) ? 2 : MESH_DIM } |
| Number of geometry dimensions. More... | |
| typedef MeshD< MESH_DIM > | MeshType |
| Type of the generated mesh. | |
| typedef shared_ptr< GeometryObjectD< DIM > > | GeometryPtr |
Public Types inherited from plask::MeshGenerator | |
| typedef EventWithSourceAndFlags< MeshGenerator > | Event |
| Mesh generator event. | |
Public Member Functions | |
| virtual shared_ptr< MeshType > | generate (const GeometryPtr &geometry)=0 |
| Generate new mesh. | |
| void | clearCache () |
| Clear the cache of generated meshes. | |
| shared_ptr< MeshType > | operator() (const GeometryPtr &geometry) |
| Get generated mesh if it is cached or create a new one. | |
| template<typename RequiredType > | |
| shared_ptr< RequiredType > | get (const shared_ptr< GeometryObjectD< DIM > > &geometry) |
| template<typename RequiredType > | |
| shared_ptr< RequiredType > | generate_t (const shared_ptr< GeometryObjectD< DIM > > &geometry) |
Public Member Functions inherited from plask::MeshGenerator | |
| template<typename ClassT , typename methodT > | |
| void | changedConnectMethod (ClassT *obj, methodT method, boost::signals2::connect_position at=boost::signals2::at_back) |
| Connect a method to changed signal. | |
| template<typename ClassT , typename methodT > | |
| void | changedDisconnectMethod (ClassT *obj, methodT method) |
| template<typename EventT = Event, typename ... Args> | |
| void | fireChanged (Args &&... event_constructor_params_without_source) |
| Call changed with this as event source. | |
| virtual | ~MeshGenerator () |
Public Member Functions inherited from plask::MeshBase | |
| virtual | ~MeshBase () |
Protected Member Functions | |
| void | onChange (const Event &) override |
| This method is called when the generator is changed, just before changed signal. | |
Static Protected Member Functions | |
| template<typename RequiredType > | |
| static shared_ptr< RequiredType > | cast (const shared_ptr< MeshType > &res) |
Protected Attributes | |
| WeakCache< GeometryObject, MeshType, CacheRemoveOnEachChange > | cache |
Additional Inherited Members | |
Public Attributes inherited from plask::MeshGenerator | |
| boost::signals2::signal< void(Event &)> | changed |
| Changed signal, fired when space was changed. | |
Base class for specific mesh generator.
| typedef shared_ptr<GeometryObjectD<DIM> > plask::MeshGeneratorD< MESH_DIM >::GeometryPtr |
|
inlinestaticprotected |
|
inline |
|
pure virtual |
Generate new mesh.
| geometry | on which the mesh should be generated |
|
inline |
|
inline |
|
inlineoverrideprotectedvirtual |
This method is called when the generator is changed, just before changed signal.
| evt | triggering event |
Reimplemented from plask::MeshGenerator.
| shared_ptr< typename MeshGeneratorD< MESH_DIM >::MeshType > plask::MeshGeneratorD< MESH_DIM >::operator() | ( | const GeometryPtr & | geometry | ) |
|
protected |