Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
protocols::cyclic_peptide::CycpepSymmetryFilter Class Reference

A filter that examines a cyclic peptide's structure and returns TRUE if and only if it has a desired backbone symmetry. More...

#include <CycpepSymmetryFilter.hh>

Inheritance diagram for protocols::cyclic_peptide::CycpepSymmetryFilter:
Inheritance graph
[legend]

Public Member Functions

 CycpepSymmetryFilter ()
 Constructor. More...
 
 ~CycpepSymmetryFilter () override
 Destructor (important for properly forward-declaring smart-pointer members) More...
 
bool apply (core::pose::Pose const &pose) const override
 returns true if the structure passes the filter, false otherwise More...
 
core::Real report_sm (core::pose::Pose const &pose) const override
 required for reporting score values More...
 
void report (std::ostream &os, core::pose::Pose const &pose) const override
 allows printing data to a stream More...
 
std::string name () const override
 
void parse_my_tag (utility::tag::TagCOP tag, basic::datacache::DataMap &data) override
 parse XML tag (to use this Filter in Rosetta Scripts) More...
 
void set_symm_repeats (core::Size const repeats_in)
 Sets the repeats in the symmetry that we're looking for (e.g. 2 for c2 or s2 symmetry, 3 for c3, etc.). More...
 
void set_mirror_symm (bool const symm_in)
 Sets whether we're considering mirror (e.g. s4, s6) or non-mirror (e.g. c4, c6) symmetry. More...
 
void set_selector (core::select::residue_selector::ResidueSelectorCOP selector_in)
 Sets the residue selector. More...
 
void set_angle_threshold (core::Real const &setting)
 Set the cutoff, in degrees, that two mainchain dihedral values must lie within in order for two residues to be considered to have the "same" value for that mainchain degree of freedom. More...
 
core::Size symm_repeats () const
 Gets the repeats in the symmetry that we're looking for (e.g. 2 for c2 or s2 symmetry, 3 for c3, etc.). More...
 
bool mirror_symm () const
 Gets whether we're considering mirror (e.g. s4, s6) or non-mirror (e.g. c4, c6) symmetry. More...
 
core::Real const & angle_threshold () const
 The cutoff, in degrees, that two mainchain dihedral values must lie within in order for two residues to be considered to have the "same" value for that mainchain degree of freedom. More...
 
core::select::residue_selector::ResidueSelectorCOP selector () const
 Gets the residue selector. More...
 
protocols::filters::FilterOP fresh_instance () const override
 required in the context of the parser/scripting scheme More...
 
protocols::filters::FilterOP clone () const override
 required in the context of the parser/scripting scheme More...
 
- Public Member Functions inherited from protocols::filters::Filter
 Filter ()
 
 Filter (std::string const &)
 
 Filter (Filter const &)
 
 ~Filter () override
 
virtual std::string get_type () const
 
std::string get_user_defined_name () const
 
void set_user_defined_name (std::string const &name)
 
virtual void clear ()
 used to clear internal variables if needed. Using fresh_instance is preferred since it's a pure virtual More...
 
virtual core::Real score (core::pose::Pose &pose)
 
virtual bool filter_provides_citation_info () const
 Does this filter provide information about how to cite it? More...
 
virtual utility::vector1
< basic::citation_manager::CitationCollectionCOP > 
provide_citation_info () const
 Provide the citation. More...
 
virtual bool filter_is_unpublished () const
 Does this filter indicate that it is unpublished (and, by extension, that the author should be included in publications resulting from it)? More...
 
virtual utility::vector1
< basic::citation_manager::UnpublishedModuleInfoCOP > 
provide_authorship_info_for_unpublished () const
 Provide a list of authors and their e-mail addresses, as strings. More...
 

Static Public Member Functions

static std::string class_name ()
 
static void provide_xml_schema (utility::tag::XMLSchemaDefinition &xsd)
 

Private Member Functions

void get_residues (core::pose::Pose const &pose, core::select::residue_selector::ResidueSelectorCOP selector, utility::vector1< core::Size > &reslist_out) const
 Given a pose and an optional ResidueSelector, get a list of residues. More...
 
