![]() |
v0.16.3 |
base class for all interface classes More...
#include "src/interfaces/UnknownInterface.hpp"
Classes | |
| struct | NotKnownClass |
| struct | UIdTypeMap |
Public Member Functions | |
| virtual MoFEMErrorCode | query_interface (boost::typeindex::type_index type_index, UnknownInterface **iface) const =0 |
| template<class IFACE > | |
| MoFEMErrorCode | registerInterface (bool error_if_registration_failed=true) |
| Register interface. | |
| template<class IFACE > | |
| MoFEMErrorCode | getInterface (IFACE *&iface) const |
| Get interface reference to pointer of interface. | |
| template<class IFACE > | |
| MoFEMErrorCode | getInterface (IFACE **const iface) const |
| Get interface pointer to pointer of interface. | |
| template<class IFACE , typename boost::enable_if< boost::is_pointer< IFACE >, int >::type = 0> | |
| IFACE | getInterface () const |
| Get interface pointer to pointer of interface. | |
| template<class IFACE , typename boost::enable_if< boost::is_reference< IFACE >, int >::type = 0> | |
| IFACE | getInterface () const |
| Get reference to interface. | |
| template<class IFACE > | |
| IFACE * | getInterface () const |
| Function returning pointer to interface. | |
| virtual | ~UnknownInterface ()=default |
Static Public Member Functions | |
| static MoFEMErrorCode | getLibVersion (Version &version) |
| Get library version. | |
| static MoFEMErrorCode | getFileVersion (moab::Interface &moab, Version &version) |
| Get database major version. | |
| static MoFEMErrorCode | setFileVersion (moab::Interface &moab, Version version=Version(MoFEM_VERSION_MAJOR, MoFEM_VERSION_MINOR, MoFEM_VERSION_BUILD)) |
| Get database major version. | |
| static MoFEMErrorCode | getInterfaceVersion (Version &version) |
| Get database major version. | |
Private Types | |
| typedef multi_index_container< UIdTypeMap, indexed_by< hashed_unique< member< UIdTypeMap, boost::typeindex::type_index, &UIdTypeMap::classIdx > > > > | iFaceTypeMap_multiIndex |
| Data structure for interfaces Id and class names. | |
Private Attributes | |
| iFaceTypeMap_multiIndex | iFaceTypeMap |
| Maps implementation to interface type name. | |
base class for all interface classes
Definition at line 44 of file UnknownInterface.hpp.
|
private |
Data structure for interfaces Id and class names.
Definition at line 307 of file UnknownInterface.hpp.
|
virtualdefault |
|
static |
Get database major version.
This is database version. MoFEM can read DataBase from file created by older version. Then library version and database version could be different.
Definition at line 16 of file UnknownInterface.cpp.
|
inline |
Get interface pointer to pointer of interface.
Definition at line 172 of file UnknownInterface.hpp.
|
inline |
Get reference to interface.
Definition at line 205 of file UnknownInterface.hpp.
|
inline |
Function returning pointer to interface.
Definition at line 236 of file UnknownInterface.hpp.
|
inline |
Get interface reference to pointer of interface.
| iface | reference to a interface pointer |
Definition at line 103 of file UnknownInterface.hpp.
|
inline |
Get interface pointer to pointer of interface.
| iface | const pointer to a interface pointer |
Definition at line 143 of file UnknownInterface.hpp.
|
static |
Get database major version.
Implementation of particular interface could be different than main lib. For example user could use older interface, to keep back compatibility.
Definition at line 59 of file UnknownInterface.cpp.
|
static |
Get library version.
This is library version.
Definition at line 9 of file UnknownInterface.cpp.
|
pure virtual |
Implemented in MoFEM::BaseFunction, MoFEM::DMMGViaApproxOrdersCtx, SomeUserPolynomialBase, MoFEM::BaseFunctionCtx, MoFEM::EdgePolynomialBase, MoFEM::EntPolynomialBaseCtx, MoFEM::FatPrismPolynomialBaseCtx, MoFEM::FatPrismPolynomialBase, MoFEM::FlatPrismPolynomialBaseCtx, MoFEM::FlatPrismPolynomialBase, MoFEM::HexPolynomialBase, MoFEM::JacobiPolynomialCtx, MoFEM::JacobiPolynomial, MoFEM::IntegratedJacobiPolynomialCtx, MoFEM::IntegratedJacobiPolynomial, MoFEM::LegendrePolynomialCtx, MoFEM::LegendrePolynomial, MoFEM::LobattoPolynomialCtx, MoFEM::LobattoPolynomial, MoFEM::KernelLobattoPolynomialCtx, MoFEM::KernelLobattoPolynomial, MoFEM::QuadPolynomialBase, MoFEM::TetPolynomialBase, MoFEM::TriPolynomialBase, MoFEM::BcManager, MoFEM::BitRefManager, MoFEM::CommInterface, MoFEM::CoreTmp< 0 >, MoFEM::CutMeshInterface, MoFEM::FieldBlas, MoFEM::FieldEvaluatorInterface, MoFEM::ISManager, MoFEM::JsonConfigManager, MoFEM::LogManager, MoFEM::PetscData, MoFEM::KspMethod, MoFEM::SnesMethod, MoFEM::TSMethod, MoFEM::TaoMethod, MoFEM::MatrixManager, MoFEM::MedInterface, MoFEM::MeshRefinement, MoFEM::MeshsetsManager, MoFEM::NodeMergerInterface, MoFEM::OperatorsTester, MoFEM::PipelineGraph, MoFEM::PipelineManager, MoFEM::PrismInterface, MoFEM::PrismsFromSurfaceInterface, MoFEM::ProblemsManager, MoFEM::SeriesRecorder, MoFEM::Simple, MoFEM::TetGenInterface, MoFEM::Tools, MoFEM::VecManager, MoFEM::DMCtx, MoFEM::BaseFunctionUnknownInterface, MoFEM::BasicMethod, MoFEM::FEMethod, MoFEM::EntityMethod, and MoFEM::DofMethod.
|
inline |
Register interface.
| uuid | |
| true |
Definition at line 64 of file UnknownInterface.hpp.
|
static |
Get database major version.
This is database version. MoFEM can read DataBase from file created by older version. Then library version and database version could be different.
Definition at line 41 of file UnknownInterface.cpp.
|
mutableprivate |
Maps implementation to interface type name.
Definition at line 310 of file UnknownInterface.hpp.