Rosetta  2020.46
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
core::simple_metrics::PerResidueRealMetric Class Referenceabstract

A class that is derived to calculate a set of core::Real values for each Residue. Apply(pose) method calculates this metric and adds it to the pose score for output. More...

#include <PerResidueRealMetric.hh>

Inheritance diagram for core::simple_metrics::PerResidueRealMetric:
Inheritance graph
[legend]

Public Member Functions

 PerResidueRealMetric ()
 
 ~PerResidueRealMetric () override
 
 PerResidueRealMetric (PerResidueRealMetric const &other)
 
PerResidueRealMetricoperator= (PerResidueRealMetric const &)
 
void apply (std::string const &out_label, pose::Pose &pose, bool override_existing_data=false) const override
 Calculate the metric and add it to the pose as a score. labeled as out_label. More...
 
void set_residue_selector (select::residue_selector::ResidueSelectorCOP selector)
 Set a ResidueSelector for which we will calculate values over. More...
 
void set_output_as_pdb_nums (bool output_as_pdb_nums)
 Set to output in PDB numbering instead of Rosetta during the Apply function, which adds the data to pose as extra scores. More...
 
virtual std::map< core::Size,
core::Real
calculate (pose::Pose const &pose) const =0
 Calculate the metric. This map is Rosetta Resnum->value and includes only those residues selected. More...
 
std::map< core::Size, core::Realcached_calculate (pose::Pose const &pose, bool use_cache, std::string prefix="", std::string suffix="", bool fail_on_missing_cache=true, bool use_ref_pose_for_cache=true) const
 Grab the data from the pose if it exists or calculate the metric. More...
 
std::string name () const override=0
 Name of the class. More...
 
std::string metric () const override=0
 Name of the metric. More...
 
utility::vector1< std::string > get_metric_names () const override
 Get the submetric names that this Metric will calculate. More...
 
select::residue_selector::ResidueSelectorCOP get_selector () const
 Get the set residue selector of this class. More...
 
void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override=0
 called by parse_my_tag – should not be used directly More...
 
SimpleMetricOP clone () const override=0
 
virtual void parse_per_residue_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data)
 Parse the base class tag. Keep required interface for parse_my_tag. More...
 
- Public Member Functions inherited from core::simple_metrics::SimpleMetric
 SimpleMetric (std::string const &simple_metric_type)
 
 ~SimpleMetric () override
 
 SimpleMetric (SimpleMetric const &other)
 
SimpleMetricoperator= (SimpleMetric const &)
 
void apply (pose::Pose &pose, std::string const &prefix="", std::string const &suffix="", bool override_existing_data=false) const
 Calculate the metric and add it to the Score, which is output into a scorefile - labeled as prefix+metric+suffix. More...
 
void set_custom_type (std::string const &custom_type)
 
std::string get_custom_type () const
 Additional setting to prefix/suffix. More...
 
virtual void parse_base_tag (utility::tag::TagCOP tag)
 Parse the base class tag. Keep required interface for parse_my_tag. More...
 
std::string simple_metric_type () const
 
std::string get_final_sm_type () const
 Get the final name of this metric including its simple_metric_type_ name and any set custom type. 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...
 

Static Public Member Functions

static void add_schema (utility::tag::XMLSchemaComplexTypeGeneratorOP complex_schema)
 Add options to the schema from this base class. More...
 
- Static Public Member Functions inherited from core::simple_metrics::SimpleMetric
static
utility::tag::XMLSchemaComplexTypeGeneratorOP 
complex_type_generator_for_simple_metric (utility::tag::XMLSchemaDefinition &)
 

Private Attributes

select::residue_selector::ResidueSelectorCOP selector_
 
bool output_as_pdb_nums_ = false
 

Detailed Description

A class that is derived to calculate a set of core::Real values for each Residue. Apply(pose) method calculates this metric and adds it to the pose score for output.

Calculate(pose) method calculates core::Real values and returns them as a map<Size, Real> Resnum:Value

Constructor & Destructor Documentation

core::simple_metrics::PerResidueRealMetric::PerResidueRealMetric ( )

References selector_.