bool is_cyclic_peptide (core::pose::Pose const &pose, utility::vector1< core::Size > const &residues) const
 Checks that the geometry to which we're applying this filter is actually a cyclic peptide. More...
 
bool mainchain_torsions_differ (core::pose::Pose const &pose, core::Size const res1, core::Size const res2, bool const flip) const
 Returns TRUE if the number of mainchain torsions differs, or if the values differ; FALSE otherwise. More...
 

Private Attributes

core::Size symm_repeats_
 The number of symmetry repeats (e.g. 2 for c2 or s2 symmetry, 3 for c3, etc.). More...
 
bool mirror_symm_
 Are we considing mirror symmetry? More...
 
core::select::residue_selector::ResidueSelectorCOP selector_
 A ResidueSelector to select a cyclic peptide part of a pose. More...
 
core::Real angle_threshold_
 The cutoff, in degrees, that two mainchain dihedral values must lie within in order for two residues to be considered to have the "same" value for that mainchain degree of freedom. More...
 

Additional Inherited Members

- Protected Attributes inherited from protocols::filters::Filter
std::string scorename_
 

Detailed Description

A filter that examines a cyclic peptide's structure and returns TRUE if and only if it has a desired backbone symmetry.

Constructor & Destructor Documentation

protocols::cyclic_peptide::CycpepSymmetryFilter::CycpepSymmetryFilter ( )

Constructor.

protocols::cyclic_peptide::CycpepSymmetryFilter::~CycpepSymmetryFilter ( )
overridedefault

Destructor (important for properly forward-declaring smart-pointer members)

Member Function Documentation

core::Real const& protocols::cyclic_peptide::CycpepSymmetryFilter::angle_threshold ( ) const
inline

The cutoff, in degrees, that two mainchain dihedral values must lie within in order for two residues to be considered to have the "same" value for that mainchain degree of freedom.

References angle_threshold_.

Referenced by mainchain_torsions_differ(), and parse_my_tag().

bool protocols::cyclic_peptide::CycpepSymmetryFilter::apply ( core::pose::Pose const &  pose) const
overridevirtual
std::string protocols::cyclic_peptide::CycpepSymmetryFilter::class_name ( )
static
protocols::filters::FilterOP protocols::cyclic_peptide::CycpepSymmetryFilter::clone ( ) const
overridevirtual

required in the context of the parser/scripting scheme

Implements protocols::filters::Filter.

protocols::filters::FilterOP protocols::cyclic_peptide::CycpepSymmetryFilter::fresh_instance ( ) const
overridevirtual

required in the context of the parser/scripting scheme

Implements protocols::filters::Filter.

void protocols::cyclic_peptide::CycpepSymmetryFilter::get_residues ( core::pose::Pose const &  pose,
core::select::residue_selector::ResidueSelectorCOP  selector,
utility::vector1< core::Size > &  reslist_out 
) const
private

Given a pose and an optional ResidueSelector, get a list of residues.

References core::pose::Pose::total_residue().

Referenced by apply().

bool protocols::cyclic_peptide::CycpepSymmetryFilter::is_cyclic_peptide ( core::pose::Pose const &  pose,
utility::vector1< core::Size > const &  residues 
) const
private

Checks that the geometry to which we're applying this filter is actually a cyclic peptide.

References core::pose::Pose::residue(), and core::pose::Pose::residue_type().

Referenced by apply().

bool protocols::cyclic_peptide::CycpepSymmetryFilter::mainchain_torsions_differ ( core::pose::Pose const &  pose,
core::Size const  res1,
core::Size const  res2,
bool const  flip 
) const
private

Returns TRUE if the number of mainchain torsions differs, or if the values differ; FALSE otherwise.

If flip is true, then torsion values are inverted prior to comparison.

References angle_threshold(), core::conformation::Residue::mainchain_torsions(), and core::pose::Pose::residue().

Referenced by apply().

bool protocols::cyclic_peptide::CycpepSymmetryFilter::mirror_symm ( ) const
inline

Gets whether we're considering mirror (e.g. s4, s6) or non-mirror (e.g. c4, c6) symmetry.

