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::ResLvlTaskOperationFactory Class Reference

#include <ResLvlTaskOperationFactory.hh>

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

Public Types

typedef std::map< std::string,
ResLvlTaskOperationCreatorOP
RLTOC_Map
 
typedef utility::tag::Tag Tag
 
typedef utility::tag::TagCOP TagCOP
 

Public Member Functions

void factory_register (ResLvlTaskOperationCreatorOP)
 
void add_creator (ResLvlTaskOperationCreatorOP)
 add a prototype, using its default type name as the map key More...
 
bool has_type (std::string const &) const
 
void provide_xml_schema (std::string const &task_operation_name, utility::tag::XMLSchemaDefinition &xsd) const
 Get the XML schema for a given ResLvlTaskOperation. More...
 
std::string get_citation_humanreadable (std::string const &taskop_name) const
 Get a human-readable listing of the citations for a given residue level task operation, by taskop name. More...
 
ResLvlTaskOperationOP newRLTO (std::string const &) const
 return new ResLvlTaskOperation by key lookup in rlto_map_ More...
 
ResLvlTaskOperationOP newRLTO (std::string const &class_keyname, TagCOP tag) const
 return new ResLvlTaskOperation by key lookup in rlto_map_ (with the new ResLvlTaskOperation parsing the input Tag) More...
 
void define_res_lvl_task_op_xml_schema (utility::tag::XMLSchemaDefinition &xsd) const
 The ResLvlTaskOperationFactory is the point of entry for the definition of the XML Schemas for every ResLvlTaskOperation that may be instantiated from a file. It is responsible for defining an xs:group named "res_lvl_task_op" listing each of the residue-level-task-operation-complex types that may be initialized using the ResLvlTaskOperationFactory and to iterate across each of the ResLvlTaskOperationCreator it contains asking them for the XML schema of the ResLvlTaskOperation they are responsible for creating. More...
 

Static Public Member Functions

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

Private Member Functions

 ResLvlTaskOperationFactory ()
 
virtual ~ResLvlTaskOperationFactory ()
 

Private Attributes

RLTOC_Map rltoc_map_
 

Friends

class utility::SingletonBase< ResLvlTaskOperationFactory >
 

Member Typedef Documentation

Constructor & Destructor Documentation

core::pack::task::operation::ResLvlTaskOperationFactory::ResLvlTaskOperationFactory ( )
privatedefault
core::pack::task::operation::ResLvlTaskOperationFactory::~ResLvlTaskOperationFactory ( )
privatevirtualdefault

Member Function Documentation

void core::pack::task::operation::ResLvlTaskOperationFactory::add_creator ( ResLvlTaskOperationCreatorOP  rltoc)

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

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

References rltoc_map_.

Referenced by factory_register().

void core::pack::task::operation::ResLvlTaskOperationFactory::define_res_lvl_task_op_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd) const

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

By convention, the named assigned to each of the complexTypes for ResLvlTaskOperations 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 ResLvlTaskOperation's ResLvlTaskOperationCreator's keyname() function. So long as the writing of XML schema for your ResLvlTaskOperation 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_lvl_task_op(), res_lvl_task_op_xml_schema_group_name(), and rltoc_map_.

void core::pack::task::operation::ResLvlTaskOperationFactory::factory_register ( ResLvlTaskOperationCreatorOP  creator)

References add_creator().

std::string core::pack::task::operation::ResLvlTaskOperationFactory::get_citation_humanreadable ( std::string const &  taskop_name) const

Get a human-readable listing of the citations for a given residue level task operation, by taskop name.

Returns an empty string if there are no citations.

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org).

References newRLTO().

Referenced by protocols::rosetta_scripts::print_information().

bool core::pack::task::operation::ResLvlTaskOperationFactory::has_type ( std::string const &  type) const
ResLvlTaskOperationOP core::pack::task::operation::ResLvlTaskOperationFactory::newRLTO ( std::string const &  type) const

return new ResLvlTaskOperation by key lookup in rlto_map_

return new ResLvlTaskOperation by key lookup in rltoc_map_ (new ResLvlTaskOperation parses Tag if provided)

References rltoc_map_.

Referenced by get_citation_humanreadable().

ResLvlTaskOperationOP core::pack::task::operation::ResLvlTaskOperationFactory::newRLTO ( std::string const &  class_keyname,
TagCOP  tag 
) const

return new ResLvlTaskOperation by key lookup in rlto_map_ (with the new ResLvlTaskOperation parsing the input Tag)

References rltoc_map_.

void core::pack::task::operation::ResLvlTaskOperationFactory::provide_xml_schema ( std::string const &  task_operation_name,
utility::tag::XMLSchemaDefinition &  xsd 
) const

Get the XML schema for a given ResLvlTaskOperation.

Throws an error if the ResLvlTaskOperation is unknown to Rosetta.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References rltoc_map_.

Referenced by protocols::rosetta_scripts::print_information().

std::string core::pack::task::operation::ResLvlTaskOperationFactory::res_lvl_task_op_xml_schema_group_name ( )
static

Friends And Related Function Documentation

friend class utility::SingletonBase< ResLvlTaskOperationFactory >
friend

Member Data Documentation

RLTOC_Map core::pack::task::operation::ResLvlTaskOperationFactory::rltoc_map_
private

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