Rosetta Core  2014.16.56682
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
core::pack::task::operation::ResFilterFactory Class Reference

#include <ResFilterFactory.hh>

Public Types

typedef std::map< std::string,
ResFilterCreatorOP
ResFilterCreatorMap
 
typedef utility::tag::Tag Tag
 
typedef utility::tag::TagCOP TagCOP
 

Public Member Functions

void factory_register (ResFilterCreatorOP)
 
void add_creator (ResFilterCreatorOP)
 add a prototype, using its default type name as the map key More...
 
bool has_type (std::string const &) const
 
ResFilterOP newResFilter (std::string const &, TagCOP=new Tag) const
 return new ResFilter by key lookup in filter_map_ (new ResFilter parses Tag if provided) More...
 

Static Public Member Functions

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

Private Member Functions

 ResFilterFactory ()
 
virtual ~ResFilterFactory ()
 

Static Private Member Functions

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

Private Attributes

ResFilterCreatorMap filter_creator_map_
 

Static Private Attributes

static ResFilterFactoryinstance_
 

Member Typedef Documentation

Constructor & Destructor Documentation

core::pack::task::operation::ResFilterFactory::ResFilterFactory ( )
private
core::pack::task::operation::ResFilterFactory::~ResFilterFactory ( )
privatevirtual

Member Function Documentation

void core::pack::task::operation::ResFilterFactory::add_creator ( ResFilterCreatorOP  creator)

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

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

References filter_creator_map_, and runtime_assert.

Referenced by core::pack::task::operation::TaskOperationFactory::add_creator(), and factory_register().

ResFilterFactory * core::pack::task::operation::ResFilterFactory::create_singleton_instance ( )
staticprivate

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

References ResFilterFactory().

Referenced by get_instance().

void core::pack::task::operation::ResFilterFactory::factory_register ( ResFilterCreatorOP  creator)

References add_creator().

ResFilterFactory * core::pack::task::operation::ResFilterFactory::get_instance ( )
static
bool core::pack::task::operation::ResFilterFactory::has_type ( std::string const &  type) const
ResFilterOP core::pack::task::operation::ResFilterFactory::newResFilter ( std::string const &  type,
TagCOP  tag = new Tag 
) const

return new ResFilter by key lookup in filter_map_ (new ResFilter parses Tag if provided)

return new ResFilter by key lookup in filter_creator_map_ (new ResFilter parses Tag if provided)

References filter, filter_creator_map_, utility::pointer::owning_ptr< T >::get(), and utility_exit_with_message.

Referenced by core::pack::task::operation::OperateOnCertainResidues::parse_tag().

Member Data Documentation

ResFilterCreatorMap core::pack::task::operation::ResFilterFactory::filter_creator_map_
private

Referenced by add_creator(), has_type(), and newResFilter().

ResFilterFactory * core::pack::task::operation::ResFilterFactory::instance_
staticprivate

Referenced by get_instance().


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