References mirror_symm_.

Referenced by apply(), protocols::cyclic_peptide::SymmetricCycpepAlign::do_auto_detection_of_symmetry(), parse_my_tag(), and report().

std::string protocols::cyclic_peptide::CycpepSymmetryFilter::name ( ) const
overridevirtual

Reimplemented from protocols::filters::Filter.

References class_name().

void protocols::cyclic_peptide::CycpepSymmetryFilter::parse_my_tag ( utility::tag::TagCOP  tag,
basic::datacache::DataMap &  data 
)
overridevirtual
void protocols::cyclic_peptide::CycpepSymmetryFilter::provide_xml_schema ( utility::tag::XMLSchemaDefinition &  xsd)
static
void protocols::cyclic_peptide::CycpepSymmetryFilter::report ( std::ostream &  os,
core::pose::Pose const &  pose 
) const
overridevirtual

allows printing data to a stream

Reimplemented from protocols::filters::Filter.

References apply(), mirror_symm(), and symm_repeats().

core::Real protocols::cyclic_peptide::CycpepSymmetryFilter::report_sm ( core::pose::Pose const &  pose) const
overridevirtual

required for reporting score values

Reimplemented from protocols::filters::Filter.

References apply().

core::select::residue_selector::ResidueSelectorCOP protocols::cyclic_peptide::CycpepSymmetryFilter::selector ( ) const
inline

Gets the residue selector.

References selector_.

Referenced by apply(), and parse_my_tag().

void protocols::cyclic_peptide::CycpepSymmetryFilter::set_angle_threshold ( core::Real const &  setting)

Set the cutoff, in degrees, that two mainchain dihedral values must lie within in order for two residues to be considered to have the "same" value for that mainchain degree of freedom.

References angle_threshold_.

Referenced by protocols::cyclic_peptide::SymmetricCycpepAlign::do_auto_detection_of_symmetry(), protocols::cyclic_peptide::SymmetricCycpepAlign::do_symmetry_checks(), protocols::energy_based_clustering::EnergyBasedClusteringProtocol::go(), and parse_my_tag().

void protocols::cyclic_peptide::CycpepSymmetryFilter::set_mirror_symm ( bool const  symm_in)
inline
void protocols::cyclic_peptide::CycpepSymmetryFilter::set_selector ( core::select::residue_selector::ResidueSelectorCOP  selector_in)
void protocols::cyclic_peptide::CycpepSymmetryFilter::set_symm_repeats ( core::Size const  repeats_in)
core::Size protocols::cyclic_peptide::CycpepSymmetryFilter::symm_repeats ( ) const
inline

Gets the repeats in the symmetry that we're looking for (e.g. 2 for c2 or s2 symmetry, 3 for c3, etc.).

References symm_repeats_.

Referenced by apply(), protocols::cyclic_peptide::SymmetricCycpepAlign::do_auto_detection_of_symmetry(), parse_my_tag(), and report().

Member Data Documentation

core::Real protocols::cyclic_peptide::CycpepSymmetryFilter::angle_threshold_
private

The cutoff, in degrees, that two mainchain dihedral values must lie within in order for two residues to be considered to have the "same" value for that mainchain degree of freedom.

Defaults to 10 degrees.

Referenced by angle_threshold(), and set_angle_threshold().

bool protocols::cyclic_peptide::CycpepSymmetryFilter::mirror_symm_
private

Are we considing mirror symmetry?

False by default; can only be true if symm_repeats_ is even.

Referenced by mirror_symm(), and set_mirror_symm().

core::select::residue_selector::ResidueSelectorCOP protocols::cyclic_peptide::CycpepSymmetryFilter::selector_
private

A ResidueSelector to select a cyclic peptide part of a pose.

Unused if left null. (In this case, the filter is applied to the whole pose).

Referenced by selector(), and set_selector().

core::Size protocols::cyclic_peptide::CycpepSymmetryFilter::symm_repeats_
private

The number of symmetry repeats (e.g. 2 for c2 or s2 symmetry, 3 for c3, etc.).

Defaults to 2.

Referenced by set_symm_repeats(), and symm_repeats().


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