Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
core::kinematics::ResidueCoordinateChangeList Class Reference

The AtomTree is responsible for informing the conformation of which residues have had either internal (DOF) or external (xyz) coordinate changes so that the Conformation may shuttle O(k) – output sensitive – data from the AtomTree to the Residue objects it manages. More...

#include <ResidueCoordinateChangeList.hh>

Inheritance diagram for core::kinematics::ResidueCoordinateChangeList:
Inheritance graph
[legend]

Public Member Functions

 ResidueCoordinateChangeList ()
 
 ~ResidueCoordinateChangeList () override
 
ResidueCoordinateChangeListoperator= (ResidueCoordinateChangeList const &rhs)
 
void total_residue (Size total_residue)
 Set the number of residues in the conformation being tracked. More...
 
Size total_residue () const
 Return the number of. More...
 
bool empty () const
 Is the list of the changed residues empty? More...
 
void clear ()
 Reset the list of those residues that have moved. O(k). More...
 
void mark_residue_moved (id::AtomID atid)
 Mark a residue as having changed by passing in an AtomId for one atom in that residue. More...
 
void mark_residue_moved (Size resid)
 Mark a residue as having changed by passing in the index of that residue. More...
 
ResidueListIterator residues_moved_begin () const
 returns an iterator to the beginning of the (unordered) list of residues that have moved. More...
 
ResidueListIterator residues_moved_end () const
 returns an iterator to the end of the (unordered) list of residues that have moved. More...
 

Private Member Functions

bool no_residues_with_nonzero_change_id () const
 O(N) – used in assert statements in debug mode. More...
 

Private Attributes

ResidueIndexList changed_residues_
 
utility::vector1< Sizeresidue_change_id_
 The reverse mapping from residue index to its position in the list of residues that have changed. Size total_residue_. More...
 
Size total_residue_
 

Detailed Description

The AtomTree is responsible for informing the conformation of which residues have had either internal (DOF) or external (xyz) coordinate changes so that the Conformation may shuttle O(k) – output sensitive – data from the AtomTree to the Residue objects it manages.

Constructor & Destructor Documentation

core::kinematics::ResidueCoordinateChangeList::ResidueCoordinateChangeList ( )
core::kinematics::ResidueCoordinateChangeList::~ResidueCoordinateChangeList ( )
overridedefault

Member Function Documentation

void core::kinematics::ResidueCoordinateChangeList::clear ( )

Reset the list of those residues that have moved. O(k).

– reset the residue_change_id_ for those residues which had previously changed

References changed_residues_, and residue_change_id_.

Referenced by operator=().

bool core::kinematics::ResidueCoordinateChangeList::empty ( ) const

Is the list of the changed residues empty?

Is the list of the changed residues empty? bool.

References changed_residues_.

Referenced by total_residue().

void core::kinematics::ResidueCoordinateChangeList::mark_residue_moved ( id::AtomID  atid)

Mark a residue as having changed by passing in an AtomId for one atom in that residue.

References core::id::AtomID::rsd().

Referenced by core::kinematics::tree::Atom_::dfs(), and core::kinematics::tree::Atom_::transform_Ax_plus_b_recursive().

void core::kinematics::ResidueCoordinateChangeList::mark_residue_moved ( Size  resid)

Mark a residue as having changed by passing in the index of that residue.

References changed_residues_, residue_change_id_, total_residue_, and core::kinematics::tr().

bool core::kinematics::ResidueCoordinateChangeList::no_residues_with_nonzero_change_id ( ) const
private

O(N) – used in assert statements in debug mode.

References residue_change_id_, and total_residue_.

Referenced by total_residue().

ResidueCoordinateChangeList & core::kinematics::ResidueCoordinateChangeList::operator= ( ResidueCoordinateChangeList const &  rhs)
ResidueListIterator core::kinematics::ResidueCoordinateChangeList::residues_moved_begin ( ) const

returns an iterator to the beginning of the (unordered) list of residues that have moved.

References changed_residues_.

ResidueListIterator core::kinematics::ResidueCoordinateChangeList::residues_moved_end ( ) const

returns an iterator to the end of the (unordered) list of residues that have moved.

References changed_residues_.

void core::kinematics::ResidueCoordinateChangeList::total_residue ( Size  total_residue)

Set the number of residues in the conformation being tracked.

adding and deleting residues repeatedly should be O(1) so use the stl resize-with-argument command when resizing residue_change_id_. That way, if residue_change_id_ has reserved space of at least total_residue, then the resize will initialize exactly the number of new residues that have been added. In debug mode, this operation is O( total_residue ).

References changed_residues_, empty(), no_residues_with_nonzero_change_id(), residue_change_id_, total_residue(), and total_residue_.

Size core::kinematics::ResidueCoordinateChangeList::total_residue ( ) const
inline

Return the number of.

References total_residue_.

Referenced by total_residue().

Member Data Documentation

ResidueIndexList core::kinematics::ResidueCoordinateChangeList::changed_residues_
private
utility::vector1< Size > core::kinematics::ResidueCoordinateChangeList::residue_change_id_
private

The reverse mapping from residue index to its position in the list of residues that have changed. Size total_residue_.

Referenced by clear(), mark_residue_moved(), no_residues_with_nonzero_change_id(), operator=(), and total_residue().

Size core::kinematics::ResidueCoordinateChangeList::total_residue_
private

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