core::simple_metrics::PerResidueRealMetric::~PerResidueRealMetric ( )
overridedefault
core::simple_metrics::PerResidueRealMetric::PerResidueRealMetric ( PerResidueRealMetric const &  other)

References selector_.

Member Function Documentation

void core::simple_metrics::PerResidueRealMetric::add_schema ( utility::tag::XMLSchemaComplexTypeGeneratorOP  complex_schema)
static
void core::simple_metrics::PerResidueRealMetric::apply ( std::string const &  out_label,
pose::Pose pose,
bool  override_existing_data = false 
) const
overridevirtual

Calculate the metric and add it to the pose as a score. labeled as out_label.

Score is added to the SimpleMetricData cache in the pose A ReferencePose is created with out_label as a name for further access. Data is output to the final scorefile.

Implements core::simple_metrics::SimpleMetric.

References calculate(), core::simple_metrics::get_sm_data(), name(), output_as_pdb_nums_, and core::simple_metrics::throw_sm_override_error().

Referenced by core::pack::guidance_scoreterms::sap::PerResidueSapScoreMetric::calculate(), and core::simple_metrics::per_residue_metrics::PerResidueClashMetric::calculate().

std::map< core::Size, core::Real > core::simple_metrics::PerResidueRealMetric::cached_calculate ( pose::Pose const &  pose,
bool  use_cache,
std::string  prefix = "",
std::string  suffix = "",
bool  fail_on_missing_cache = true,
bool  use_ref_pose_for_cache = true 
) const

Grab the data from the pose if it exists or calculate the metric.

If use_cache is true, we will attempt to pull the data from the pose. If fail_on_missing_cache is true, we will fail, otherwise, we will calculate the metric.

This function is meant to support caching metrics, so values do not need to be calculated twice, for example in SimpleMetricFilter/Features or code-wise where data takes a while to calculate and can be reused.

If we cached the data, we have created a ref-pose and can match the current resnums with our refpose resnums using the use_ref_pose_for_cache option. This allows us to delete residues and still retain the given data to match.

References calculate(), core::simple_metrics::SimpleMetric::get_final_sm_type(), core::simple_metrics::get_sm_data(), core::simple_metrics::has_sm_data(), and name().

Referenced by protocols::simple_filters::SimpleMetricFilter::apply(), and protocols::features::SimpleMetricFeatures::report_per_residue_features().

virtual std::map< core::Size, core::Real > core::simple_metrics::PerResidueRealMetric::calculate ( pose::Pose const &  pose) const
pure virtual
SimpleMetricOP core::simple_metrics::PerResidueRealMetric::clone ( ) const
overridepure virtual
utility::vector1< std::string > core::simple_metrics::PerResidueRealMetric::get_metric_names ( ) const
overridevirtual

Get the submetric names that this Metric will calculate.

Implements core::simple_metrics::SimpleMetric.

References metric().

select::residue_selector::ResidueSelectorCOP core::simple_metrics::PerResidueRealMetric::get_selector ( ) const
std::string core::simple_metrics::PerResidueRealMetric::metric ( ) const
overridepure virtual
std::string core::simple_metrics::PerResidueRealMetric::name ( ) const
overridepure virtual
PerResidueRealMetric & core::simple_metrics::PerResidueRealMetric::operator= ( PerResidueRealMetric const &  ot)
void core::simple_metrics::PerResidueRealMetric::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::DataMap &  data 
)
overridepure virtual
void core::simple_metrics::PerResidueRealMetric::parse_per_residue_tag ( utility::tag::TagCOP  tag,
basic::datacache::DataMap &  data 
)
virtual
void core::simple_metrics::PerResidueRealMetric::set_output_as_pdb_nums ( bool  output_as_pdb_nums)

Set to output in PDB numbering instead of Rosetta during the Apply function, which adds the data to pose as extra scores.

References output_as_pdb_nums_.

Referenced by parse_per_residue_tag().

void core::simple_metrics::PerResidueRealMetric::set_residue_selector ( select::residue_selector::ResidueSelectorCOP  selector)

Member Data Documentation

bool core::simple_metrics::PerResidueRealMetric::output_as_pdb_nums_ = false
private
select::residue_selector::ResidueSelectorCOP core::simple_metrics::PerResidueRealMetric::selector_
private

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