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_
 

Member Typedef Documentation

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

Referenced by get_instance().

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

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

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)
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>

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

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

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

Member Data Documentation

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

Referenced by get_instance().

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

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