GEOSX
|
Class to hold allocation capability for specific target derived types. More...
#include <ObjectCatalog.hpp>
Public Member Functions | |
CatalogEntry () | |
Default constructor. | |
~CatalogEntry () override | |
Default destructor. | |
CatalogEntry (CatalogEntry const &source) | |
Copy constructor. More... | |
CatalogEntry (CatalogEntry &&source) | |
Move constructor. More... | |
CatalogEntry & | operator= (CatalogEntry const &source) |
Copy assignment operator. More... | |
CatalogEntry & | operator= (CatalogEntry &&source) |
Move assignment operator. More... | |
virtual std::unique_ptr< BASETYPE > | allocate (ARGS... args) const override |
Create a new object that derives from BASETYPE. More... | |
Public Member Functions inherited from geos::dataRepository::CatalogInterface< BASETYPE, ARGS... > | |
CatalogInterface () | |
Default constructor. | |
CatalogInterface (CatalogInterface const &)=default | |
Copy constructor. | |
CatalogInterface (CatalogInterface &&)=default | |
Move constructor. | |
virtual | ~CatalogInterface () |
Default destructor. | |
CatalogInterface & | operator= (CatalogInterface const &)=default |
Copy assignment operator. More... | |
CatalogInterface & | operator= (CatalogInterface &&)=default |
Move assignment operator. More... | |
Additional Inherited Members | |
Public Types inherited from geos::dataRepository::CatalogInterface< BASETYPE, ARGS... > | |
typedef std::unordered_map< std::string, std::unique_ptr< CatalogInterface< BASETYPE, ARGS... > > > | CatalogType |
This is the type that will be used for the catalog. The catalog is actually instantiated in the BASETYPE . | |
Static Public Member Functions inherited from geos::dataRepository::CatalogInterface< BASETYPE, ARGS... > | |
static CatalogType & | getCatalog () |
Get the catalog from that is stored in the target base class. More... | |
static bool | hasKeyName (std::string const &objectTypeName) |
Check if catalog contains a given key. More... | |
static std::list< typename CatalogType::key_type > | getKeys () |
Returns the product keys of the catalog. Keys are sorted in alphabetical order, case insensitive. More... | |
static std::unique_ptr< BASETYPE > | factory (std::string const &objectTypeName, ARGS... args) |
Static method to create a new object that derives from BASETYPE. More... | |
static TYPE & | catalogCast (BASETYPE &object) |
Downcast base type reference to derived type. More... | |
Class to hold allocation capability for specific target derived types.
TYPE | this is the derived type |
BASETYPE | this is the base class that TYPE derives from |
ARGS | constructor arguments |
Definition at line 241 of file ObjectCatalog.hpp.
|
inline |
|
inline |
Move constructor.
source | object to move from |
Definition at line 283 of file ObjectCatalog.hpp.
|
inlineoverridevirtual |
Create a new object that derives from BASETYPE.
args | these are the arguments to the constructor of the target type |
Implements geos::dataRepository::CatalogInterface< BASETYPE, ARGS... >.
Definition at line 313 of file ObjectCatalog.hpp.
|
inline |
Move assignment operator.
source | object to move from |
Definition at line 302 of file ObjectCatalog.hpp.
|
inline |
Copy assignment operator.
source | object to copy |
Definition at line 292 of file ObjectCatalog.hpp.