Rosetta  2021.16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
core::pack::task::operation::ResFilterFactory Class Reference

#include <ResFilterFactory.hh>

Inheritance diagram for core::pack::task::operation::ResFilterFactory:
Inheritance graph
[legend]

Public Types

typedef std::map< std::string,
ResFilterCreatorOP
ResFilterCreatorMap
 
typedef utility::tag::Tag Tag
 
typedef utility::tag::TagOP TagOP
 
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 &) const
 return new ResFilter by key lookup in filter_map_; new ResFilter does not parse an input Tag More...
 
ResFilterOP newResFilter (std::string const &, TagCOP tag) const
 return new ResFilter by key lookup in filter_map_ new ResFilter parses Tag if provided More...
 
void define_res_filter_xml_schema (utility::tag::XMLSchemaDefinition &xsd) const
 The ResFilterFactory is the point of entry for the definition of the XML Schemas for every ResFilter that may be instantiated from a file. It is responsible for defining an xs:group named "res_filter" listing each of the residue-filter-complex types that may be initialized using the ResFilterFactory and to iterate across each of the ResFilterCreator it contains asking them for the XML schema of the ResFilter they are responsible for creating. More...
 

Static Public Member Functions

static std::string res_filter_xml_schema_group_name ()
 The name given to the XML schema group of all ResFilter s. More...
 

Private Member Functions

 ResFilterFactory ()
 
virtual ~ResFilterFactory ()
 
 ResFilterFactory (ResFilterFactory const &)=delete
 
ResFilterFactoryoperator= (ResFilterFactory const &)=delete
 

Private Attributes

ResFilterCreatorMap filter_creator_map_
 

Friends

class utility::SingletonBase< ResFilterFactory >
 

Member Typedef Documentation

Constructor & Destructor Documentation

core::pack::task::operation::ResFilterFactory::ResFilterFactory ( )
privatedefault
core::pack::task::operation::ResFilterFactory::~ResFilterFactory ( )
privatevirtualdefault
core::pack::task::operation::ResFilterFactory::ResFilterFactory ( ResFilterFactory const &  )
privatedelete

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_.

Referenced by factory_register().

void core::pack::task::operation::ResFilterFactory::define_res_filter_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd) const

The ResFilterFactory is the point of entry for the definition of the XML Schemas for every ResFilter that may be instantiated from a file. It is responsible for defining an xs:group named "res_filter" listing each of the residue-filter-complex types that may be initialized using the ResFilterFactory and to iterate across each of the ResFilterCreator it contains asking them for the XML schema of the ResFilter they are responsible for creating.

By convention, the named assigned to each of the complexTypes for ResFilter s should be what is returned by the function "complex_type_name_for_res_lvl_task_op" (declared in core/pack/task/operation/task_op_schemas.hh) when given the argument returned by that ResFilter's ResFilterCreator's keyname() function. So long as the writing of XML schema for your ResFilter is accomplished by calling the functions in core/select/res_lvl_task_operations/task_op_schemas.hh, then this should happen automatically.

References core::pack::task::operation::complex_type_name_for_res_filter(), filter_creator_map_, and res_filter_xml_schema_group_name().

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

References add_creator().

bool core::pack::task::operation::ResFilterFactory::has_type ( std::string const &  type) const
ResFilterOP core::pack::task::operation::ResFilterFactory::newResFilter ( std::string const &  type) const

return new ResFilter by key lookup in filter_map_; new ResFilter does not parse an input Tag

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

ResFilterOP core::pack::task::operation::ResFilterFactory::newResFilter ( std::string const &  type,
TagCOP  tag 
) const

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

References filter_creator_map_.

ResFilterFactory& core::pack::task::operation::ResFilterFactory::operator= ( ResFilterFactory const &  )
privatedelete
std::string core::pack::task::operation::ResFilterFactory::res_filter_xml_schema_group_name ( )
static

Friends And Related Function Documentation

friend class utility::SingletonBase< ResFilterFactory >
friend

Member Data Documentation

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

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