Rosetta 3.5
 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 | Static Private Attributes | List of all members
core::pack::task::operation::TaskOperationFactory Class Reference

#include <TaskOperationFactory.hh>

Collaboration diagram for core::pack::task::operation::TaskOperationFactory:
Collaboration graph
[legend]

Public Types

typedef utility::vector1
< TaskOperationOP
TaskOperationOPs
 
typedef std::map< std::string,
TaskOperationCreatorOP
TaskOperationCreatorMap
 
typedef utility::tag::Tag Tag
 
typedef utility::tag::TagPtr TagPtr
 

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...
 
TaskOperationOP newTaskOperation (std::string const &, TagPtr=new Tag) const
 return new TaskOperation by key lookup in task_operation_creator_map_ (new TaskOperation parses Tag if provided) More...
 
void newTaskOperations (TaskOperationOPs &, TagPtr) const
 fills vector with new TaskOperations from nested "TASKOPERATIONS" TagPtr More...
 
void newTaskOperations (TaskOperationOPs &, std::string const &) const
 fills vector with new TaskOperations from xml-like tag file More...
 

Static Public Member Functions

static TaskOperationFactoryget_instance ()
 

Private Member Functions

 TaskOperationFactory ()
 the default TaskOperations are now initialized in core/init.cc via the registrator/creator scheme More...
 
virtual ~TaskOperationFactory ()
 

Private Attributes

TaskOperationCreatorMap task_operation_creator_map_
 

Static Private Attributes

static TaskOperationFactoryinstance_
 

Detailed Description

Definition at line 44 of file TaskOperationFactory.hh.

Member Typedef Documentation

Definition at line 49 of file TaskOperationFactory.hh.

Definition at line 50 of file TaskOperationFactory.hh.

Definition at line 48 of file TaskOperationFactory.hh.

Definition at line 47 of file TaskOperationFactory.hh.

Constructor & Destructor Documentation

core::pack::task::operation::TaskOperationFactory::TaskOperationFactory ( )
private

the default TaskOperations are now initialized in core/init.cc via the registrator/creator scheme

Definition at line 56 of file TaskOperationFactory.cc.

Referenced by get_instance().

core::pack::task::operation::TaskOperationFactory::~TaskOperationFactory ( )
privatevirtual

Definition at line 53 of file TaskOperationFactory.cc.

Member Function Documentation

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

Definition at line 69 of file TaskOperationFactory.cc.

References task_operation_creator_map_.

Referenced by factory_register().

void core::pack::task::operation::TaskOperationFactory::add_creator ( ResLvlTaskOperationCreatorOP  creator)
void core::pack::task::operation::TaskOperationFactory::add_creator ( ResFilterCreatorOP  creator)
void core::pack::task::operation::TaskOperationFactory::factory_register ( TaskOperationCreatorOP  creator)

Definition at line 59 of file TaskOperationFactory.cc.

References add_creator(), and task_operation_creator_map_.

TaskOperationFactory * core::pack::task::operation::TaskOperationFactory::get_instance ( )
static
bool core::pack::task::operation::TaskOperationFactory::has_type ( std::string const &  type) const
TaskOperationOP core::pack::task::operation::TaskOperationFactory::newTaskOperation ( std::string const &  type,
TagPtr  tag = new Tag 
) const

return new TaskOperation by key lookup in task_operation_creator_map_ (new TaskOperation parses Tag if provided)

Example Tag syntax for parser as of Summer 2009

<ReadResfile name="rrf" filename="myresfile/">

or

<OperateOnCertainResidues name="PROTEINnopack"> <PreventRepackingRLT> <ResidueHasProperty property="PROTEIN/"> </OperateOnCertainResidues>

Definition at line 109 of file TaskOperationFactory.cc.

References task_operation_creator_map_, and core::pack::task::operation::TR().

Referenced by newTaskOperations(), protocols::flxbb::LayerDesignOperation::parse_tag(), and protocols::match::TaskOperationMPM::TaskOperationMPM().

void core::pack::task::operation::TaskOperationFactory::newTaskOperations ( TaskOperationOPs tops,
TagPtr  tag 
) const

fills vector with new TaskOperations from nested "TASKOPERATIONS" TagPtr

recurse tag file to find TASKOPERATIONS definitions

Definition at line 132 of file TaskOperationFactory.cc.

References newTaskOperation(), and core::pack::task::operation::TR().

Referenced by newTaskOperations(), and protocols::optimize_weights::IterativeOptEDriver::read_tagfile_to_taskfactory().

void core::pack::task::operation::TaskOperationFactory::newTaskOperations ( TaskOperationOPs tops,
std::string const &  tagfilename 
) const

fills vector with new TaskOperations from xml-like tag file

Definition at line 155 of file TaskOperationFactory.cc.

References newTaskOperations(), and core::pack::task::operation::TR().

Member Data Documentation

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

Definition at line 77 of file TaskOperationFactory.hh.

Referenced by get_instance().

TaskOperationCreatorMap core::pack::task::operation::TaskOperationFactory::task_operation_creator_map_
private

Definition at line 78 of file TaskOperationFactory.hh.

Referenced by add_creator(), factory_register(), has_type(), and newTaskOperation().


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