Rosetta  2020.46
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Member Functions | List of all members
protocols::task_operations::RestrictOperationsBase Class Referenceabstract

#include <RestrictOperationsBase.hh>

Inheritance diagram for protocols::task_operations::RestrictOperationsBase:
Inheritance graph

Public Types

typedef TaskOperation parent
- Public Types inherited from core::pack::task::operation::TaskOperation
typedef utility::tag::TagCOP TagCOP
typedef basic::datacache::DataMap DataMap
typedef pose::Pose Pose

Public Member Functions

 RestrictOperationsBase ()
 ~RestrictOperationsBase () override
TaskOperationOP clone () const override=0
 Create another task operation of the type matching the most-derived version of the class. More...
void apply (core::pose::Pose const &, core::pack::task::PackerTask &) const override=0
 Change a packer task in some way. The input pose is the one to which the input task will be later applied. More...
- Public Member Functions inherited from core::pack::task::operation::TaskOperation
 ~TaskOperation () override
virtual void parse_tag (TagCOP, DataMap &)
 Used to parse an xml-like tag to load parameters and properties. More...
virtual void provide_citation_info (basic::citation_manager::CitationCollectionList &) const
 Provide citations to the passed CitationCollectionList Subclasses should add the info for themselves and any other classes they use. More...

Protected Member Functions

void run_calculator (core::pose::Pose const &pose, std::string const &calculator, std::string const &calculation, utility::vector1_bool &residues) const
 this is the only real function - it takes a calculator name and calculation, and a PackerTask-compatible vector, and flips booleans in the vector according to the calculator More...

Detailed Description

This base class defines an interface for TaskOperations which use PoseMetricCalculators to pick out certain residues in a pose. The apply function takes a vector of PoseMetricCalculators and a vector of calculation queries, and uses those queries to shape the PackerTask. This was designed to work with NeighborsByDistanceCalculator, NeighborhoodByDistanceCalculator, and InterfaceNeighborDefinitionCalculator; in general it works when the calculators can return MetricValue< std::set< core::Size > > (a std::set of resids).

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::task_operations::RestrictOperationsBase::RestrictOperationsBase ( )
protocols::task_operations::RestrictOperationsBase::~RestrictOperationsBase ( )

Member Function Documentation

void protocols::task_operations::RestrictOperationsBase::apply ( core::pose::Pose const &  ,
) const
overridepure virtual
TaskOperationOP protocols::task_operations::RestrictOperationsBase::clone ( ) const
overridepure virtual
void protocols::task_operations::RestrictOperationsBase::run_calculator ( core::pose::Pose const &  pose,
std::string const &  calculator,
std::string const &  calculation,
utility::vector1_bool &  residues 
) const

this is the only real function - it takes a calculator name and calculation, and a PackerTask-compatible vector, and flips booleans in the vector according to the calculator

References core::pose::Pose::metric(), and core::pose::Pose::size().

Referenced by protocols::task_operations::RestrictByCalculatorsOperation::apply(), protocols::task_operations::RestrictToInterfaceOperation::apply(), and protocols::task_operations::RestrictToNeighborhoodOperation::apply().

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