Rosetta Core  2014.16.56682
Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
core::sequence::SequenceFactory Class Reference

#include <SequenceFactory.hh>

Public Member Functions

void factory_register (SequenceCreatorCOP creator)
 
SequenceOP get_sequence (std::string const &type_name)
 
SequenceOP seq_from_file (std::string const &fn, std::string const &type_name)
 
utility::vector1< std::string > get_seq_names () const
 
void replace_creator (SequenceCreatorCOP creator)
 Replace the load-time SequenceCreator with another creator. More...
 
SequenceCreatorCOP get_creator (std::string const &type_name)
 

Static Public Member Functions

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

Private Types

typedef std::map< std::string,
SequenceCreatorCOP
SequenceCreatorMap
 

Private Member Functions

 SequenceFactory ()
 
 SequenceFactory (SequenceFactory const &)
 
SequenceFactory const & operator= (SequenceFactory const &)
 

Static Private Member Functions

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

Private Attributes

SequenceCreatorMap seq_types_
 

Static Private Attributes

static SequenceFactoryinstance_
 

Member Typedef Documentation

Constructor & Destructor Documentation

core::sequence::SequenceFactory::SequenceFactory ( )
private

Private constructor insures correctness of singleton.

Referenced by create_singleton_instance().

core::sequence::SequenceFactory::SequenceFactory ( SequenceFactory const &  )
private

Member Function Documentation

SequenceFactory * core::sequence::SequenceFactory::create_singleton_instance ( )
staticprivate

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

References SequenceFactory().

Referenced by get_instance().

void core::sequence::SequenceFactory::factory_register ( SequenceCreatorCOP  creator)

References seq_types_.

SequenceCreatorCOP core::sequence::SequenceFactory::get_creator ( std::string const &  type_name)
SequenceFactory * core::sequence::SequenceFactory::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().

utility::vector1< std::string > core::sequence::SequenceFactory::get_seq_names ( ) const

DANGER DANGER DANGER: NOT THREADSAFE!

References core::sequence::end, and seq_types_.

Referenced by get_creator(), and get_sequence().

SequenceOP core::sequence::SequenceFactory::get_sequence ( std::string const &  type_name)
SequenceFactory const& core::sequence::SequenceFactory::operator= ( SequenceFactory const &  )
private
void core::sequence::SequenceFactory::replace_creator ( SequenceCreatorCOP  creator)

Replace the load-time SequenceCreator with another creator.

DANGER DANGER DANGER: NOT THREADSAFE!

References seq_types_.

SequenceOP core::sequence::SequenceFactory::seq_from_file ( std::string const &  fn,
std::string const &  type_name 
)

Member Data Documentation

SequenceFactory * core::sequence::SequenceFactory::instance_
staticprivate

Referenced by get_instance().

SequenceCreatorMap core::sequence::SequenceFactory::seq_types_
private

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