Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
protocols::ligand_docking::ResidueTorsionRestraints Class Reference

Manages harmonic restraints on torsions, so they can be turned off for packing. More...

#include <ResidueTorsionRestraints.hh>

Inheritance diagram for protocols::ligand_docking::ResidueTorsionRestraints:
Inheritance graph
[legend]
Collaboration diagram for protocols::ligand_docking::ResidueTorsionRestraints:
Collaboration graph
[legend]

Public Member Functions

 ResidueTorsionRestraints (core::pose::Pose &pose, core::Size resid, core::Real stddev_degrees)
 Establishes initial constraints set – constraints start off enabled. More...
 
virtual ~ResidueTorsionRestraints ()
 
virtual void enable (core::pose::Pose &pose)
 Constrain residue torsions for specified pose. More...
 
virtual void disable (core::pose::Pose &pose)
 Remove residue torsions constraints added by this object (if any). More...
 
bool operator== (const ResidueTorsionRestraints &other)
 

Private Member Functions

virtual void setup_constraints (core::pose::Pose &pose)
 Shared logic for creating torsional constraints. More...
 
virtual
core::scoring::constraints::ConstraintSetOP 
without_my_constraints (core::scoring::constraints::ConstraintSetCOP old_constraints, std::set< core::scoring::constraints::ConstraintCOP > &removed_constraints)
 Shared logic; returns old_constraints without my_constraints_. More...
 

Private Attributes

core::Size resid_
 
core::Real stddev_degrees_
 
std::set< std::string > my_constraints_
 
utility::vector1< core::Realold_chi_
 
std::set
< core::scoring::constraints::ConstraintCOP
old_constraints_
 

Detailed Description

Manages harmonic restraints on torsions, so they can be turned off for packing.

Restraints are created when object is created, so they start off enabled. I had to change from a PoseOP in the constructor to Pose references in enable/disable because Movers only get Pose references, not PoseOPs. Do not try to use one of these with multiple different poses, or surely the C++ gods will smite thee.

Constructor & Destructor Documentation

protocols::ligand_docking::ResidueTorsionRestraints::ResidueTorsionRestraints ( core::pose::Pose pose,
core::Size  resid,
core::Real  stddev_degrees 
)

Establishes initial constraints set – constraints start off enabled.

References enable().

virtual protocols::ligand_docking::ResidueTorsionRestraints::~ResidueTorsionRestraints ( )
inlinevirtual

Member Function Documentation

void protocols::ligand_docking::ResidueTorsionRestraints::disable ( core::pose::Pose pose)
virtual
void protocols::ligand_docking::ResidueTorsionRestraints::enable ( core::pose::Pose pose)
virtual
bool protocols::ligand_docking::ResidueTorsionRestraints::operator== ( const ResidueTorsionRestraints other)

References resid_.

void protocols::ligand_docking::ResidueTorsionRestraints::setup_constraints ( core::pose::Pose pose)
privatevirtual

Shared logic for creating torsional constraints.

Adds constraints to all rotatable torsions except proton chis. Conserves all existing constraints except ones previously added by this object.

References core::pose::Pose::constraint_set(), my_constraints_, resid_, core::pose::Pose::residue(), core::pose::Pose::residue_type(), stddev_degrees_, and without_my_constraints().

Referenced by enable().

core::scoring::constraints::ConstraintSetOP protocols::ligand_docking::ResidueTorsionRestraints::without_my_constraints ( core::scoring::constraints::ConstraintSetCOP  old_constraints,
std::set< core::scoring::constraints::ConstraintCOP > &  removed_constraints 
)
privatevirtual

Shared logic; returns old_constraints without my_constraints_.

References my_constraints_.

Referenced by disable(), and setup_constraints().

Member Data Documentation

std::set< std::string > protocols::ligand_docking::ResidueTorsionRestraints::my_constraints_
private

Constraints that were created and added by this object. We compare by to_string() names rather than object identity because copying a Pose creates a deep copy of its constraints.

Referenced by setup_constraints(), and without_my_constraints().

utility::vector1< core::Real > protocols::ligand_docking::ResidueTorsionRestraints::old_chi_
private

Referenced by disable(), and enable().

std::set< core::scoring::constraints::ConstraintCOP > protocols::ligand_docking::ResidueTorsionRestraints::old_constraints_
private

Referenced by disable(), and enable().

core::Size protocols::ligand_docking::ResidueTorsionRestraints::resid_
private
core::Real protocols::ligand_docking::ResidueTorsionRestraints::stddev_degrees_
private

Referenced by setup_constraints().


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