![]() |
Rosetta
3.8
|
#include <TaskOperationFactory.hh>
Public Types | |
typedef utility::vector1 < TaskOperationOP > | TaskOperationOPs |
typedef std::map< std::string, TaskOperationCreatorOP > | TaskOperationCreatorMap |
typedef utility::tag::Tag | Tag |
typedef utility::tag::TagOP | TagOP |
typedef utility::tag::TagCOP | TagCOP |
Public Member Functions | |
void | factory_register (TaskOperationCreatorOP) |
void | add_creator (TaskOperationCreatorOP) |
add a prototype, using its default type name as the map key More... | |
bool | has_type (std::string const &) const |
void | add_creator (ResLvlTaskOperationCreatorOP) |
pass through to child factories More... | |
void | add_creator (ResFilterCreatorOP) |
adds a ResFilter prototype creator to the child ResFilterFactory More... | |
void | provide_xml_schema (std::string const &task_operation_name, utility::tag::XMLSchemaDefinition &xsd) const |
Get the XML schema for a given TaskOperation. More... | |
TaskOperationOP | newTaskOperation (std::string const &, basic::datacache::DataMap &datamap, TagCOP=utility::tag::TagCOP(utility::tag::TagOP(new utility::tag::Tag()))) const |
return new TaskOperation by key lookup in task_operation_creator_map_ (new TaskOperation parses Tag if provided) More... | |
void | newTaskOperations (TaskOperationOPs &, basic::datacache::DataMap &datamap, TagCOP) const |
fills vector with new TaskOperations from nested "TASKOPERATIONS" TagCOP More... | |
void | newTaskOperations (TaskOperationOPs &, basic::datacache::DataMap &datamap, std::string const &) const |
fills vector with new TaskOperations from xml-like tag file More... | |
void | define_task_op_xml_schema (utility::tag::XMLSchemaDefinition &xsd) const |
The TaskOperationFactory is the point of entry for the definition of the XML Schemas for every TaskOperation that may be instantiated from a file. It is responsible for defining an xs:group named "task_operation" listing each of the task-operation-complex types that may be initialized using the TaskOperationFactory and to iterate across each of the TaskOperationCreator s it contains asking them for the XML schema of the TaskOperation they are responsible for creating. More... | |
TaskOperationCreatorMap const & | creator_map () const |
Read access to the map of creator names to creators – for unit testing purposes only. More... | |
Static Public Member Functions | |
static std::string | task_operation_xml_schema_group_name () |
Private Member Functions | |
TaskOperationFactory () | |
the default TaskOperations are now initialized in core/init/init.cc via the registrator/creator scheme More... | |
virtual | ~TaskOperationFactory () |
TaskOperationFactory (TaskOperationFactory const &)=delete | |
TaskOperationFactory & | operator= (TaskOperationFactory const &)=delete |
Private Attributes | |
TaskOperationCreatorMap | task_operation_creator_map_ |
Friends | |
class | utility::SingletonBase< TaskOperationFactory > |
typedef utility::tag::Tag core::pack::task::operation::TaskOperationFactory::Tag |
typedef utility::tag::TagCOP core::pack::task::operation::TaskOperationFactory::TagCOP |
typedef utility::tag::TagOP core::pack::task::operation::TaskOperationFactory::TagOP |
typedef std::map< std::string, TaskOperationCreatorOP > core::pack::task::operation::TaskOperationFactory::TaskOperationCreatorMap |
typedef utility::vector1< TaskOperationOP > core::pack::task::operation::TaskOperationFactory::TaskOperationOPs |
|
private |
the default TaskOperations are now initialized in core/init/init.cc via the registrator/creator scheme
|
privatevirtual |
|
privatedelete |
void core::pack::task::operation::TaskOperationFactory::add_creator | ( | TaskOperationCreatorOP | creator | ) |
add a prototype, using its default type name as the map key
add a TaskOperation prototype creator
References task_operation_creator_map_.
Referenced by factory_register().
void core::pack::task::operation::TaskOperationFactory::add_creator | ( | ResLvlTaskOperationCreatorOP | creator | ) |
pass through to child factories
adds a ResLvlTaskOperation prototype creator to the child ResLvlTaskOperationFactory
void core::pack::task::operation::TaskOperationFactory::add_creator | ( | ResFilterCreatorOP | creator | ) |
adds a ResFilter prototype creator to the child ResFilterFactory
TaskOperationFactory::TaskOperationCreatorMap const & core::pack::task::operation::TaskOperationFactory::creator_map | ( | ) | const |
Read access to the map of creator names to creators – for unit testing purposes only.
References task_operation_creator_map_.
void core::pack::task::operation::TaskOperationFactory::define_task_op_xml_schema | ( | utility::tag::XMLSchemaDefinition & | xsd | ) | const |
The TaskOperationFactory is the point of entry for the definition of the XML Schemas for every TaskOperation that may be instantiated from a file. It is responsible for defining an xs:group named "task_operation" listing each of the task-operation-complex types that may be initialized using the TaskOperationFactory and to iterate across each of the TaskOperationCreator s it contains asking them for the XML schema of the TaskOperation they are responsible for creating.
References core::pack::task::operation::complex_type_name_for_task_op(), task_operation_creator_map_, and task_operation_xml_schema_group_name().
void core::pack::task::operation::TaskOperationFactory::factory_register | ( | TaskOperationCreatorOP | creator | ) |
References add_creator(), and task_operation_creator_map_.
bool core::pack::task::operation::TaskOperationFactory::has_type | ( | std::string const & | type | ) | const |
References task_operation_creator_map_.
TaskOperationOP core::pack::task::operation::TaskOperationFactory::newTaskOperation | ( | std::string const & | type, |
basic::datacache::DataMap & | datamap, | ||
TagCOP | tag = utility::tag::TagCOP( utility::tag::TagOP( new utility::tag::Tag() ) ) |
||
) | const |
return new TaskOperation by key lookup in task_operation_creator_map_ (new TaskOperation parses Tag if provided)
References task_operation_creator_map_, and core::pack::task::operation::TR().
Referenced by newTaskOperations(), and protocols::match::TaskOperationMPM::TaskOperationMPM().
void core::pack::task::operation::TaskOperationFactory::newTaskOperations | ( | TaskOperationOPs & | tops, |
basic::datacache::DataMap & | datamap, | ||
TagCOP | tag | ||
) | const |
fills vector with new TaskOperations from nested "TASKOPERATIONS" TagCOP
recurse tag file to find TASKOPERATIONS definitions
References newTaskOperation(), and core::pack::task::operation::TR().
Referenced by newTaskOperations().
void core::pack::task::operation::TaskOperationFactory::newTaskOperations | ( | TaskOperationOPs & | tops, |
basic::datacache::DataMap & | datamap, | ||
std::string const & | tagfilename | ||
) | const |
fills vector with new TaskOperations from xml-like tag file
References newTaskOperations(), and core::pack::task::operation::TR().
|
privatedelete |
void core::pack::task::operation::TaskOperationFactory::provide_xml_schema | ( | std::string const & | task_operation_name, |
utility::tag::XMLSchemaDefinition & | xsd | ||
) | const |
Get the XML schema for a given TaskOperation.
return new TaskOperation by key lookup in task_operation_creator_map_ (new TaskOperation parses Tag if provided)
Throws an error if the TaskOperation is unknown to Rosetta.
Example Tag syntax for parser as of Summer 2009
<ReadResfile name="rrf" filename="myresfile/">
or
<OperateOnCertainResidues name="PROTEINnopack"> <PreventRepackingRLT> <ResidueHasProperty property="PROTEIN/"> </OperateOnCertainResidues>Get the XML schema for a given TaskOperation.
Throws an error if the TaskOperation is unknown to Rosetta.
References task_operation_creator_map_, and core::pack::task::operation::TR().
|
static |
Referenced by define_task_op_xml_schema().
|
friend |
|
private |
Referenced by add_creator(), creator_map(), define_task_op_xml_schema(), factory_register(), has_type(), newTaskOperation(), and provide_xml_schema().