Rosetta Protocols  2014.35
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
protocols::jd2::parser::DataLoaderFactory Class Reference

A factory for creating DataLoaders, which are able to load arbitrary data into the basic::datacache::DataMap used in the XML-based parser. This factory supports the load-time registration scheme allowing DataLoaders to be defined in libraries outside of protocols.lib. More...

#include <DataLoaderFactory.hh>

Public Types

typedef std::map< std::string,
DataLoaderCreatorOP
LoaderMap
 

Public Member Functions

virtual ~DataLoaderFactory ()
 
void factory_register (DataLoaderCreatorOP creator)
 
DataLoaderOP newDataLoader (std::string const &) const
 Create a DataLoader given its identifying string. More...
 

Static Public Member Functions

static DataLoaderFactoryget_instance ()
 static function to get the instance of ( pointer to) this singleton class More...
 

Private Member Functions

 DataLoaderFactory ()
 
 DataLoaderFactory (DataLoaderFactory const &)
 
DataLoaderFactory const & operator= (DataLoaderFactory const &)
 

Static Private Member Functions

static DataLoaderFactorycreate_singleton_instance ()
 private singleton creation function to be used with utility::thread::threadsafe_singleton More...
 

Private Attributes

LoaderMap dataloader_creator_map_
 

Static Private Attributes

static DataLoaderFactoryinstance_
 Singleton instance pointer. More...
 

Detailed Description

A factory for creating DataLoaders, which are able to load arbitrary data into the basic::datacache::DataMap used in the XML-based parser. This factory supports the load-time registration scheme allowing DataLoaders to be defined in libraries outside of protocols.lib.

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::jd2::parser::DataLoaderFactory::~DataLoaderFactory ( )
virtual
protocols::jd2::parser::DataLoaderFactory::DataLoaderFactory ( )
private
protocols::jd2::parser::DataLoaderFactory::DataLoaderFactory ( DataLoaderFactory const &  )
private

Member Function Documentation

DataLoaderFactory * protocols::jd2::parser::DataLoaderFactory::create_singleton_instance ( )
staticprivate

private singleton creation function to be used with utility::thread::threadsafe_singleton

References DataLoaderFactory().

Referenced by get_instance().

void protocols::jd2::parser::DataLoaderFactory::factory_register ( DataLoaderCreatorOP  creator)
DataLoaderFactory * protocols::jd2::parser::DataLoaderFactory::get_instance ( )
static

static function to get the instance of ( pointer to) this singleton class

References create_singleton_instance(), instance_, and utility::thread::safely_create_singleton().

DataLoaderOP protocols::jd2::parser::DataLoaderFactory::newDataLoader ( std::string const &  loader_type) const

Create a DataLoader given its identifying string.

References dataloader_creator_map_, and utility_exit_with_message.

DataLoaderFactory const& protocols::jd2::parser::DataLoaderFactory::operator= ( DataLoaderFactory const &  )
private

Member Data Documentation

LoaderMap protocols::jd2::parser::DataLoaderFactory::dataloader_creator_map_
private

Referenced by factory_register(), and newDataLoader().

DataLoaderFactory * protocols::jd2::parser::DataLoaderFactory::instance_
staticprivate

Singleton instance pointer.

Referenced by get_instance().


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