Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
basic::datacache::WriteableCacheableDataFactory Class Reference

#include <WriteableCacheableDataFactory.hh>

Inheritance diagram for basic::datacache::WriteableCacheableDataFactory:
Inheritance graph
[legend]

Public Types

typedef std::map< std::string,
WriteableCacheableDataCreatorOP
WriteableCacheableDataMap
 

Public Member Functions

virtual ~WriteableCacheableDataFactory ()=default
 
void factory_register (WriteableCacheableDataCreatorOP creator)
 add a WriteableCacheableData prototype, using its default type name as the map key More...
 
WriteableCacheableDataOP new_data_instance (std::string const &data_type_name, std::istream &in)
 Create a data instance given its identifying string. More...
 
- Public Member Functions inherited from utility::SingletonBase< WriteableCacheableDataFactory >
 SingletonBase ()
 public constructor (the derived class must have a private constructor, of course). More...
 

Private Member Functions

 WriteableCacheableDataFactory ()
 

Private Attributes

WriteableCacheableDataMap data_creator_map_
 

Friends

class utility::SingletonBase< WriteableCacheableDataFactory >
 

Additional Inherited Members

- Static Public Member Functions inherited from utility::SingletonBase< WriteableCacheableDataFactory >
static
WriteableCacheableDataFactory * 
get_instance ()
 Safely instantiate a singleton class in a (possibly) multithreaded context. More...
 

Member Typedef Documentation

Constructor & Destructor Documentation

virtual basic::datacache::WriteableCacheableDataFactory::~WriteableCacheableDataFactory ( )
virtualdefault
basic::datacache::WriteableCacheableDataFactory::WriteableCacheableDataFactory ( )
inlineprivate

Member Function Documentation

void basic::datacache::WriteableCacheableDataFactory::factory_register ( WriteableCacheableDataCreatorOP  creator)

add a WriteableCacheableData prototype, using its default type name as the map key

References CREATE_EXCEPTION, and data_creator_map_.

WriteableCacheableDataOP basic::datacache::WriteableCacheableDataFactory::new_data_instance ( std::string const &  data_type_name,
std::istream &  in 
)

Create a data instance given its identifying string.

return new Data instance by key lookup in data_creator_map_

References CREATE_EXCEPTION, data_creator_map_, basic::Tracer::Error, and basic::datacache::tr.

Friends And Related Function Documentation

Member Data Documentation

WriteableCacheableDataMap basic::datacache::WriteableCacheableDataFactory::data_creator_map_
private

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