Rosetta  2018.48
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
core::conformation::Conformation Class Reference

A container of Residues and the kinematics to manage them. More...

#include <Conformation.hh>

Inheritance diagram for core::conformation::Conformation:
Inheritance graph
[legend]

Public Types

typedef kinematics::Jump Jump
 
typedef kinematics::FoldTree FoldTree
 
typedef kinematics::FoldTreeOP FoldTreeOP
 
typedef kinematics::AtomTree AtomTree
 
typedef kinematics::AtomTreeOP AtomTreeOP
 
typedef id::AtomID AtomID
 
typedef
core::conformation::parametric::ParametersSet 
ParametersSet
 
typedef
core::conformation::parametric::ParametersSetOP 
ParametersSetOP
 
typedef
core::conformation::parametric::ParametersSetCOP 
ParametersSetCOP
 
typedef
core::conformation::parametric::Parameters 
Parameters
 
typedef
core::conformation::parametric::ParametersOP 
ParametersOP
 
typedef
core::conformation::parametric::ParametersOP 
ParametersCOP
 
typedef id::AtomID_Mask AtomID_Mask
 
typedef id::DOF_ID DOF_ID
 
typedef id::TorsionID TorsionID
 
typedef kinematics::DomainMap DomainMap
 
typedef
core::conformation::signals::ConnectionEvent 
ConnectionEvent
 
typedef
core::conformation::signals::GeneralEvent 
GeneralEvent
 
typedef
core::conformation::signals::IdentityEvent 
IdentityEvent
 
typedef
core::conformation::signals::LengthEvent 
LengthEvent
 
typedef
core::conformation::signals::XYZEvent 
XYZEvent
 
typedef std::map< id::AtomID,
Vector
FragXYZ
 
typedef std::map< id::StubID,
kinematics::RT
FragRT
 
typedef Size size_type
 
typedef ptrdiff_t difference_type
 
typedef
boost::indirect_iterator
< ResidueOPs::const_iterator,
Residue const > 
const_iterator
 
typedef
boost::indirect_iterator
< ResidueOPs::iterator,
Residue const > 
iterator
 

Public Member Functions

iterator begin () noexcept
 
const_iterator begin () const noexcept
 
iterator end () noexcept
 
const_iterator end () const noexcept
 
 Conformation ()
 constructor More...
 
 ~Conformation () override
 default destructor More...
 
 Conformation (Conformation const &src)
 copy constructor More...
 
virtual Conformationoperator= (Conformation const &src)
 equals operator More...
 
virtual void detached_copy (Conformation const &src)
 copy the other conformation into this, but make sure that the two share no possibly-non-bitwise-const data nor do they refer to each other (as the AtomTree does with its topological observer system). More...
 
virtual ConformationOP clone () const
 clone the conformation More...
 
void clear ()
 clear data More...
 
ConformationCOP get_self_ptr () const
 self pointers More...
 
ConformationOP get_self_ptr ()
 
ConformationCAP get_self_weak_ptr () const
 
ConformationAP get_self_weak_ptr ()
 
void debug_residue_torsions (bool verbose=false) const
 debugging More...
 
void show_residue_connections () const
 Show residue connections for debugging purposes. More...
 
void show_residue_connections (std::ostream &os) const
 Show residue connections for debugging purposes. More...
 
virtual bool same_type_as_me (Conformation const &other, bool const recurse=true) const
 determine the type of the ConformationOP More...
 
bool sequence_matches (Conformation const &other) const
 do the names of all residues in this and src match? More...
 
Size size () const
 Returns the number of residues in the Conformation. More...
 
bool empty () const
 Returns true if this conformation does not have any residues. More...
 
core::chemical::ResidueTypeSetCOP residue_type_set_for_conf (core::chemical::TypeSetMode mode=core::chemical::INVALID_t) const
 Return the appropriate ResidueTypeSet for the Conformation If mode is INVALID_t (the default), then return the typeset for the majority mode of the Conformation. Note: This may be a GlobalResidueTypeSet, if the Conformation doesn't have a specific PoseResidueTypeSet. More...
 
core::chemical::PoseResidueTypeSetOP modifiable_residue_type_set_for_conf (core::chemical::TypeSetMode mode=core::chemical::INVALID_t) const
 Return a clone of the Conformation-specific PoseResidueTypeSet (note this is const) Modifications to this RTS won't be seen in the Conformation unless you pass it back in with reset_residue_type_set_for_conf() Should always return a non-null pointer: will create a new PoseResidueTypeSet if the Conformation doesn't have it already. More...
 
void reset_residue_type_set_for_conf (core::chemical::PoseResidueTypeSetCOP new_set, core::chemical::TypeSetMode mode=core::chemical::INVALID_t)
 Reset the Conformation-specific PoseResidueTypeSet for the appropriate mode to the given RTS. (If the given mode is INVALID_t (the recommended default) the mode will be auto-determined from the RTS.) More...
 
core::chemical::TypeSetMode residue_typeset_mode (bool majority=true) const
 What mode of ResidueTypeSet is this Conformation made of? If majority is true, it will be the mode of the ResidueTypes for most residues in the pose. If majority is false, core::chemical::MIXED_t will be returned for conformations with ResidueTypes of multiple modes. More...
 
bool is_fullatom () const
 convenience test for residue_type_set mode More...
 
bool is_centroid () const
 convenience test for residue_type_set mode More...
 
bool is_mixed_mode () const
 convenience test for residue_type_set mode More...
 
bool is_membrane () const
 convenience test for if the conformation contains information for a membrane protein More...
 
bool contains_carbohydrate_residues () const
 Return true if this conformation contains any carbohydrate residues. More...
 
void contains_carbohydrate_residues (bool setting)
 Set whether this conformation contains any carbohydrate residues. More...
 
Size chain_end (Size chain) const
 Returns the position number of the last residue in chain number <chain> More...
 
Size chain_begin (Size chain) const
 Returns the position number of the first residue in chain number <chain> More...
 
Size num_chains () const
 Returns the number of chains. More...
 
utility::vector1< Size > const & chain_endings () const
 Returns the list of (chain number) chain endings. More...
 
virtual void chain_endings (utility::vector1< Size > const &endings)
 Sets the list of (chain number) chain endings. More...
 
virtual void insert_chain_ending (Size const seqpos)
 Marks <seqpos> as the end of a new (chain number) chain. More...
 
virtual void delete_chain_ending (Size const seqpos)
 Deletes <seqpos> from the list of (chain number) chain endings. More...
 
virtual void reset_chain_endings ()
 Resets chain data so that the Conformation is marked as a single (chain number) chain. More...
 
virtual void chains_from_termini ()
 Rederive the (chain number) chains from the termini/polymer status. More...
 
char secstruct (Size seqpos) const
 Returns the secondary structure the position <seqpos> More...
 
virtual void set_secstruct (Size const seqpos, char const setting)
 Sets the secondary structure of the position <seqpos> to <setting> More...
 
void set_membrane_info (membrane::MembraneInfoOP mem_info)
 Setup a Membrane Info object in Conformation - pos & topology. More...
 
membrane::MembraneInfoOP membrane_info ()
 Returns the const MembraneInfo object in conformation. More...
 
membrane::MembraneInfoOP membrane_info () const
 Returns the const MembraneInfo object in conformation. More...
 
void update_membrane_position (Vector center, Vector normal)
 Update Normal, Center in the Membrane. More...
 
void check_valid_membrane () const
 Check that a new membrane position is valid. More...
 
carbohydrates::GlycanTreeSetCOP glycan_tree_set () const
 Get the glycan tree set. Nullptr if not present. More...
 
void setup_glycan_trees ()
 Setup glycan trees and attach length observer. More...
 
void clear_glycan_trees ()
 Safely detaches any tree observers and clears it to null. More...
 
virtual FoldTree const & fold_tree () const
 Returns the conformation's FoldTree. More...
 
virtual void fold_tree (FoldTree const &fold_tree_in)
 Sets the FoldTree to <fold_tree_in> More...
 
AtomTree const & atom_tree () const
 Returns the conformation's AtomTree. More...
 
chemical::AA const & aa (Size seqpos) const
 Returns the AA enum for position <seqpos> More...
 
std::string annotated_sequence (bool show_all_variants) const
 Returns the variant-tagged string representing the residue types that make up a conformation; e.g. M[MET:N-Terminus-Variant]CDH[HIS_D]LLR[ARG:C-Terminus-Variant]. More...
 
Residue const & residue (Size seqpos) const
 access one of the residues More...
 
basic::datacache::BasicDataCache
const & 
residue_data (Size seqpos) const
 Read access to the datacache array stored inside a Residue object. Also accessible to the user by calling residue( seqpos ).data_ptr() directly. More...
 
basic::datacache::BasicDataCache & residue_data (Size seqpos)
 Write access to the datacache array stored inside a Residue object. Although the Conformation very deliberately does not grant users write access to the whole of its Residue objects, it will grant users access to the Residue objects data cache. So while the coordinates and dihedrals of the Residue will not be changable e.g. during the setup-for-scoring phase, data derived from those coordinates and dihedrals and which ends up living in the Residue will be changable. More...
 
ResidueCOP residue_cop (Size seqpos) const
 access one of the residues, using COP More...
 
chemical::ResidueType const & residue_type (Size seqpos) const
 access one of the residue's types – avoids coord/torsion update More...
 
chemical::ResidueTypeCOP residue_type_ptr (Size seqpos) const
 access one of the residue's types as a COP – avoids coord/torsion update More...
 
ResidueCOPs const_residues () const
 Inefficient – constructs copy of residues_. More...
 
virtual void append_residue_by_jump (conformation::Residue const &new_rsd, Size const anchor_residue, std::string const &anchor_atom="", std::string const &root_atom="", bool const start_new_chain=false)
 Append a new residue by a jump. More...
 
void insert_residue_by_jump (Residue const &new_rsd_in, Size seqpos, Size anchor_pos, std::string const &anchor_atom="", std::string const &root_atom="", bool new_chain=false)
 Insert a new residue by jump. If new_chain is "true", then seqpos must be the last residue of one chain (i.e. residue(seqpos).chain() != residue(seqpos+1).chain() ) More...
 
void insert_residue_by_bond (Residue const &new_rsd_in, Size const seqpos, Size anchor_pos, bool const build_ideal_geometry=false, std::string const &anchor_atom="", std::string const &root_atom="", bool new_chain=false, bool const lookup_bond_length=false)
 Insert a new residue by jump. If new_chain is "true", then seqpos must be the last residue of one chain (i.e. residue(seqpos).chain() != residue(seqpos+1).chain() ) More...
 
void append_residue_by_bond (conformation::Residue const &new_rsd, bool const build_ideal_geometry=false, int connection_index=0, Size anchor_residue=0, int anchor_connection_index=0, bool const start_new_chain=false, bool const lookup_bond_length=false)
 Append a new residue by a bond. More...
 
virtual void append_polymer_residue_after_seqpos (Residue const &new_rsd, Size const seqpos, bool const build_ideal_geometry)
 glues to seqpos and perhaps also seqpos+1 More...
 
virtual void safely_append_polymer_residue_after_seqpos (Residue const &new_rsd, Size const seqpos, bool const build_ideal_geometry)
 glues to seqpos and perhaps also seqpos+1, removes termini variants if necessary More...
 
virtual void prepend_polymer_residue_before_seqpos (Residue const &new_rsd, Size const seqpos, bool const build_ideal_geometry)
 glues to seqpos and perhaps also seqpos-1 More...
 
virtual void safely_prepend_polymer_residue_before_seqpos (Residue const &new_rsd, Size const seqpos, bool const build_ideal_geometry)
 glues to seqpos and perhaps also seqpos-1, removes termini variants if necessary More...
 
virtual void replace_residue (Size const seqpos, Residue const &new_rsd, bool const orient_backbone)
 replace residue More...
 
virtual void replace_residue (Size const seqpos, Residue const &new_rsd, utility::vector1< std::pair< std::string, std::string > > const &atom_pairs)
 function to replace a residue based on superposition on the specified input atom pairs More...
 
virtual void delete_polymer_residue (Size const seqpos)
 Delete polymer residue at the given sequence position. More...
 
virtual void delete_residue_slow (Size const seqpos)
 Slow method that relies on FoldTree::delete_seqpos, rebuilds atomtree, can handle jumps/root residue. More...
 
virtual void delete_residue_range_slow (Size const range_begin, Size const range_end)
 Slow method that relies on FoldTree::delete_seqpos, rebuilds atomtree, can handle jumps/root residue. More...
 
virtual utility::vector1< boolget_residue_mask () const
 returns a mask of residues to be used in scoring More...
 
virtual Real get_residue_weight (core::Size, core::Size) const
 returns a residue-pair weight More...
 
void detect_bonds ()
 
void detect_pseudobonds ()
 
virtual void sever_chemical_bond (Size seqpos1, Size res1_resconn_index, Size seqpos2, Size res2_resconn_index)
 Sever the chemical bond between two residues by stating that the connections for those residues are "incomplete" (i.e. in a state where these residues are not ready to be scored). More...
 
virtual void declare_chemical_bond (Size const seqpos1, std::string const &atom_name1, Size const seqpos2, std::string const &atom_name2)
 Declare that a chemical bond exists between two residues. More...
 
void rebuild_polymer_bond_dependent_atoms_this_residue_only (Size const seqpos)
 Rebuilds the atoms that are dependent on polymer bonds for the specified residue only. More...
 
virtual void rebuild_polymer_bond_dependent_atoms (Size const seqpos)
 Rebuild the atoms ( like HN(seqpos), OC(seqpos+1) ) that are dependent on the polymer bond between seqpos and seqpos+1. More...
 
void rebuild_residue_connection_dependent_atoms (Size seqpos, Size connid)
 
AtomID inter_residue_connection_partner (Size seqpos, int connection_index) const
 This returns the AtomID of the atom in the other residue to which the "connection_index"-th connection of residue seqpos is connected to. More...
 
utility::vector1
< core::id::AtomID
bonded_neighbor_all_res (core::id::AtomID atomid, bool virt=false, bool skip_canonical_and_solvent=false) const
 get all atoms bonded to another More...
 
virtual void fill_missing_atoms (id::AtomID_Mask missing)
 
bool atom_is_backbone_norefold (Size pos, Size atomno) const
 returns true if atom is part of backbone. More...
 
virtual void set_stub_transform (id::StubID const &stub_id1, id::StubID const &stub_id2, kinematics::RT const &target_rt)
 Set the transform between two stubs – only works if there's a jump between the two sets of stubatoms. More...
 
kinematics::RT get_stub_transform (id::StubID const &stub_id1, id::StubID const &stub_id2) const
 get the transform between two stubs More...
 
void set_jump_atom_stub_id (id::StubID const &id)
 
kinematics::Stub stub_from_id (id::StubID const &id) const
 
kinematics::Stub upstream_jump_stub (int jump_number) const
 The upstream and downstream Stubs are the coordinate frames between which this jump is transforming. More...
 
kinematics::Stub downstream_jump_stub (int jump_number) const
 The upstream and downstream Stubs are the coordinate frames between which this jump is transforming. More...
 
virtual void set_polymeric_connection (Size res_id_lower, Size res_id_upper)
 identify polymeric connections More...
 
void set_noncanonical_connection (Size res_id_lower, Size lr_conn_id, Size res_id_upper, Size ur_conn_id)
 Create an arbitrary covalent connection between two residues. More...
 
void update_polymeric_connection (Size lower_seqpos, bool update_connection_dep_atoms=false)
 Update the polymer connection status between lower_seqpos and lower_seqpos+1 based on chainID's and termini. If update_connection_dep_atoms is true, positions of atoms dependent on the polymer connection are updated. More...
 
virtual void update_noncanonical_connection (Size lower_seqpos, Size lr_conn_id, Size upper_seqpos, Size ur_conn_id)
 Update the connection status between the lower_seqpos residue's lr_conn_id connection ID and the upper_seqpos residue's ur_conn_id connection ID. More...
 
virtual void detect_disulfides (utility::vector1< Size > const &disulf_one=utility::vector1< core::Size >(), utility::vector1< Size > const &disulf_two=utility::vector1< core::Size >())
 Detect existing disulfides from the protein structure using suggestions from the FileData (or not!) More...
 
virtual void fix_disulfides (utility::vector1< std::pair< Size, Size > > const &disulf_bonds)
 Assigns disulfide bonds based on a pre-determined list. More...
 
virtual void create_new_parameters_set ()
 Create a new (empty) ParametersSet object and add its owning pointer to the current Conformation object. More...
 
virtual void add_parameters_set (ParametersSetOP newset)
 Add a (predefined) ParametersSet object (via its owning pointer) to the current Conformation object. More...
 
virtual core::Size n_parameters_sets () const
 Get the number of parameters sets defined for this Conformation. More...
 
virtual void clear_parameters_set_list ()
 Delete the list of ParametersSetOP objects. More...
 
virtual ParametersSetOP parameters_set (core::Size const index)
 Access one of the ParametersSets objects linked to this Conformation. More...
 
virtual ParametersSetCOP parameters_set (core::Size const index) const
 Const access to one of the ParametersSets objects linked to this Conformation. More...
 
virtual void insert_conformation_by_jump (Conformation const &conf, Size const insert_seqpos, Size const insert_jumppos, Size const anchor_pos, Size const anchor_jump_number=0, std::string const &anchor_atom="", std::string const &root_atom="")
 Insert one conformation into another. See FoldTree::insert_fold_tree_by_jump. More...
 
void copy_segment (Size size, Conformation const &src, Size begin, Size src_begin)
 copy a stretch of coordinates/torsions from another Conformation More...
 
virtual void insert_fragment (id::StubID const &instub_id, FragRT const &outstub_transforms, FragXYZ const &frag_xyz)
 
Real dof (DOF_ID const &id) const
 Returns the AtomTree degree of freedom (DOF) <id> More...
 
virtual void set_dof (DOF_ID const &id, Real const setting)
 Sets the AtomTree degree of freedom (DOF) <id> to <setting> More...
 
Real torsion (TorsionID const &id) const
 Return the torsion angle OR rigid-body offset for <id> More...
 
virtual void set_torsion (TorsionID const &id, Real const setting)
 Sets the AtomTree DOF and the torsion OR rigid-body offset in the corresponding Residue or Jump. More...
 
Real torsion_angle (AtomID const &atom1, AtomID const &atom2, AtomID const &atom3, AtomID const &atom4) const
 Returns the torsion angle defined by <atom[1-4]> in Radians. More...
 
virtual void set_torsion_angle (AtomID const &atom1, AtomID const &atom2, AtomID const &atom3, AtomID const &atom4, Real const setting, bool const quiet=false)
 Sets the torsion angle defined by <atom[1-4]> to <setting> More...
 
Real bond_angle (AtomID const &atom1, AtomID const &atom2, AtomID const &atom3) const
 Returns the bond angle defined by <atom[1-3]> through the AtomTree. More...
 
virtual void set_bond_angle (AtomID const &atom1, AtomID const &atom2, AtomID const &atom3, Real const setting)
 Sets the bond angle defined by <atom[1-3]> to <setting> More...
 
Real bond_length (AtomID const &atom1, AtomID const &atom2) const
 Returns the bond length between <atom1> and <atom2> through the AtomTree. More...
 
virtual void set_bond_length (AtomID const &atom1, AtomID const &atom2, Real const setting)
 Sets the cond length between <atom1> and <atom2> to <setting> More...
 
core::Vector bond_orientation (AtomID const &atom1, AtomID const &atom2) const
 Return the normalized vector of the bond between these two atoms. More...
 
core::Vector bond_orientation (core::id::TorsionID const torsion) const
 Return the normalized vector of the bond about which this torsion angle twists. More...
 
const Jumpjump (int jump_number) const
 Returns the Jump with jump number <jump_number> More...
 
const Jumpjump (AtomID const &id) const
 access a jump More...
 
virtual void set_jump (int const jump_number, Jump const &new_jump)
 Sets the jump <jump_number> to <new_jump> More...
 
virtual void set_jump (AtomID const &id, Jump const &new_jump)
 set a jump More...
 
PointPosition const & xyz (AtomID const &id) const
 access xyz coordinates of an atom More...
 
virtual void set_xyz (AtomID const &id, PointPosition const &position)
 
virtual void batch_set_xyz (utility::vector1< AtomID > const &id, utility::vector1< PointPosition > const &position)
 
virtual void batch_get_xyz (utility::vector1< AtomID > const &id, utility::vector1< PointPosition > &position) const
 
virtual void apply_transform_Rx_plus_v (numeric::xyzMatrix< Real > const &R, Vector const &v)
 
virtual void insert_ideal_geometry_at_polymer_bond (Size const seqpos)
 
virtual void insert_ideal_geometry_at_residue_connection (Size const pos1, Size const connid1)
 
void update_actcoords ()
 
void update_actcoord (Size resid)
 
void update_orbital_coords (Residue &rsd) const
 
void update_orbital_coords (Size resid)
 
id::DOF_ID dof_id_from_atom_ids (id::AtomID const &id1, id::AtomID const &id2, id::AtomID const &id3, id::AtomID const &id4) const
 Get the DOF_ID corresponding to the torsion angle defined by these four atoms. More...
 
id::DOF_ID dof_id_from_atom_ids (id::AtomID const &id1, id::AtomID const &id2, id::AtomID const &id3) const
 Get the DOF_ID corresponding to the bond angle defined by these three atoms. More...
 
id::DOF_ID dof_id_from_atom_ids (id::AtomID const &id1, id::AtomID const &id2) const
 Get the DOF_ID corresponding to the bond distance defined by these two atoms. More...
 
id::DOF_ID dof_id_from_atom_ids (utility::vector1< id::AtomID > const &ids) const
 Get the DOF_ID defined by these atoms. More...
 
DOF_ID dof_id_from_torsion_id (TorsionID const &id) const
 Get the DOF_ID corresponding to this TorsionID. More...
 
id::AtomID jump_atom_id (int jump_number) const
 
bool get_torsion_angle_atom_ids (TorsionID const &tor_id, AtomID &id1, AtomID &id2, AtomID &id3, AtomID &id4) const
 get four atoms which defined this torsion More...
 
bool get_jump_atom_ids (core::Size jump_number, AtomID &upstream_id, AtomID &downstream_id) const
 get two atoms connect by jump More...
 
bool atoms_are_bonded (AtomID const &id1, AtomID const &id2) const
 Helper method to determine whether two atoms have a chemical bond linking them. More...
 
void update_domain_map (DomainMap &domain_map) const
 Generate a domain_map from the current dof/xyz moved data. More...
 
bool structure_moved () const
 has the structure moved since the last call to reset_move_data or reset_structure_moved More...
 
void reset_structure_moved () const
 reset the structure_moved_ bool More...
 
virtual void reset_move_data ()
 forget all the structure modifications More...
 
void align_virtual_atoms_in_carbohydrate_residue (uint const sequence_position)
 Set coordinates of virtual atoms (used as angle reference points) within a saccharide residue of this conformation. More...
 
virtual void push_passport (core::environment::DofPassportCOP)
 
virtual
core::environment::DofPassportCOP 
pop_passport ()
 
virtual bool has_passport () const
 
virtual bool is_protected () const
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_connection_obs (MemFn fn, Ptr ptr) const
 attach ConnectionEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_connection_obs (MemFn fn, Ptr ptr) const
 detach ConnectionEvent observer function More...
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_general_obs (MemFn fn, Ptr ptr) const
 attach GeneralEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_general_obs (MemFn fn, Ptr ptr) const
 detach GeneralEvent observer function More...
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_identity_obs (MemFn fn, Ptr ptr) const
 attach IdentityEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_identity_obs (MemFn fn, Ptr ptr) const
 detach IdentityEvent observer function More...
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_length_obs (MemFn fn, Ptr ptr) const
 attach LengthEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_length_obs (MemFn fn, Ptr ptr) const
 detach LengthEvent observer function More...
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_xyz_obs (MemFn fn, Ptr ptr) const
 attach XYZEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_xyz_obs (MemFn fn, Ptr ptr) const
 detach XYZEvent observer function More...
 
void clear_observers ()
 clear all observers More...
 
void receive_observers_from (Conformation const &src)
 fire a ConnectionEvent::TRANSFER to transfer observers from some source Conformation More...
 
void debug_pause (bool flag) const
 wait for stdin after sending a GeneralEvent signal More...
 
bool debug_pause () const
 waiting for stdin after sending a GeneralEvent signal? More...
 
void buffer_signals ()
 block signals from being sent and buffer them to be sent after unblocking More...
 
void block_signals ()
 block signals from being sent More...
 
void unblock_signals ()
 allow signals to be sent More...
 
bool buffering_signals () const
 are signals being blocked and buffered? More...
 
bool blocking_signals () const
 are signals being blocked? More...
 

Protected Member Functions

Residue const & const_residue_ (Size seqpos) const
 Returns a constant residue reference without triggering coordinate/torsion update. More...
 
void force_update_residue_torsions () const
 Force updating of residue torsions. More...
 
void force_update_residue_coordinates () const
 Force updating of residue coordinates. More...
 

Private Member Functions

Residueresidue_ (Size seqpos)
 Returns a non-constant residue reference without triggering coordinate/torsion update. More...
 
void update_sequence_numbering (Size new_size, utility::vector1< Size > const &old2new)
 remap *_moved arrays, sequence numbering in the residues_ arrays, etc, after insertion or deletion of rsds More...
 
void rebuild_polymer_bond_dependent_atoms (Size const seqpos, int const upper_lower)
 rebuild atoms in residue seqpos dependent on either the lower (-1) or upper(1) polymer residue More...
 
void insert_polymer_residue (Residue const &new_rsd_in, Size const seqpos, bool const join_lower, bool const join_upper)
 
void append_residue (Residue const &new_rsd_in, bool const attach_by_jump, std::string const &root_atom, id::NamedAtomID anchor_id, bool const start_new_chain)
 Now a private method public interface: append_residue_by_bond or append_residue_by_jump. More...
 
void residues_replace (Size seqpos, Residue const &new_rsd)
 wrap direct access to the Residues container More...
 
void residues_insert (Size seqpos, Residue const &new_rsd, bool use_lower_chain=false, bool new_chain=false)
 
void residues_append (Residue const &new_rsd, bool start_new_chain, bool by_jump=false, std::string const &root_atom="", id::NamedAtomID anchor_id=id::NamedAtomID::BOGUS_NAMED_ATOM_ID())
 
void residues_delete (Size seqpos)
 
void setup_atom_tree ()
 (re-)builds the AtomTree using the FoldTree and the Residues More...
 
Real atom_tree_torsion (TorsionID const &tor_id) const
 access a torsion from the atom_tree More...
 
bool backbone_torsion_angle_atoms (TorsionID const &id, AtomID &id1, AtomID &id2, AtomID &id3, AtomID &id4) const
 get four backbone atoms which define this backbone torsion More...
 
bool backbone_torsion_angle_atoms_oligourea (TorsionID const &id, AtomID &id1, AtomID &id2, AtomID &id3, AtomID &id4) const
 Get four backbone atoms which define this backbone torsion, if this residue is an oligourea. More...
 
bool backbone_torsion_angle_atoms_aramid (TorsionID const &id, AtomID &id1, AtomID &id2, AtomID &id3, AtomID &id4) const
 Get four backbone atoms which define this backbone torsion, if this residue is an aramid. More...
 
bool branch_connection_torsion_angle_atoms (TorsionID const &torsion, AtomID &id1, AtomID &id2, AtomID &id3, AtomID &id4) const
 Find the four atoms that define the torsion angle of this branch connection. More...
 
void set_xyz_moved (AtomID const &id)
 notify of xyz-change More...
 
void set_xyz_moved (utility::vector1< AtomID > const &ids)
 notify of mutiple-xyz-change More...
 
void set_dof_moved (AtomID const &id)
 notify of dof-change More...
 
void set_dof_moved (DOF_ID const &id)
 notify of dof-change More...
 
void update_residue_coordinates () const
 Will (if necessary) copy the xyz coordinates from the AtomTree to the Residues being managed. More...
 
void update_residue_coordinates (Size seqpos, bool fire_signal=true) const
 
void rederive_chain_endings ()
 
void rederive_chain_ids ()
 
void update_residue_torsions () const
 Will (if necessary) copy the torsion angles (mainchain/chi) from the AtomTree to the Residues being managed. More...
 
void update_residue_torsions (Size seqpos, bool fire_signal=true) const
 
void add_pseudobond (Size lr, Size lr_connid, Size ur, Size ur_connid, Size nbonds)
 
void in_place_copy (Conformation const &src)
 Optimizing the common case of assigning a conformation to another with the same sequence. More...
 
void pre_nresidue_change ()
 The Conformation must transfer lazily accumulated "moved" data from the AtomTree before changing the number of residues. More...
 
void notify_connection_obs (ConnectionEvent const &e) const
 notify ConnectionEvent observers More...
 
void notify_general_obs (GeneralEvent const &e) const
 notify GeneralEvent observers More...
 
void notify_identity_obs (IdentityEvent const &e, bool fire_general=true) const
 notify IdentityEvent observers More...
 
void notify_length_obs (LengthEvent const &e, bool fire_general=true) const
 notify LengthEvent observers More...
 
void notify_xyz_obs (XYZEvent const &e, bool fire_general=true) const
 notify XYZEvent observers More...
 

Private Attributes

ResidueOPs residues_
 container of Residues More...
 
core::chemical::CacheableResidueTypeSets residue_type_sets_
 Any Conformation-specific ResidueTypes are stored here. Note: The ResidueTypeSets contained herein can be shared by multiple Conformations, and should have copy-on-write semantics. More...
 
utility::vector1< Sizechain_endings_
 chain number for each position More...
 
FoldTreeOP fold_tree_
 fold tree for the kinematics More...
 
AtomTreeOP atom_tree_
 atom tree for the kinematics More...
 
membrane::MembraneInfoOP membrane_info_
 Membrane Info object. More...
 
carbohydrates::GlycanTreeSetObserverOP tree_set_observer_ = nullptr
 GlycanTreeSetObserver Object. More...
 
utility::vector1< ParametersSetOPparameters_set_
 Parameter sets for parametric conformation generation. More...
 
bool contains_carbohydrate_residues_
 
bool residue_coordinates_need_updating_
 do we need to update the coordinates in the Residues? More...
 
bool residue_torsions_need_updating_
 do we need to update the torsion angles in the Residues? More...
 
AtomID_Mask dof_moved_
 book-keeping array for energy evaluations More...
 
AtomID_Mask xyz_moved_
 book-keeping array for energy evaluations More...
 
bool structure_moved_
 has the structure moved since the last call to reset_move_data? More...
 
utility::vector1< char > secstruct_
 
utility::signals::BufferedSignalHub
< void, ConnectionEvent
connection_obs_hub_
 ConnectionEvent observers. More...
 
utility::signals::PausableSignalHub
< void, GeneralEvent
general_obs_hub_
 GeneralEvent observers. More...
 
utility::signals::BufferedSignalHub
< void, IdentityEvent
identity_obs_hub_
 IdentityEvent observers. More...
 
utility::signals::BufferedSignalHub
< void, LengthEvent
length_obs_hub_
 LengthEvent observers. More...
 
utility::signals::BufferedSignalHub
< void, XYZEvent
xyz_obs_hub_
 LengthEvent observers. More...
 

Friends

class ::ConformationTests
 

Detailed Description

A container of Residues and the kinematics to manage them.

Member Typedef Documentation

typedef boost::indirect_iterator< ResidueOPs::const_iterator, Residue const > core::conformation::Conformation::const_iterator
typedef boost::indirect_iterator< ResidueOPs::iterator, Residue const > core::conformation::Conformation::iterator

Constructor & Destructor Documentation

core::conformation::Conformation::Conformation ( )

constructor

Note
If you are using PyRosetta, you should NOT BE HERE!

References atom_tree_.

Referenced by clone().

core::conformation::Conformation::~Conformation ( )
override

default destructor

core::conformation::Conformation::Conformation ( Conformation const &  src)

Member Function Documentation

chemical::AA const& core::conformation::Conformation::aa ( Size  seqpos) const
inline
virtual void core::conformation::Conformation::add_parameters_set ( ParametersSetOP  newset)
inlinevirtual

Add a (predefined) ParametersSet object (via its owning pointer) to the current Conformation object.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References parameters_set_.

Referenced by protocols::helical_bundle::MakeBundleHelix::add_parameter_info_to_pose(), protocols::helical_bundle::MakeBundle::apply(), and insert_conformation_by_jump().

void core::conformation::Conformation::add_pseudobond ( Size  lr,
Size  lr_connid,
Size  ur,
Size  ur_connid,
Size  nbonds 
)
private
void core::conformation::Conformation::align_virtual_atoms_in_carbohydrate_residue ( uint const  sequence_position)

Set coordinates of virtual atoms (used as angle reference points) within a saccharide residue of this conformation.

This method aligns virtual atom VOX, where X is the position of the cyclic oxygen, OY and HOY, where Y is the position of the anomeric carbon, (provided the residue is not the reducing end, where OY and HOY would be real atoms), and HOZ, where Z is the mainchain glycosidic bond location. OY and HOY are aligned with the last two "main chain" atoms of the parent residue. This ensures that torsion angles with duplicate names, e.g., chi1 and phi for internal linked aldoses, will always return the same values. The same concept applies for HOZ, which aligns with the anomeric carbon of the downstream residue. This method should be called after any coordinate change for a sac- charide residue and after loading a saccharide residue from a file or sequence for the first time.

Note
Do I need to worry about aligning the virtual atoms left over from modified sugar patches? Can such virtual atoms be deleted?
Author
Labonte JWLab.nosp@m.onte.nosp@m.@jhu..nosp@m.edu

References core::conformation::Residue::atom_index(), core::conformation::Residue::atom_name(), core::conformation::Residue::carbohydrate_info(), core::conformation::Residue::connect_atom(), core::conformation::carbohydrates::find_seqpos_of_saccharides_parent_residue(), core::conformation::Residue::first_adjacent_heavy_atom(), core::conformation::Residue::is_lower_terminus(), core::conformation::Residue::is_upper_terminus(), core::chemical::ResidueType::residue_connection_id_for_atom(), core::conformation::Residue::residue_connection_partner(), residues_, set_xyz(), core::conformation::TR(), core::conformation::Residue::type(), and xyz().

Referenced by set_bond_angle(), set_bond_length(), and set_torsion_angle().

std::string core::conformation::Conformation::annotated_sequence ( bool  show_all_variants) const

Returns the variant-tagged string representing the residue types that make up a conformation; e.g. M[MET:N-Terminus-Variant]CDH[HIS_D]LLR[ARG:C-Terminus-Variant].

References core::conformation::Residue::annotated_name(), residue(), and size().

Referenced by fold_tree().

void core::conformation::Conformation::append_polymer_residue_after_seqpos ( Residue const &  new_rsd,
Size const  seqpos,
bool const  build_ideal_geometry 
)
virtual
void core::conformation::Conformation::append_residue ( conformation::Residue const &  new_rsd_in,
bool const  attach_by_jump,
std::string const &  root_atom,
id::NamedAtomID  anchor_id,
bool const  start_new_chain 
)
private
void core::conformation::Conformation::append_residue_by_bond ( conformation::Residue const &  new_rsd,
bool const  build_ideal_geometry = false,
int  residue_connection_index = 0,
Size  anchor_pos = 0,
int  anchor_residue_connection_index = 0,
bool const  start_new_chain = false,
bool const  lookup_bond_length = false 
)

Append a new residue by a bond.

The default behavior is to append by a polymeric connection to the preceding residue If we want to connect via a non-polymer connection, we give the connection number, anchor residue and the connection number for the anchor residue. These connection numbers are wrt the connections_ arrays in Residue and ResidueType If build_ideal_bond is TRUE it will transform the coordinates of the new residue so that the bond geometry of the new bond is ideal according to the icoor_internal data in the residues. Otherwise the incoming coordinates of new_rsd are preserved. Fires a LengthEvent::RESIDUE_APPEND signal.

References append_residue(), core::conformation::atom_id_to_named_atom_id(), core::conformation::Residue::atom_name(), core::id::AtomID::atomno(), core::chemical::ResidueConnection::atomno(), core::id::NamedAtomID::BOGUS_NAMED_ATOM_ID(), core::conformation::Residue::clone(), core::conformation::Residue::is_polymer(), core::conformation::Residue::lower_connect(), core::conformation::Residue::lower_connect_atom(), core::chemical::ResidueType::lower_connect_id(), core::chemical::ResidueType::name(), core::conformation::orient_residue_for_ideal_bond(), pre_nresidue_change(), rebuild_polymer_bond_dependent_atoms(), residue_(), core::conformation::Residue::residue_connection(), residue_coordinates_need_updating_, residues_, size(), core::conformation::Residue::type(), update_residue_coordinates(), core::conformation::Residue::upper_connect(), core::conformation::Residue::upper_connect_atom(), and core::chemical::ResidueType::upper_connect_id().

Referenced by protocols::comparative_modeling::ExtraThreadingMover::apply(), protocols::loops::loop_closure::kinematic_closure::KinematicMover::apply(), and core::conformation::is_ideal_position().

void core::conformation::Conformation::append_residue_by_jump ( conformation::Residue const &  new_rsd,
Size const  anchor_pos,
std::string const &  anchor_atom = "",
std::string const &  root_atom = "",
bool const  start_new_chain = false 
)
virtual
void core::conformation::Conformation::apply_transform_Rx_plus_v ( numeric::xyzMatrix< Real > const &  R,
Vector const &  v 
)
virtual
bool core::conformation::Conformation::atom_is_backbone_norefold ( Size  pos,
Size  atomno 
) const

returns true if atom is part of backbone.

There is a version of this in Residue.hh. The problem with that function is that accessing a residue in the pose triggers a refold which is really slow. We do not need a correctly folded residue to makethis check

References residues_.

Referenced by core::conformation::symmetry::guess_torsion_type_of_dof_id().

AtomTree const& core::conformation::Conformation::atom_tree ( ) const
inline
Real core::conformation::Conformation::atom_tree_torsion ( TorsionID const &  tor_id) const
private

access a torsion from the atom_tree

used when we want to copy torsions from the atomtree to the residues used when updating the torsion angles stashed in the Residues other torsion access calls look inside the residues since this will be faster than getting from the atomtree, at least in the current implementation of this routine

References atom_tree_, core::id::AtomID::atomno(), atoms_are_bonded(), const_residue_(), dof_id_from_torsion_id(), get_torsion_angle_atom_ids(), core::id::JUMP, core::id::AtomID::rsd(), core::id::TorsionID::type(), and xyz().

Referenced by debug_residue_torsions(), and update_residue_torsions().

bool core::conformation::Conformation::atoms_are_bonded ( AtomID const &  id1,
AtomID const &  id2 
) const

Helper method to determine whether two atoms have a chemical bond linking them.

Helper function to determine whether two atoms have a chemical bond linking them.

Intended for internal use, but there's really no reason not to make this a public method. This works for atoms within the same residue or in different residues. AMW went and made this a public method.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References core::id::AtomID::atomno(), const_residue_(), and core::id::AtomID::rsd().

Referenced by atom_tree_torsion(), core::import_pose::build_pose_as_is2(), and torsion_angle().

template<typename MemFn , typename Ptr >
utility::signals::Link core::conformation::Conformation::attach_connection_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

attach ConnectionEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( ConnectionEvent const & )
ptrRAW pointer to observer object
Returns
Link that can be used to manage the connection
Remarks
ConnectionEvent observers will only be notified upon a change in the state of the connection with the Conformation, e.g. if the Conformation is destroyed or if the connection is being transferred. SUGGESTION: Try to use the Link objects that are returned when attaching observers instead of attaching via this function and watching for ConnectionEvents, as it typically makes connection management easier.

References connection_obs_hub_.

Referenced by core::pose::PDBInfo::attach_to().

template<typename MemFn , typename Ptr >
utility::signals::Link core::conformation::Conformation::attach_general_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

attach GeneralEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( GeneralEvent const & )
ptrRAW pointer to observer object
Returns
Link that can be used to manage the connection
Remarks
GeneralEvent observers will be notified whenever any signal derived from GeneralEvent occurs.

References general_obs_hub_.

template<typename MemFn , typename Ptr >
utility::signals::Link core::conformation::Conformation::attach_identity_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

attach IdentityEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( IdentityEvent const & )
ptrRAW pointer to observer object
Returns
Link that can be used to manage the connection

References identity_obs_hub_.

Referenced by core::pose::PDBInfo::attach_to().

template<typename MemFn , typename Ptr >
utility::signals::Link core::conformation::Conformation::attach_length_obs ( MemFn  fn,
Ptr  ptr 
) const
inline
template<typename MemFn , typename Ptr >
utility::signals::Link core::conformation::Conformation::attach_xyz_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

attach XYZEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( XYZEvent const & )
ptrRAW pointer to observer object
Returns
Link that can be used to manage the connection

References xyz_obs_hub_.

bool core::conformation::Conformation::backbone_torsion_angle_atoms ( TorsionID const &  id,
AtomID id1,
AtomID id2,
AtomID id3,
AtomID id4 
) const
private

get four backbone atoms which define this backbone torsion

Note
Returns TRUE to signal FAILURE

messy... could perhaps keep this cached if speed is an issue but then have to keep sync'ed with changes in the residues

I don't think this is going to be performance critical

consider that in current rosetta we routinely re-evaluate all the backbone and sidechain torsion angles from the xyz coordinates...

This was hacky to begin with, but I feel that I have made it more hacky now. I am currently working on a more elegent method to handle residue types that have a a non-standard number of backbone torsions (ie. beta-peptides, beta-peptoids, and the dipeptides ACE-X-NME I use for making rotamers) –Doug

Dear 2010 Doug, Sorry, I have completely forgoton what we were talking about in your comment. Very Fermat of you. I have a few vauge ideas about what this miraculous solution could possibly be but we probably had more brain cells then so who knows. Basically defining the atoms that comprise the backbone torsions in the params files themselves and storing that in the ResidueType, like is currently done for the chi angles. I guess it is just the cacheing idea in the comments before mine. That way, patches could modify which atoms make up backbone torsions and we would not need special if checks to look at varient types if we want to have 4 backbone torsions. Until then however I am just going to make this function more hacky, sorry. Love, 2012 Doug

Dear all Dougs, I am making this somewhat more elegant, maybe, at least for the ACE-X-NME case, because unless torsion is 1, ntorsions, or ntorsions-1 all the atoms are part of the mainchain Best, Andy

Dear Dougs & Andy, Thank you for a most enjoyable dialog. Sincerely, Labonte

Note
returns TRUE for FAILURE

References core::chemical::ACETYLATED_NTERMINUS_VARIANT, core::conformation::Residue::atom_index(), core::id::AtomID::atomno(), backbone_torsion_angle_atoms_aramid(), backbone_torsion_angle_atoms_oligourea(), core::chemical::C_METHYLAMIDATION, core::conformation::Residue::connection_incomplete(), const_residue_(), core::chemical::CUTPOINT_LOWER, core::chemical::CUTPOINT_UPPER, core::chemical::FIVE_PRIME_PHOSPHATE, fold_tree_, core::conformation::Residue::has_lower_connect(), core::conformation::Residue::has_upper_connect(), core::conformation::Residue::has_variant_type(), core::conformation::Residue::icoor(), core::chemical::ResidueType::is_aramid(), core::conformation::Residue::is_carbohydrate(), core::chemical::ResidueType::is_oligourea(), core::conformation::Residue::is_RNA(), core::chemical::ResidueType::lower_connect_id(), core::conformation::Residue::mainchain_atom(), core::conformation::Residue::mainchain_atoms(), core::conformation::Residue::mainchain_torsions(), core::chemical::METHYLATED_CTERMINUS_VARIANT, core::chemical::N_ACETYLATION, core::conformation::Residue::residue_connection_conn_id(), core::conformation::Residue::residue_connection_partner(), residues_, core::id::AtomID::rsd(), core::chemical::THREE_PRIME_PHOSPHATE, torsion(), core::conformation::Residue::type(), and core::chemical::ResidueType::upper_connect_id().

Referenced by get_torsion_angle_atom_ids().

bool core::conformation::Conformation::backbone_torsion_angle_atoms_aramid ( TorsionID const &  id,
AtomID id1,
AtomID id2,
AtomID id3,
AtomID id4 
) const
private
bool core::conformation::Conformation::backbone_torsion_angle_atoms_oligourea ( TorsionID const &  id,
AtomID id1,
AtomID id2,
AtomID id3,
AtomID id4 
) const
private
void core::conformation::Conformation::batch_get_xyz ( utility::vector1< AtomID > const &  id,
utility::vector1< PointPosition > &  position 
) const
virtual

References xyz().

void core::conformation::Conformation::batch_set_xyz ( utility::vector1< AtomID > const &  id,
utility::vector1< PointPosition > const &  position 
)
virtual
iterator core::conformation::Conformation::begin ( )
inlinenoexcept
const_iterator core::conformation::Conformation::begin ( ) const
inlinenoexcept

References residues_.

void core::conformation::Conformation::block_signals ( )

block signals from being sent

Warning
for safety, ConnectionEvents are never blocked

References general_obs_hub_, identity_obs_hub_, length_obs_hub_, and xyz_obs_hub_.

bool core::conformation::Conformation::blocking_signals ( ) const

are signals being blocked?

References general_obs_hub_.

Real core::conformation::Conformation::bond_angle ( AtomID const &  atom1,
AtomID const &  atom2,
AtomID const &  atom3 
) const
Real core::conformation::Conformation::bond_length ( AtomID const &  atom1,
AtomID const &  atom2 
) const
core::Vector core::conformation::Conformation::bond_orientation ( AtomID const &  atom1,
AtomID const &  atom2 
) const

Return the normalized vector of the bond between these two atoms.

This function assumes a bond and will return an orientation even if the atoms are not technically bonded.

References xyz().

Referenced by bond_orientation(), and core::conformation::find_bond_torsion_with_nearest_orientation().

core::Vector core::conformation::Conformation::bond_orientation ( core::id::TorsionID const  torsion) const

Return the normalized vector of the bond about which this torsion angle twists.

This function will only work properly if all the reference atoms for <torsion> are defined. If they are not defined, the function will return a zero vector.

References bond_orientation(), and get_torsion_angle_atom_ids().

utility::vector1< id::AtomID > core::conformation::Conformation::bonded_neighbor_all_res ( core::id::AtomID  atomid,
bool  virt = false,
bool  skip_canonical_and_solvent = false 
) const
bool core::conformation::Conformation::branch_connection_torsion_angle_atoms ( TorsionID const &  torsion,
AtomID id1,
AtomID id2,
AtomID id3,
AtomID id4 
) const
private

Find the four atoms that define the torsion angle of this branch connection.

This method figures out which four atoms define the torsion angle about the given branch connection point and sets the four AtomIDs passed to it.

Parameters
<torsion>the TorsionID for this branch connection, which must have the BRANCH TorsionType
<id1>through <id2>: AtomID variables that will be filled with the found atoms
Returns
TRUE to signal FAILURE. (That wasn't my idea! ~Labonte)
Note
This method was written to model the behavior of the backbone_torsion_angle_atoms() method and is used like it within the more general get_torsion_angle_atom_ids() method.
Author
Labonte JWLab.nosp@m.onte.nosp@m.@jhu..nosp@m.edu

References core::id::BRANCH, core::conformation::Residue::connect_atom(), const_residue_(), core::conformation::Residue::first_adjacent_heavy_atom(), core::conformation::Residue::is_branch_point(), core::conformation::Residue::n_non_polymeric_residue_connections(), core::conformation::Residue::n_polymeric_residue_connections(), core::conformation::Residue::residue_connection_partner(), residues_, core::id::TorsionID::rsd(), core::id::TorsionID::torsion(), core::conformation::TR(), and core::id::TorsionID::type().

Referenced by get_torsion_angle_atom_ids().

void core::conformation::Conformation::buffer_signals ( )

block signals from being sent and buffer them to be sent after unblocking

References general_obs_hub_, identity_obs_hub_, length_obs_hub_, and xyz_obs_hub_.

Referenced by protocols::denovo_design::add_residues_to_pose().

bool core::conformation::Conformation::buffering_signals ( ) const

are signals being blocked and buffered?

References general_obs_hub_.

Size core::conformation::Conformation::chain_begin ( Size  chain) const
inline

Returns the position number of the first residue in chain number <chain>

See the documentation of Pose::num_chains() for details about chain numbers, chain letters and jumps.

References chain_endings_, and num_chains().

Referenced by protocols::splice::SpliceManager::add_sequence_constraints(), protocols::splice::Splice::add_sequence_constraints(), protocols::anchored_design::AnchorMoversData::anchor_noise_constraints_setup(), protocols::simple_moves::ReportXYZ::apply(), protocols::simple_moves::AddJobPairData::apply(), protocols::simple_moves::AlignChainMover::apply(), protocols::protein_interface_design::movers::AddSidechainConstraintsToHotspots::apply(), protocols::seeded_abinitio::DefineMovableLoops::apply(), protocols::seeded_abinitio::SwapSegment::apply(), protocols::seeded_abinitio::CAcstGenerator::apply(), protocols::simple_moves::SwitchChainOrderMover::apply(), protocols::protein_interface_design::movers::TopologyBrokerMover::apply(), protocols::protein_interface_design::movers::SetAtomTree::apply(), protocols::ligand_docking::WriteLigandMolFile::apply(), protocols::seeded_abinitio::CloseFold::apply(), protocols::ligand_docking::RandomConformers::apply(), protocols::ligand_docking::AddHydrogens::apply(), protocols::ligand_docking::LigandDesign::apply(), protocols::seeded_abinitio::SegmentHybridizer::apply(), protocols::ligand_docking::GrowLigand::apply(), protocols::ligand_docking::MinimizeLigand::apply(), protocols::ligand_docking::TetherLigand::apply(), protocols::ligand_docking::HBondDonorFilter::apply(), protocols::simple_moves::FavorSequenceProfile::apply(), protocols::simple_moves::CyclizationMover::apply(), protocols::metal_interface::ZincHeterodimerMover::apply(), protocols::simple_moves::DeleteChainsMover::apply(), protocols::task_operations::SelectResiduesWithinChainOperation::apply(), protocols::task_operations::RestrictChainToRepackingOperation::apply(), protocols::ligand_docking::CompleteConnectionsFilter::apply(), protocols::protein_interface_design::movers::BackrubDDMover::apply(), protocols::task_operations::RestrictToAlignedSegmentsOperation::apply(), protocols::protein_interface_design::movers::PlacementAuctionMover::apply(), protocols::task_operations::PreventChainFromRepackingOperation::apply(), protocols::ligand_docking::AtomCountFilter::apply(), protocols::ligand_docking::HBondAcceptorFilter::apply(), protocols::ligand_docking::HeavyAtomFilter::apply(), protocols::ligand_docking::MolarMassFilter::apply(), protocols::ligand_docking::MolecularMassFilter::apply(), protocols::matdes::SymDofMover::apply(), protocols::simple_moves::DisulfideInsertionMover::apply(), protocols::task_operations::RestrictToTerminiOperation::apply(), protocols::simple_moves::SetTorsion::apply(), protocols::task_operations::JointSequenceOperation::apply(), protocols::task_operations::SeqprofConsensusOperation::apply(), protocols::ligand_docking::Translate::apply(), protocols::ligand_docking::Transform::apply(), protocols::ligand_docking::TransformEnsemble::apply(), protocols::ncbb::NcbbDockDesignProtocol::apply(), protocols::ncbb::oop::OopDockDesignProtocol::apply(), protocols::ncbb::oop::OopCreatorMover::apply(), protocols::ligand_docking::ProtLigEnsemble::apply(), protocols::protein_interface_design::movers::PlaceStubMover::apply(), protocols::fldsgn::CircularPermutation::apply(), protocols::denovo_design::components::calc_paired_residues(), protocols::anchored_design::AnchoredDesignMover::calculate_rmsd(), protocols::simple_moves::CutChainMover::chain_cut(), protocols::splice::SpliceManager::chainbreak_check(), protocols::splice::Splice::chainbreak_check(), protocols::simple_filters::ResidueBurialFilter::compute(), protocols::simple_filters::AngleToVector::compute(), protocols::simple_filters::TerminusDistanceFilter::compute(), protocols::simple_filters::ChainBreak::compute(), protocols::protein_interface_design::filters::AverageDegreeFilter::compute(), protocols::simple_filters::NeighborTypeFilter::compute(), protocols::protein_interface_design::filters::AtomicContactCountFilter::compute(), protocols::protein_interface_design::filters::HbondsToAtomFilter::compute(), protocols::ligand_docking::TransformEnsemble::convert_to_full_pose(), protocols::ligand_docking::Transform::convert_to_full_pose(), protocols::protein_interface_design::movers::SetAtomTree::create_atom_tree(), protocols::floppy_tail::create_extra_output(), protocols::simple_moves::CutChainMover::create_subpose(), protocols::seeded_abinitio::define_movemap_chains(), protocols::peptide_deriver::PeptideDeriverFilter::derive_peptide(), core::pack::hbonds::determine_atom_level_edge_info(), protocols::simple_moves::DisulfideInsertionMover::determine_cyclization_viability(), protocols::protein_interface_design::movers::PlaceStubMover::disallowed_host_pos(), protocols::ligand_docking::InterfaceBuilder::enforce_minimum_length(), core::pose::metrics::simple_calculators::InterfaceDefinitionCalculator::fill_in_chain_terminii(), protocols::ligand_docking::InterfaceBuilder::find_interface_residues(), protocols::protein_interface_design::find_lowest_constraint_energy_residue(), protocols::protein_interface_design::find_nearest_residue(), protocols::protein_interface_design::movers::find_nearest_residue_to_coord(), core::select::util::find_neighbors_within_CB_cutoff(), core::pack::hbonds::MCHBNetInteractionGraph::find_symmetric_hbonds(), protocols::forge::methods::fold_tree_from_loops(), protocols::forge::methods::fold_tree_from_pose(), protocols::pose_creation::MakeJunctionsMover::generate_start_pose(), protocols::protein_interface_design::movers::MapHotspot::GenerateMap(), core::conformation::symmetry::get_chain2range(), core::pose::get_chain_from_chain_id(), core::pose::get_chain_residues(), protocols::antibody::AntibodyInfo::get_FoldTree_LH_A(), protocols::hotspot_hashing::HotspotStub::get_nearest_residue(), core::scoring::methods::NMerSVMEnergy::get_residue_energy_by_svm(), core::pose::get_resnums_for_chain_id(), protocols::floppy_tail::FloppyTailMover::init_on_new_input(), protocols::ligand_docking::ComputeLigandRDF::ligand_protein_rdf(), protocols::loops::loopfinder(), protocols::protein_interface_design::movers::HotspotDisjointedFoldTreeMover::make_disjointed_foldtree(), protocols::protein_interface_design::make_hotspot_foldtree(), protocols::denovo_design::components::make_lengths_str(), protocols::protein_interface_design::movers::PlaceSimultaneouslyMover::minimize_all(), protocols::protein_interface_design::MinimizeInterface(), protocols::protein_interface_design::movers::MapHotspot::output_pose(), protocols::chemically_conjugated_docking::pack_extra_bodies(), protocols::protein_interface_design::movers::TopologyBrokerMover::parse_my_tag(), protocols::protein_interface_design::movers::PlaceOnLoop::parse_my_tag(), protocols::calc_taskop_movers::DesignRepackMover::parse_my_tag(), protocols::ligand_docking::Rotate::parse_my_tag(), protocols::contact_map::ContactMap::parse_region_string(), protocols::protein_interface_design::movers::PlaceStubMover::place_stub(), protocols::protein_interface_design::movers::PlaceSimultaneouslyMover::place_stubs(), protocols::denovo_design::components::pose_matches_description(), protocols::hotspot_hashing::HotspotStubSet::prepare_hashing_packer_task_(), protocols::peptide_deriver::PeptideDeriverFilter::prepare_pose(), protocols::ligand_docking::ProtLigEnsemble::prepare_single_ligand_pose(), protocols::ligand_docking::ComputeLigandRDF::protein_protein_rdf(), protocols::denovo_design::components::prune_unpaired_residues(), protocols::peptide_deriver::PeptideDeriverFilter::push_chain_residue_indices(), protocols::splice::AlignEndsMover::reference_positions(), protocols::protein_interface_design::movers::PlacementMinimizationMover::refresh_bbstub_constraints(), protocols::analysis::InterfaceAnalyzerMover::reorder_foldtree_find_jump(), protocols::forge::remodel::RemodelLoopMover::repeat_generation_with_additional_residue(), protocols::forge::remodel::RemodelLoopMover::repeat_propagation(), protocols::features::ScreeningFeatures::report_features(), core::scoring::membrane::MPNonHelixPenalty::residue_energy(), core::scoring::methods::NMerPSSMEnergy::residue_energy(), protocols::simple_filters::NonSequentialNeighborsFilter::residue_neighbors(), core::pose::ResidueIndexDescriptionChainEnd::resolve_index(), protocols::ligand_docking::Rotate::rotate_ligand(), core::select::residue_selector::ChainSelector::select_chain_by_index(), protocols::ligand_docking::MoveMapBuilder::set_all_chi(), protocols::splice::SpliceOutAntibody::set_fold_tree_nodes(), protocols::splice::SpliceInAntibody::set_fold_tree_nodes(), protocols::seeded_abinitio::SeedSetupMover::set_packerTasks_target_and_seeds(), protocols::hbnet::HBNet::set_symmetry(), protocols::qsar::scoring_grid::ChargeGrid::setup_charge_atoms(), core::scoring::constraints::SiteConstraint::setup_csts(), core::scoring::constraints::FabConstraint::setup_csts(), core::scoring::methods::Abego::setup_for_scoring(), protocols::antibody::AntibodyInfo::setup_FrameWorkInfo(), protocols::simple_moves::CyclizationMover::setup_minimizer(), protocols::ncbb::setup_pert_foldtree(), protocols::relax::membrane::MPFastRelaxMover::setup_relax_foldtree(), core::conformation::symmetry::setup_symmetric_conformation(), protocols::fldsgn::CircularPermutation::split_chains(), protocols::protein_interface_design::star_fold_tree(), protocols::protein_interface_design::movers::PlaceStubMover::StubMinimize(), protocols::seeded_abinitio::SwapSegment::swap_chain(), protocols::protein_interface_design::PatchdockReader::transform_pose(), and protocols::fldsgn::CircularPermutation::which_chain().

Size core::conformation::Conformation::chain_end ( Size  chain) const
inline

Returns the position number of the last residue in chain number <chain>

See the documentation of Pose::num_chains() for details about chain numbers, chain letters and jumps.

References chain_endings_, and size().

Referenced by protocols::splice::SpliceManager::add_sequence_constraints(), protocols::splice::Splice::add_sequence_constraints(), protocols::chemically_conjugated_docking::UBQ_GTPaseMover::analyze_and_filter(), protocols::anchored_design::AnchorMoversData::anchor_noise_constraints_setup(), protocols::simple_moves::ReportXYZ::apply(), protocols::simple_moves::AlignChainMover::apply(), protocols::protein_interface_design::movers::AddSidechainConstraintsToHotspots::apply(), protocols::seeded_abinitio::DefineMovableLoops::apply(), protocols::seeded_abinitio::CAcstGenerator::apply(), protocols::simple_moves::SwitchChainOrderMover::apply(), protocols::protein_interface_design::movers::SetAtomTree::apply(), protocols::protein_interface_design::movers::TopologyBrokerMover::apply(), protocols::seeded_abinitio::CloseFold::apply(), protocols::ligand_docking::LigandDesign::apply(), protocols::ligand_docking::RandomConformers::apply(), protocols::ligand_docking::AddHydrogens::apply(), protocols::ligand_docking::GrowLigand::apply(), protocols::ligand_docking::MinimizeLigand::apply(), protocols::ligand_docking::HBondDonorFilter::apply(), protocols::metal_interface::ZincHeterodimerMover::apply(), protocols::simple_moves::CyclizationMover::apply(), protocols::simple_moves::DeleteChainsMover::apply(), protocols::task_operations::RestrictChainToRepackingOperation::apply(), protocols::ligand_docking::CompleteConnectionsFilter::apply(), protocols::protein_interface_design::movers::BackrubDDMover::apply(), protocols::task_operations::RestrictToAlignedSegmentsOperation::apply(), protocols::protein_interface_design::movers::PlacementAuctionMover::apply(), protocols::task_operations::PreventChainFromRepackingOperation::apply(), protocols::ligand_docking::MolecularMassFilter::apply(), protocols::ligand_docking::HBondAcceptorFilter::apply(), protocols::ligand_docking::HeavyAtomFilter::apply(), protocols::ligand_docking::MolarMassFilter::apply(), protocols::ligand_docking::AtomCountFilter::apply(), protocols::matdes::SymDofMover::apply(), protocols::task_operations::RestrictToTerminiOperation::apply(), protocols::simple_moves::DisulfideInsertionMover::apply(), protocols::simple_moves::SetTorsion::apply(), protocols::task_operations::JointSequenceOperation::apply(), protocols::task_operations::ProteinInterfaceDesignOperation::apply(), protocols::task_operations::SeqprofConsensusOperation::apply(), protocols::splice::Splice::apply(), protocols::ncbb::oop::OopCreatorMover::apply(), protocols::protein_interface_design::movers::PlaceStubMover::apply(), protocols::fldsgn::CircularPermutation::apply(), protocols::denovo_design::components::calc_paired_residues(), protocols::anchored_design::AnchoredDesignMover::calculate_rmsd(), protocols::simple_moves::CutChainMover::chain_cut(), core::pose::chain_end_res(), protocols::splice::SpliceManager::chainbreak_check(), protocols::splice::Splice::chainbreak_check(), protocols::splice::SampleRotamersFromPDB::combine_rot_dbs(), protocols::simple_filters::ResidueBurialFilter::compute(), protocols::simple_filters::ChainBreak::compute(), protocols::simple_filters::TerminusDistanceFilter::compute(), protocols::protein_interface_design::filters::AverageDegreeFilter::compute(), protocols::protein_interface_design::filters::AtomicContactCountFilter::compute(), protocols::ligand_docking::TransformEnsemble::convert_to_full_pose(), protocols::ligand_docking::Transform::convert_to_full_pose(), protocols::splice::Splice::copy_stretch(), protocols::protein_interface_design::movers::SetAtomTree::create_atom_tree(), protocols::ligand_docking::Rotate::create_random_rotations(), protocols::simple_moves::CutChainMover::create_subpose(), protocols::seeded_abinitio::define_movemap_chains(), protocols::peptide_deriver::PeptideDeriverFilter::derive_peptide(), core::pack::hbonds::determine_atom_level_edge_info(), protocols::protein_interface_design::movers::PlaceStubMover::disallowed_host_pos(), protocols::ligand_docking::InterfaceBuilder::enforce_minimum_length(), protocols::indexed_structure_store::extract_residue_entries(), core::pose::metrics::simple_calculators::InterfaceDefinitionCalculator::fill_in_chain_terminii(), protocols::ligand_docking::InterfaceBuilder::find_interface_residues(), protocols::protein_interface_design::find_lowest_constraint_energy_residue(), protocols::protein_interface_design::find_nearest_residue(), protocols::protein_interface_design::movers::find_nearest_residue_to_coord(), core::select::util::find_neighbors_within_CB_cutoff(), core::pack::hbonds::MCHBNetInteractionGraph::find_symmetric_hbonds(), protocols::forge::methods::fold_tree_from_loops(), protocols::forge::methods::fold_tree_from_pose(), protocols::simple_moves::CutChainMover::foldTree(), protocols::pose_creation::MakeJunctionsMover::generate_start_pose(), core::conformation::symmetry::get_chain2range(), core::pose::get_chain_residues(), protocols::antibody::AntibodyInfo::get_FoldTree_AllCDRs_LHDock(), protocols::antibody::AntibodyInfo::get_FoldTree_L_HA(), protocols::antibody::AntibodyInfo::get_FoldTree_LA_H(), protocols::antibody::AntibodyInfo::get_FoldTree_LH_A(), protocols::indexed_structure_store::FragmentLookup::get_fragment_residue_spans(), protocols::hotspot_hashing::HotspotStub::get_nearest_residue(), core::scoring::methods::NMerSVMEnergy::get_residue_energy_by_svm(), core::scoring::methods::NMerRefEnergy::get_residue_energy_by_table(), core::pose::get_resnums_for_chain_id(), protocols::floppy_tail::FloppyTailMover::init_on_new_input(), insert_conformation_by_jump(), protocols::ligand_docking::ComputeLigandRDF::ligand_protein_rdf(), protocols::loops::loopfinder(), protocols::protein_interface_design::movers::HotspotDisjointedFoldTreeMover::make_disjointed_foldtree(), protocols::protein_interface_design::make_hotspot_foldtree(), protocols::denovo_design::components::make_lengths_str(), protocols::splice::min_seg(), protocols::protein_interface_design::movers::PlaceSimultaneouslyMover::minimize_all(), protocols::protein_interface_design::MinimizeInterface(), protocols::splice::nearest_to_entry_stop_on_pose(), core::conformation::Residue::orient_onto_residue_peptoid(), protocols::chemically_conjugated_docking::pack_extra_bodies(), protocols::protein_interface_design::movers::TopologyBrokerMover::parse_my_tag(), protocols::protein_interface_design::movers::PlaceOnLoop::parse_my_tag(), protocols::calc_taskop_movers::DesignRepackMover::parse_my_tag(), protocols::ligand_docking::Rotate::parse_my_tag(), protocols::contact_map::ContactMap::parse_region_string(), protocols::protein_interface_design::movers::PlaceStubMover::place_stub(), protocols::protein_interface_design::movers::PlaceSimultaneouslyMover::place_stubs(), protocols::denovo_design::components::pose_matches_description(), protocols::hotspot_hashing::HotspotStubSet::prepare_hashing_packer_task_(), protocols::peptide_deriver::PeptideDeriverFilter::prepare_pose(), protocols::ligand_docking::ComputeLigandRDF::protein_protein_rdf(), protocols::denovo_design::components::prune_unpaired_residues(), protocols::peptide_deriver::PeptideDeriverFilter::push_chain_residue_indices(), protocols::splice::AlignEndsMover::reference_positions(), protocols::protein_interface_design::movers::PlacementMinimizationMover::refresh_bbstub_constraints(), protocols::splice::SpliceOut::remove_hairpin(), protocols::splice::Splice::remove_hairpin(), protocols::analysis::InterfaceAnalyzerMover::reorder_foldtree_find_jump(), protocols::forge::remodel::RemodelLoopMover::repeat_generation_with_additional_residue(), protocols::forge::remodel::RemodelLoopMover::repeat_propagation(), protocols::features::ScreeningFeatures::report_features(), core::scoring::methods::NMerPSSMEnergy::residue_energy(), protocols::simple_filters::NonSequentialNeighborsFilter::residue_neighbors(), core::pose::ResidueIndexDescriptionChainEnd::resolve_index(), core::select::residue_selector::ChainSelector::select_chain_by_index(), protocols::ligand_docking::MoveMapBuilder::set_all_chi(), protocols::anchored_design::AnchoredDesignMover::set_fold_tree_and_cutpoints(), protocols::splice::RBOutMover::set_fold_tree_nodes(), protocols::splice::SpliceOutAntibody::set_fold_tree_nodes(), protocols::splice::RBInMover::set_fold_tree_nodes(), protocols::splice::SpliceInAntibody::set_fold_tree_nodes(), protocols::hbnet::HBNet::set_symmetry(), protocols::qsar::scoring_grid::ChargeGrid::setup_charge_atoms(), core::scoring::constraints::SiteConstraint::setup_csts(), core::scoring::constraints::FabConstraint::setup_csts(), protocols::docking::setup_foldtree(), core::scoring::methods::Abego::setup_for_scoring(), protocols::antibody::AntibodyInfo::setup_FrameWorkInfo(), protocols::simple_moves::CyclizationMover::setup_minimizer(), protocols::ncbb::setup_pert_foldtree(), protocols::relax::membrane::MPFastRelaxMover::setup_relax_foldtree(), core::conformation::symmetry::setup_symmetric_conformation(), protocols::fldsgn::CircularPermutation::split_chains(), protocols::protein_interface_design::star_fold_tree(), protocols::protein_interface_design::movers::PlaceStubMover::StubMinimize(), protocols::seeded_abinitio::SwapSegment::swap_chain(), protocols::protein_interface_design::PatchdockReader::transform_pose(), and protocols::fldsgn::CircularPermutation::which_chain().

utility::vector1< Size > const & core::conformation::Conformation::chain_endings ( ) const

Returns the list of (chain number) chain endings.

See the documentation of Pose::num_chains() for details about chain numbers, chain letters and jumps.

References chain_endings_.

Referenced by protocols::protein_interface_design::movers::AddChainBreak::apply(), protocols::indexed_structure_store::apply_residue_entries_to_pose(), core::pose::chain_end_res(), protocols::denovo_design::components::StructureData::check_chains(), protocols::denovo_design::components::compute_chain_beginnings(), protocols::denovo_design::components::RemodelLoopMoverPoseFolder::create_remodel_loop_mover(), core::io::silent::BinarySilentStruct::fill_pose(), core::io::silent::ProteinSilentStruct_Template< T >::fill_pose(), core::io::silent::BinarySilentStruct::fill_struct(), core::io::silent::ProteinSilentStruct_Template< T >::fill_struct(), protocols::seeded_abinitio::DefineMovableLoops::find_loops(), protocols::seeded_abinitio::CloseFold::find_loops(), protocols::denovo_design::components::Picker::fragments_for_permutation_take_X_from_pose(), core::io::pose_to_sfr::PoseToStructFileRepConverter::get_residue_information(), protocols::denovo_design::components::StructureDataFactory::infer_from_pose(), protocols::features::PoseConformationFeatures::load_chain_endings(), protocols::forge::build::SegmentRebuild::modify_impl(), protocols::chemically_conjugated_docking::pack_extra_bodies(), core::pose::renumber_pdbinfo_based_on_conf_chains(), protocols::features::LoopAnchorFeatures::report_features(), protocols::features::PoseConformationFeatures::report_features_implementation(), protocols::legacy_sewing::Assembly::to_multichain_pose(), and protocols::surface_docking::SurfaceDockingProtocol::valid_surface_pose().

void core::conformation::Conformation::chain_endings ( utility::vector1< Size > const &  endings)
virtual

Sets the list of (chain number) chain endings.

See the documentation of Pose::num_chains() for details about chain numbers, chain letters and jumps.

Remarks
All positions must be strictly less than the number of residues in the Conformation, otherwise the routine will fail fast. Note that the last residue position is not counted as a chain end.

Reimplemented in protocols::environment::ProtectedConformation.

References chain_endings_, rederive_chain_ids(), and size().

void core::conformation::Conformation::chains_from_termini ( )
virtual
void core::conformation::Conformation::check_valid_membrane ( ) const

Check that a new membrane position is valid.

Given a new membrane normal/center pair, check that the newly constructed stub represents an orthogonal coordinate frame

References downstream_jump_stub(), jump(), and membrane_info_.

Referenced by update_membrane_position().

void core::conformation::Conformation::clear ( )
void core::conformation::Conformation::clear_glycan_trees ( )
void core::conformation::Conformation::clear_observers ( )
virtual void core::conformation::Conformation::clear_parameters_set_list ( )
inlinevirtual

Delete the list of ParametersSetOP objects.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References parameters_set_.

Referenced by protocols::helical_bundle::MakeBundle::apply().

ConformationOP core::conformation::Conformation::clone ( ) const
virtual
Residue const& core::conformation::Conformation::const_residue_ ( Size  seqpos) const
inlineprotected

Returns a constant residue reference without triggering coordinate/torsion update.

Use with care. Useful inside torsion/coordinate setters where we want chemical info about a given residue but don't want to trigger the coordinate/torsion updates that go along with a call to residue(seqpos).

References residues_, and size().

Referenced by atom_tree_torsion(), atoms_are_bonded(), backbone_torsion_angle_atoms(), backbone_torsion_angle_atoms_aramid(), backbone_torsion_angle_atoms_oligourea(), branch_connection_torsion_angle_atoms(), core::conformation::symmetry::SymmetricConformation::detect_disulfides(), get_torsion_angle_atom_ids(), jump_atom_id(), and core::conformation::symmetry::SymmetricConformation::prepend_polymer_residue_before_seqpos().

ResidueCOPs core::conformation::Conformation::const_residues ( ) const

Inefficient – constructs copy of residues_.

References residues_, and size().

Referenced by append_residue(), insert_polymer_residue(), insert_residue_by_bond(), insert_residue_by_jump(), replace_residue(), and setup_atom_tree().

bool core::conformation::Conformation::contains_carbohydrate_residues ( ) const
inline
void core::conformation::Conformation::contains_carbohydrate_residues ( bool  setting)
inline

Set whether this conformation contains any carbohydrate residues.

References contains_carbohydrate_residues_.

void core::conformation::Conformation::copy_segment ( Size  size,
Conformation const &  src,
Size  begin,
Size  src_begin 
)

copy a stretch of coordinates/torsions from another Conformation

copy a stretch of coordinates/torsions from another pose Fires IdentityEvent signals as residues are replaced.

References replace_residue(), residue(), and size().

virtual void core::conformation::Conformation::create_new_parameters_set ( )
inlinevirtual

Create a new (empty) ParametersSet object and add its owning pointer to the current Conformation object.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References parameters_set_.

void core::conformation::Conformation::debug_pause ( bool  flag) const

wait for stdin after sending a GeneralEvent signal

References general_obs_hub_.

bool core::conformation::Conformation::debug_pause ( ) const

waiting for stdin after sending a GeneralEvent signal?

References general_obs_hub_.

void core::conformation::Conformation::debug_residue_torsions ( bool  verbose = false) const
void core::conformation::Conformation::declare_chemical_bond ( Size const  seqpos1,
std::string const &  atom_name1,
Size const  seqpos2,
std::string const &  atom_name2 
)
virtual

Declare that a chemical bond exists between two residues.

Reimplemented in core::conformation::symmetry::SymmetricConformation, and protocols::environment::ProtectedConformation.

References core::conformation::Residue::atom_index(), core::chemical::ResidueConnection::atomno(), core::conformation::Residue::n_possible_residue_connections(), core::conformation::Residue::name(), residue(), core::conformation::Residue::residue_connection(), core::conformation::Residue::residue_connection_partner(), residue_torsions_need_updating_, residues_, core::conformation::update_cutpoint_virtual_atoms_if_connected(), and update_residue_torsions().

Referenced by core::util::add_covalent_linkage(), protocols::forge::methods::add_cutpoint_variants(), protocols::denovo_design::add_cutpoints(), protocols::loops::add_single_cutpoint_variant(), protocols::cyclic_peptide::DeclareBond::apply(), protocols::simple_moves::a3b_hbs::A3BHbsPatcher::apply(), protocols::indel::IndelOptimizationMover::apply(), protocols::loops::loop_mover::refine::LoopMover_Refine_KIC::apply(), protocols::loop_grower::LoopGrower::apply(), protocols::LoopRebuild::build_loop_with_ccd_closure(), core::pose::correctly_add_2prime_connection_variants(), protocols::relax::cyclize_pose(), core::conformation::symmetry::SymmetricConformation::declare_chemical_bond(), core::pose::declare_cutpoint_chemical_bond(), core::io::silent::BinarySilentStruct::fill_pose(), protocols::protein_interface_design::movers::DisulfideMover::form_disulfide(), core::conformation::form_disulfide(), protocols::grafting::insert_pose_into_pose(), protocols::toolbox::match_enzdes_util::EnzConstraintParameters::make_constraint_covalent(), protocols::forge::methods::make_star_foldtree(), protocols::loops::loop_mover::perturb::LoopMover_Perturb_QuickCCD_Moves::model_loop(), protocols::loops::loop_mover::perturb::LoopMover_Perturb_CCD::model_loop(), protocols::loops::loop_mover::perturb::LoopMover_Perturb_QuickCCD::model_loop(), protocols::denovo_design::movers::new_jump_and_cutpoint(), core::io::pose_from_sfr::PoseFromSFRBuilder::refine_pose(), protocols::loops::set_loop_cutpoint_in_pose_fold_tree(), protocols::rna::denovo::RNA_DeNovoPoseInitializer::setup_chainbreak_variants(), protocols::loop_grower::LoopGrower::single_grow(), and protocols::loop_grower::LoopGrower::update_to_stored().

void core::conformation::Conformation::delete_chain_ending ( Size const  seqpos)
virtual

Deletes <seqpos> from the list of (chain number) chain endings.

See the documentation of Pose::num_chains() for details about chain numbers, chain letters and jumps.

Remarks
The last residue position is not counted as a chain ending.

Reimplemented in protocols::environment::ProtectedConformation.

References chain_endings_, and rederive_chain_ids().

Referenced by protocols::forge::build::SegmentRebuild::modify_impl().

void core::conformation::Conformation::delete_polymer_residue ( Size const  seqpos)
virtual
void core::conformation::Conformation::delete_residue_range_slow ( Size const  range_begin,
Size const  range_end 
)
virtual

Slow method that relies on FoldTree::delete_seqpos, rebuilds atomtree, can handle jumps/root residue.

Like above but only one call to setup_atom_tree Fires a LengthEvent::RESIDUE_DELETE signal.

Reimplemented in protocols::environment::ProtectedConformation.

References atom_tree_, fold_tree_, notify_length_obs(), pre_nresidue_change(), core::conformation::signals::LengthEvent::RESIDUE_DELETE, residue_torsions_need_updating_, residues_delete(), setup_atom_tree(), and size().

Referenced by protocols::cutoutdomain::CutOutDomain::apply(), protocols::protein_interface_design::movers::TopologyBrokerMover::apply(), protocols::simple_moves::DeleteChainsMover::apply(), protocols::indel::IndelOptimizationMover::apply(), protocols::moves::StructureRestrictor::apply(), protocols::loop_grower::SheetSampler::apply(), protocols::antibody_legacy::GraftOneMover::apply(), protocols::fldsgn::CircularPermutation::apply(), protocols::protein_interface_design::filters::AtomicContactCountFilter::compute(), protocols::pose_creation::MakeJunctionsMover::generate_start_pose(), protocols::hotspot_hashing::HotspotStubSet::get_residue_score_(), protocols::loop_grower::LoopGrower::modifiedscore(), protocols::forge::build::SegmentSwap::modify_impl(), protocols::forge::build::SegmentRebuild::modify_impl(), protocols::forge::build::SegmentInsert::modify_impl(), protocols::environment::Environment::remove_nonpermenant_features(), protocols::hybridization::HybridizeFoldtreeDynamic::reset(), protocols::loop_grower::LoopGrower::sheetscore(), protocols::simple_moves::RepeatPropagationMover::trim_back_repeat_to_repair_scar(), and protocols::pose_creation::MakeJunctionsMover::trim_pose().

void core::conformation::Conformation::delete_residue_slow ( Size const  seqpos)
virtual

Slow method that relies on FoldTree::delete_seqpos, rebuilds atomtree, can handle jumps/root residue.

Delete a residue from the Conformation the slow way – triggers a rebuild of the atomtree Fires a LengthEvent::RESIDUE_DELETE signal.

Note
Could be upstream and/or downstream of a jump or chemical edge, or the root of the tree
Not well-tested. Expect funny behavior in new or different situations (email pbrad.nosp@m.ley@.nosp@m.fhcrc.nosp@m..org)

LOGIC: uses fold_tree.delete_seqpos to handle shifting the topology around if necessary, then calls setup_atom_tree

Reimplemented in protocols::environment::ProtectedConformation.

References atom_tree_, fold_tree_, notify_length_obs(), pre_nresidue_change(), core::conformation::signals::LengthEvent::RESIDUE_DELETE, residue_torsions_need_updating_, residues_delete(), setup_atom_tree(), size(), unblock_signals(), and xyz_obs_hub_.

Referenced by protocols::simple_moves::VirtualRootMover::apply(), protocols::comparative_modeling::PartialThreadingMover::apply(), protocols::rna::movers::RNAIdealizeMover::apply(), protocols::task_operations::RestrictNativeResiduesOperation::apply(), protocols::cryst::UpdateCrystInfo::apply(), protocols::simple_moves::PeriodicBoxMover::apply(), protocols::enzdes::RepackLigandSiteWithoutLigandMover::apply(), protocols::forge::remodel::RemodelMover::apply(), protocols::forge::components::VarLengthBuild::apply(), protocols::loops::apply_sequence_mapping(), protocols::sic_dock::auto_trim_floppy_termini(), protocols::simple_filters::MutationsFilter::compute(), protocols::protein_interface_design::filters::SequenceRecoveryFilter::compute(), protocols::grafting::delete_overhang_residues(), protocols::relax::delete_virtual_residues(), protocols::simple_moves::WaterBoxMover::delete_waters(), protocols::chemically_conjugated_docking::UBQ_GTPaseMover::initialize(), protocols::features::ReportToDB::initialize_pose(), protocols::ligand_docking::HighResEnsemble::prepare_single_ligand_pose(), protocols::match::MatcherMover::process_pose(), core::pose::remove_ligand_canonical_residues(), protocols::toolbox::pose_manipulation::remove_non_protein_residues(), core::pose::remove_nonprotein_residues(), protocols::hybridization::remove_residues(), core::pose::remove_virtual_residues(), protocols::forge::remodel::RemodelLoopMover::repeat_generation_with_additional_residue(), protocols::relax::RepeatProteinRelax::seal_jumps(), protocols::nonlocal::StarTreeBuilder::tear_down(), protocols::star::StarAbinitio::tear_down_kinematics(), protocols::legacy_sewing::Model::trim_db_pose(), and protocols::features::ModelFeatures::trim_pose().

template<typename MemFn , typename Ptr >
bool core::conformation::Conformation::detach_connection_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

detach ConnectionEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( ConnectionEvent const & )
ptrRAW pointer to observer object
Returns
true if disconnect successful, false if connection does not exist
Remarks
ConnectionEvent observers will only be notified upon a change in the state of the connection with the Conformation, e.g. if the Conformation is destroyed or if the connection is being transferred. SUGGESTION: Try to use the Link objects that are returned when attaching observers instead of attaching via this function and watching for ConnectionEvents, as it typically makes connection management easier.

References connection_obs_hub_.

template<typename MemFn , typename Ptr >
bool core::conformation::Conformation::detach_general_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

detach GeneralEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( GeneralEvent const & )
ptrRAW pointer to observer object
Returns
true if disconnect successful, false if connection does not exist
Remarks
GeneralEvent observers will be notified whenever any signal derived from GeneralEvent occurs.

References general_obs_hub_.

template<typename MemFn , typename Ptr >
bool core::conformation::Conformation::detach_identity_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

detach IdentityEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( IdentityEvent const & )
ptrRAW pointer to observer object
Returns
true if disconnect successful, false if connection does not exist

References identity_obs_hub_.

template<typename MemFn , typename Ptr >
bool core::conformation::Conformation::detach_length_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

detach LengthEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( LengthEvent const & )
ptrRAW pointer to observer object
Returns
true if disconnect successful, false if connection does not exist

References length_obs_hub_.

template<typename MemFn , typename Ptr >
bool core::conformation::Conformation::detach_xyz_obs ( MemFn  fn,
Ptr  ptr 
) const
inline

detach XYZEvent observer function

Parameters
fnpointer to observer's unary member function with signature void( XYZEvent const & )
ptrRAW pointer to observer object
Returns
true if disconnect successful, false if connection does not exist

References xyz_obs_hub_.

void core::conformation::Conformation::detached_copy ( Conformation const &  src)
virtual

copy the other conformation into this, but make sure that the two share no possibly-non-bitwise-const data nor do they refer to each other (as the AtomTree does with its topological observer system).

Reimplemented in core::conformation::symmetry::SymmetricConformation, and core::conformation::symmetry::MirrorSymmetricConformation.

References atom_tree_.

Referenced by core::conformation::symmetry::SymmetricConformation::detached_copy().

void core::conformation::Conformation::detect_bonds ( )

References core::conformation::Residue::atom(), core::chemical::ResidueType::atom_name(), core::chemical::ResidueConnection::atomno(), core::conformation::Residue::atoms(), core::chemical::AtomICoor::build(), core::conformation::Residue::connection_distance(), core::conformation::Residue::connection_incomplete(), core::chemical::AtomICoor::d(), core::conformation::Residue::has_incomplete_connection(), core::chemical::ResidueConnection::icoor(), core::chemical::ResidueType::n_possible_residue_connections(), core::chemical::ResidueType::n_residue_connections_for_atom(), core::conformation::Residue::name(), core::conformation::Residue::nbr_atom(), core::conformation::Residue::nbr_radius(), residue(), core::chemical::ResidueType::residue_connection(), core::conformation::Residue::residue_connection(), residues_, size(), core::conformation::TR(), core::conformation::Residue::type(), core::conformation::Atom::xyz(), and core::conformation::Residue::xyz().

Referenced by protocols::simple_moves::PeptideStapleMover::apply(), protocols::abinitio::ResolutionSwitcher::apply(), protocols::simple_moves::DeleteChainsMover::apply(), protocols::ncbb::oop::OopCreatorMover::apply(), protocols::comparative_modeling::LoopRelaxMover::apply(), core::pose::symmetry::make_symmetric_pose(), protocols::frag_picker::FragmentCandidate::output_silent(), core::io::pose_from_sfr::PoseFromSFRBuilder::refine_pose(), protocols::simple_moves::CyclizationMover::setup_connections(), and protocols::topology_broker::TopologyBroker::switch_to_fullatom().

void core::conformation::Conformation::detect_disulfides ( utility::vector1< Size > const &  disulf_one = utility::vector1< core::Size >(),
utility::vector1< Size > const &  disulf_two = utility::vector1< core::Size >() 
)
virtual

Detect existing disulfides from the protein structure using suggestions from the FileData (or not!)

For full atom confomations, looks at SG-SG distance. If the SG-SG are about 2.02 A apart, calls it a disulfide bond. For centroid and other conformations, the less accurate CB-CB distance is used instead. In this case a CB-CB distance of 3.72 A is optimal.

Note
Assumes full atom

Reimplemented in core::conformation::symmetry::SymmetricConformation, and core::conformation::symmetry::MirrorSymmetricConformation.

References core::conformation::Residue::atom(), core::conformation::Residue::atom_index(), core::chemical::ResidueType::atom_index(), core::conformation::Residue::atoms(), core::conformation::change_cys_state(), core::chemical::DISULFIDE, core::conformation::find_neighbors(), core::chemical::FULL_ATOM_t, core::chemical::ResidueType::get_disulfide_atom_name(), core::conformation::Residue::has_variant_type(), core::chemical::ResidueType::is_disulfide_bonded(), core::chemical::ResidueType::is_sidechain_thiol(), core::conformation::Residue::nbr_atom(), core::conformation::Residue::nbr_radius(), residue(), core::chemical::ResidueType::residue_connection_id_for_atom(), residue_type(), residues_, size(), core::conformation::TR(), core::conformation::Residue::type(), and core::conformation::Atom::xyz().

Referenced by protocols::simple_moves::AddChainMover::add_new_chain(), protocols::simple_moves::SwitchChainOrderMover::apply(), protocols::simple_moves::WriteSSEMover::apply(), protocols::hybridization::MRMover::apply(), protocols::simple_moves::DeleteChainsMover::apply(), protocols::indel::IndelOptimizationMover::apply(), protocols::simple_moves::DisulfideInsertionMover::apply(), protocols::protein_interface_design::movers::LoopMoverFromCommandLine::apply(), protocols::hybridization::BackboneTorsionPerturbation::apply(), protocols::hybridization::BackboneTorsionSampler::apply(), protocols::splice::Splice::apply(), protocols::comparative_modeling::LoopRelaxMover::apply(), protocols::hybridization::HybridizeProtocol::apply(), protocols::cryst::MakeLayerMover::apply(), protocols::cryst::MakeLatticeMover::apply(), protocols::environment::EnvClaimBroker::broker_dofs(), core::import_pose::cleanup(), protocols::fold_from_loops::filters::ScorePoseSegmentFromResidueSelectorFilter::compute(), protocols::grafting::delete_region(), core::pose::symmetry::extract_asymmetric_unit(), protocols::abinitio::AbrelaxApplication::fold(), protocols::simple_moves::CutChainMover::foldTree(), core::pose::initialize_disulfide_bonds(), protocols::energy_based_clustering::EnergyBasedClusteringProtocol::make_disulfides(), protocols::struct_fragment::StructFragmentMover::make_fragment_picker(), protocols::frag_picker::FragmentCandidate::output_silent(), protocols::hybridization::BackboneTorsionSampler::perturb(), protocols::hybridization::BackboneTorsionPerturbation::perturb(), protocols::peptide_deriver::PeptideDeriverFilter::prepare_pose(), protocols::sic_dock::read_biounit(), protocols::grafting::replace_region(), protocols::forge::methods::restore_residues(), protocols::grafting::return_region(), protocols::simple_moves::AddChainMover::swap_chain(), protocols::topology_broker::TopologyBroker::switch_to_fullatom(), protocols::fold_from_loops::utils::Nub::transfer_unfolded_conformation(), and protocols::protein_interface_design::PatchdockReader::transform_pose().

void core::conformation::Conformation::detect_pseudobonds ( )
Real core::conformation::Conformation::dof ( DOF_ID const &  id) const
id::DOF_ID core::conformation::Conformation::dof_id_from_atom_ids ( id::AtomID const &  id1,
id::AtomID const &  id2,
id::AtomID const &  id3,
id::AtomID const &  id4 
) const

Get the DOF_ID corresponding to the torsion angle defined by these four atoms.

References atom_tree_.

Referenced by dof_id_from_atom_ids(), and dof_id_from_torsion_id().

id::DOF_ID core::conformation::Conformation::dof_id_from_atom_ids ( id::AtomID const &  id1,
id::AtomID const &  id2,
id::AtomID const &  id3 
) const

Get the DOF_ID corresponding to the bond angle defined by these three atoms.

References atom_tree_.

id::DOF_ID core::conformation::Conformation::dof_id_from_atom_ids ( id::AtomID const &  id1,
id::AtomID const &  id2 
) const

Get the DOF_ID corresponding to the bond distance defined by these two atoms.

References atom_tree_.

id::DOF_ID core::conformation::Conformation::dof_id_from_atom_ids ( utility::vector1< id::AtomID > const &  ids) const

Get the DOF_ID defined by these atoms.

References dof_id_from_atom_ids(), and core::id::GLOBAL_BOGUS_DOF_ID.

id::DOF_ID core::conformation::Conformation::dof_id_from_torsion_id ( TorsionID const &  id) const
kinematics::Stub core::conformation::Conformation::downstream_jump_stub ( int  jump_number) const
bool core::conformation::Conformation::empty ( ) const
inline

Returns true if this conformation does not have any residues.

References residues_.

Referenced by residue_typeset_mode().

iterator core::conformation::Conformation::end ( )
inlinenoexcept
const_iterator core::conformation::Conformation::end ( ) const
inlinenoexcept

References residues_.

void core::conformation::Conformation::fill_missing_atoms ( id::AtomID_Mask  missing)
virtual

Reimplemented in protocols::environment::ProtectedConformation.

References core::kinematics::AtomTree::atom(), core::chemical::ICoorAtomID::atom_id(), core::conformation::Residue::atom_name(), core::conformation::Residue::atom_type(), core::id::AtomID::BOGUS_ATOM_ID(), core::conformation::build_residue_tree(), core::id::D, core::chemical::AtomICoor::d(), core::kinematics::AtomTree::dof(), core::id::AtomID_Map< T >::get(), core::conformation::Residue::icoor(), core::kinematics::tree::Atom::input_stub_atom1_id(), core::kinematics::tree::Atom::input_stub_atom2_id(), core::kinematics::tree::Atom::input_stub_atom3_id(), core::chemical::AtomType::is_heavyatom(), core::conformation::Residue::is_virtual(), core::conformation::Residue::name(), core::conformation::Residue::natoms(), core::id::PHI, core::chemical::AtomICoor::phi(), core::io::raw_data::precision(), residue_(), core::conformation::Residue::seqpos(), core::id::AtomID_Map< T >::set(), set_xyz(), size(), core::kinematics::Stub::spherical(), core::chemical::AtomICoor::stub_atom1(), core::chemical::AtomICoor::stub_atom2(), core::chemical::AtomICoor::stub_atom3(), core::id::THETA, core::chemical::AtomICoor::theta(), core::conformation::TR(), core::conformation::Residue::type(), update_residue_coordinates(), core::conformation::Residue::xyz(), and xyz().

Referenced by protocols::antibody::GraftOneCDRLoop::apply(), protocols::antibody_legacy::GraftOneMover::apply(), protocols::indexed_structure_store::apply_residue_entries_to_pose(), core::io::pose_from_sfr::PoseFromSFRBuilder::refine_pose(), and protocols::toolbox::match_enzdes_util::replace_residue_keeping_all_atom_positions().

void core::conformation::Conformation::fix_disulfides ( utility::vector1< std::pair< Size, Size > > const &  disulf_bonds)
virtual

Assigns disulfide bonds based on a pre-determined list.

Note
works in centroid and full-atom modes

Reimplemented in protocols::environment::ProtectedConformation.

References core::conformation::Residue::atom_index(), core::conformation::change_cys_state(), core::chemical::DISULFIDE, core::chemical::ResidueType::get_disulfide_atom_name(), residue(), core::chemical::ResidueType::residue_connection_id_for_atom(), residues_, size(), core::conformation::TR(), and core::conformation::Residue::type().

Referenced by protocols::calc_taskop_movers::ForceDisulfidesMover::apply(), protocols::hybridization::MRMover::apply(), protocols::stepwise::legacy::modeler::protein::StepWiseProteinMinimizer::apply(), protocols::comparative_modeling::LoopRelaxMover::apply(), protocols::topology_broker::TopologyBroker::apply(), protocols::abinitio::AbrelaxApplication::do_distributed_rerun(), protocols::abinitio::AbrelaxApplication::generate_extended_pose(), core::pose::initialize_disulfide_bonds(), protocols::energy_based_clustering::EnergyBasedClusteringProtocol::make_disulfides(), core::io::raw_data::DisulfideFile::read_in_and_set_disulfides(), protocols::fold_from_loops::NubInitioMover::repack_minimize_disulfides(), protocols::stepwise::legacy::modeler::protein::StepWiseProteinPoseSetup::setup_disulfides(), protocols::abinitio::AbrelaxApplication::setup_fold(), protocols::topology_broker::TopologyBroker::switch_to_fullatom(), protocols::fold_from_loops::utils::Nub::transfer_unfolded_conformation(), and core::pose::full_model_info::update_disulfides_from_full_model_info().

virtual FoldTree const& core::conformation::Conformation::fold_tree ( ) const
inlinevirtual

Returns the conformation's FoldTree.

Reimplemented in core::conformation::symmetry::SymmetricConformation.

References fold_tree_.

Referenced by protocols::environment::EnvClaimBroker::add_chainbreak_variants(), core::optimization::symmetry::SymMinimizerMap::asymmetric_dof(), protocols::environment::EnvClaimBroker::broker_fold_tree(), core::conformation::symmetry::SymmetryInfo::dependent_dofs(), core::conformation::symmetry::SymmetryInfo::dof_is_independent(), protocols::simple_moves::asym_fold_and_dock::AsymFoldandDockMoveRbJumpMover::find_new_jump_residue(), core::pose::symmetry::find_new_symmetric_jump_residues(), core::pose::symmetry::find_symmetric_basejump_anchor(), core::conformation::symmetry::SymmetricConformation::fold_tree(), protocols::topology_broker::FoldandDockClaimer::generate_claims(), protocols::topology_broker::AsymFoldandDockClaimer::generate_claims(), protocols::topology_broker::FibrilModelingClaimer::generate_claims(), core::conformation::symmetry::get_asymm_unit_fold_tree(), core::conformation::symmetry::SymmetryInfo::get_dof_derivative_weight(), core::conformation::idealize_position(), protocols::hybridization::HybridizeFoldtreeDynamic::initialize(), core::conformation::symmetry::MirrorSymmetricConformation::insert_conformation_by_jump(), core::conformation::symmetry::SymmetricConformation::insert_conformation_by_jump(), insert_conformation_by_jump(), core::conformation::insert_ideal_bonds_at_polymer_junction(), core::conformation::is_ideal_position(), protocols::membrane::is_membrane_fixed(), protocols::membrane::is_membrane_moveable_by_itself(), core::optimization::symmetry::SymAtomTreeMinimizer::make_semisymmetric_movemap(), core::conformation::symmetry::process_residue_request(), protocols::environment::EnvClaimBroker::render_fold_tree(), protocols::fibril::reorient_extended_fibril(), protocols::simple_ddg::AlaScan::report(), protocols::features::PoseConformationFeatures::report_features_implementation(), protocols::hybridization::HybridizeFoldtreeDynamic::reset(), protocols::environment::ClientMover::sandboxed_copy(), core::conformation::symmetry::set_asymm_unit_fold_tree(), core::conformation::symmetry::set_fold_tree_from_symm_data(), core::conformation::symmetry::MirrorSymmetricConformation::set_jump(), core::conformation::symmetry::setup_symmetric_conformation(), core::conformation::symmetry::symmetrize_fold_tree(), core::conformation::symmetry::MirrorSymmetricConformation::synch_mirror_jumps_with_atomtree(), core::conformation::symmetry::MirrorSymmetricConformation::update_njumps_nres(), and protocols::environment::claims::VirtResClaim::yield_elements().

void core::conformation::Conformation::fold_tree ( FoldTree const &  fold_tree_in)
virtual
void core::conformation::Conformation::force_update_residue_coordinates ( ) const
protected

Force updating of residue coordinates.

Needed by derived classes (particularly MirrorSymmetricConformation).

Needed by derived classes

References residue_coordinates_need_updating_, and update_residue_coordinates().

void core::conformation::Conformation::force_update_residue_torsions ( ) const
protected

Force updating of residue torsions.

Needed by derived classes (particularly MirrorSymmetricConformation).

Needed by derived classes

References residue_torsions_need_updating_, and update_residue_torsions().

bool core::conformation::Conformation::get_jump_atom_ids ( core::Size  jump_number,
AtomID upstream_id,
AtomID downstream_id 
) const

get two atoms connect by jump

References atom_tree_, and jump_atom_id().

Referenced by core::pose::toolbox::AtomLevelDomainMap::get_jump().

utility::vector1< bool > core::conformation::Conformation::get_residue_mask ( ) const
virtual

returns a mask of residues to be used in scoring

Returns a mask of residues over which scoring is restricted. Only these residues will be used in constructing the neighbor list.

Reimplemented in core::conformation::symmetry::SymmetricConformation.

References residues_.

Referenced by core::scoring::NeighborList::setup().

Real core::conformation::Conformation::get_residue_weight ( core::Size  ,
core::Size   
) const
virtual

returns a residue-pair weight

Returns a weight to be used when scoring this residue.

Reimplemented in core::conformation::symmetry::SymmetricConformation, and core::conformation::symmetry::MirrorSymmetricConformation.

Referenced by core::scoring::NeighborList::setup().

ConformationCOP core::conformation::Conformation::get_self_ptr ( ) const
inline
ConformationOP core::conformation::Conformation::get_self_ptr ( )
inline
ConformationCAP core::conformation::Conformation::get_self_weak_ptr ( ) const
inline
ConformationAP core::conformation::Conformation::get_self_weak_ptr ( )
inline
kinematics::RT core::conformation::Conformation::get_stub_transform ( id::StubID const &  stub_id1,
id::StubID const &  stub_id2 
) const
bool core::conformation::Conformation::get_torsion_angle_atom_ids ( TorsionID const &  tor_id,
AtomID id1,
AtomID id2,
AtomID id3,
AtomID id4 
) const
carbohydrates::GlycanTreeSetCOP core::conformation::Conformation::glycan_tree_set ( ) const

Get the glycan tree set. Nullptr if not present.

Get the glycan tree set. Null if not present.

Rosetta Carbohydrate Data /// Core data for interacting with glycan trees in Rosetta /// /// ///

Rosetta Carbohydrate Data /// Core data for interacting with glycan trees in Rosetta /// ///

References tree_set_observer_.

Referenced by core::conformation::carbohydrates::get_glycosidic_bond_residues(), core::conformation::carbohydrates::get_reference_atoms_for_1st_omega(), and core::conformation::carbohydrates::get_reference_atoms_for_2nd_omega().

virtual bool core::conformation::Conformation::has_passport ( ) const
inlinevirtual
void core::conformation::Conformation::in_place_copy ( Conformation const &  src)
private

Optimizing the common case of assigning a conformation to another with the same sequence.

References atom_tree_, chain_endings_, dof_moved_, fold_tree_, parameters_set_, residue_coordinates_need_updating_, residue_torsions_need_updating_, residue_type_sets_, residues_, secstruct_, size(), structure_moved_, and xyz_moved_.

Referenced by operator=().

void core::conformation::Conformation::insert_chain_ending ( Size const  seqpos)
virtual
void core::conformation::Conformation::insert_conformation_by_jump ( Conformation const &  conf,
Size const  insert_seqpos,
Size const  insert_jumppos,
Size const  anchor_pos,
Size const  anchor_jump_number = 0,
std::string const &  anchor_atom = "",
std::string const &  root_atom = "" 
)
virtual

Insert one conformation into another. See FoldTree::insert_fold_tree_by_jump.

Insert one conformation into another. Some tricky issues: (1) residue connections: assume all residue connections within conf carry over, after renumbering residues positions (2) jump numbers: see FoldTree::insert_fold_tree_by_jump (3) chains: chain endings are inserted before insert_seqpos, and after insert_seqpos+conf.size()-1 ie. at the beginning and ending of the inserted conformation; all internal chain endings from conf are used (4) atom_tree: setup_atom_tree is called to rebuild from scratch using the fold_tree

Reimplemented in core::conformation::symmetry::SymmetricConformation, protocols::environment::ProtectedConformation, and core::conformation::symmetry::MirrorSymmetricConformation.

References add_parameters_set(), chain_end(), chain_endings_, core::id::AtomID_Map< T >::clear(), core::conformation::Residue::clone(), contains_carbohydrate_residues(), contains_carbohydrate_residues_, dof_moved_, fold_tree(), fold_tree_, n_parameters_sets(), notify_length_obs(), num_chains(), parameters_set(), pre_nresidue_change(), rederive_chain_ids(), residue(), core::conformation::signals::LengthEvent::RESIDUE_APPEND, residue_cop(), residue_torsions_need_updating_, residues_, core::id::AtomID_Map< T >::resize(), secstruct_, setup_atom_tree(), size(), update_sequence_numbering(), and xyz_moved_.

Referenced by protocols::denovo_design::add_residues_to_pose(), protocols::denovo_design::components::append_new_chain_from_template_segment(), core::pose::Pose::append_pose_by_jump(), core::conformation::symmetry::MirrorSymmetricConformation::insert_conformation_by_jump(), core::conformation::symmetry::SymmetricConformation::insert_conformation_by_jump(), protocols::motif_grafting::movers::MotifGraftMover::join_two_poses_by_jump(), and core::conformation::symmetry::setup_symmetric_conformation().

void core::conformation::Conformation::insert_fragment ( id::StubID const &  instub_id,
FragRT const &  outstub_transforms,
FragXYZ const &  frag_xyz 
)
virtual
void core::conformation::Conformation::insert_ideal_geometry_at_polymer_bond ( Size const  seqpos)
virtual
void core::conformation::Conformation::insert_ideal_geometry_at_residue_connection ( Size const  pos1,
Size const  connid1 
)
virtual

Set two bond angles and a bond length. DOES NOT DO ANY DIHEDRALS – NOT EVEN OMEGA IF IT'S A PROTEIN

Reimplemented in protocols::environment::ProtectedConformation.

References rebuild_residue_connection_dependent_atoms(), residues_, set_bond_angle(), and set_bond_length().

void core::conformation::Conformation::insert_polymer_residue ( Residue const &  new_rsd_in,
Size const  seqpos,
bool const  join_lower,
bool const  join_upper 
)
private
void core::conformation::Conformation::insert_residue_by_bond ( Residue const &  new_rsd_in,
Size const  seqpos,
Size  anchor_pos,
bool const  build_ideal_geometry = false,
std::string const &  anchor_atom = "",
std::string const &  root_atom = "",
bool  new_chain = false,
bool const  lookup_bond_length = false 
)
void core::conformation::Conformation::insert_residue_by_jump ( Residue const &  new_rsd_in,
Size  seqpos,
Size  anchor_pos,
std::string const &  anchor_atom = "",
std::string const &  root_atom = "",
bool  new_chain = false 
)
id::AtomID core::conformation::Conformation::inter_residue_connection_partner ( Size  seqpos,
int  connection_index 
) const

This returns the AtomID of the atom in the other residue to which the "connection_index"-th connection of residue seqpos is connected to.

References residues_.

bool core::conformation::Conformation::is_centroid ( ) const
bool core::conformation::Conformation::is_fullatom ( ) const

convenience test for residue_type_set mode

References core::chemical::FULL_ATOM_t, and residue_typeset_mode().

Referenced by core::conformation::form_disulfide().

bool core::conformation::Conformation::is_membrane ( ) const
inline

convenience test for if the conformation contains information for a membrane protein

References membrane_info_.

Referenced by protocols::membrane::SetMembranePositionMover::apply(), protocols::membrane::RandomPositionRotationMover::apply(), protocols::membrane::visualize::VisualizeEmbeddingMover::apply(), protocols::membrane::OptimizeProteinEmbeddingMover::apply(), protocols::membrane::MembranePositionFromTopologyMover::apply(), protocols::relax::membrane::MPFastRelaxMover::apply(), protocols::relax::membrane::MPRangeRelaxMover::apply(), protocols::membrane::AddMPLigandMover::apply(), protocols::symmetric_docking::membrane::MPSymDockMover::apply(), protocols::relax::RangeRelaxMover::apply(), protocols::membrane::visualize::VisualizeMembraneMover::apply(), protocols::membrane::TransformIntoMembraneMover::apply(), protocols::membrane::TranslationMover::apply(), protocols::membrane::RandomPositionTranslationMover::apply(), protocols::membrane::SetMembraneNormalMover::apply(), protocols::docking::DockingSlideIntoContact::apply(), protocols::membrane::SetMembraneCenterMover::apply(), protocols::membrane::RotationMover::apply(), protocols::moves::PyMOLMover::apply(), protocols::membrane::TranslationRotationMover::apply(), core::scoring::hbonds::HBondEnergy::backbone_backbone_energy(), core::scoring::hbonds::HBondEnergy::backbone_sidechain_energy(), core::membrane::concave_shell(), protocols::ligand_docking::MinimizeBackbone::create_fold_tree_with_cutpoints(), protocols::ligand_docking::MinimizeBackbone::create_fold_tree_with_ligand_jumps_from_attach_pts(), protocols::membrane::create_membrane_foldtree_anchor_com(), protocols::membrane::create_membrane_foldtree_anchor_pose_tmcom(), protocols::membrane::create_membrane_foldtree_anchor_tmcom(), protocols::membrane::create_membrane_foldtree_from_anchors(), protocols::membrane::create_specific_membrane_foldtree(), protocols::relax::FastRelax::do_minimize(), core::scoring::hbonds::fill_hbond_set(), protocols::membrane::MPLipidAccessibility::fill_up_slices(), protocols::membrane::MPMutateRelaxMover::finalize_setup(), protocols::membrane::MPLipidAccessibility::finalize_setup(), protocols::relax::RangeRelaxMover::finalize_setup(), core::scoring::hbonds::get_membrane_depth_dependent_weight(), core::io::pose_to_sfr::PoseToStructFileRepConverter::grab_membrane_info(), protocols::membrane::is_membrane_fixed(), protocols::membrane::is_membrane_moveable_by_itself(), protocols::membrane::mem_all_atom_rmsd_no_super(), protocols::membrane::mem_all_atom_rmsd_with_super(), protocols::membrane::mem_bb_rmsd_no_super(), protocols::membrane::mem_bb_rmsd_with_super(), core::pose::operator<<(), core::scoring::membrane::MPCbetaEnergy::residue_energy(), core::scoring::membrane::MPTerminiPenalty::residue_energy(), core::scoring::membrane::MPNonHelixPenalty::residue_energy(), core::scoring::membrane::MPHelicalityEnergy::residue_energy(), core::scoring::membrane::MPEnvEnergy::residue_energy(), core::scoring::membrane::MPPairEnergy::residue_pair_energy(), core::scoring::hbonds::HBondEnergy::residue_pair_energy(), core::scoring::hbonds::HBondEnergy::residue_pair_energy_ext(), protocols::membrane::rsd_closest_to_chain_com(), protocols::moves::PyMOLMover::send_membrane_planes(), protocols::membrane::setup_foldtree_from_anchors(), protocols::membrane::setup_foldtree_pose_com(), core::scoring::hbonds::HBondEnergy::setup_for_packing(), core::scoring::hbonds::HBondEnergy::setup_for_scoring(), protocols::relax::membrane::MPFastRelaxMover::setup_relax_foldtree(), core::scoring::hbonds::HBondEnergy::sidechain_sidechain_energy(), and protocols::protein_interface_design::filters::BindingStrainFilter::unbind().

bool core::conformation::Conformation::is_mixed_mode ( ) const

convenience test for residue_type_set mode

References core::chemical::MIXED_t, and residue_typeset_mode().

virtual bool core::conformation::Conformation::is_protected ( ) const
inlinevirtual
Conformation::Jump const & core::conformation::Conformation::jump ( int  jump_number) const
Conformation::Jump const & core::conformation::Conformation::jump ( AtomID const &  id) const

access a jump

References atom_tree_.

id::AtomID core::conformation::Conformation::jump_atom_id ( int  jump_number) const
membrane::MembraneInfoOP core::conformation::Conformation::membrane_info ( )

Returns the const MembraneInfo object in conformation.

Returns the MembraneInfo object in conformation.

Membrane Info contains information describing location of the membrane virtual residue in the pose sequence, membrane spanning region definitions and lipid exposure/burial data

References membrane_info_.

Referenced by protocols::simple_filters::SpanTopologyMatchPoseFilter::actual_topology(), core::select::residue_selector::ResidueInMembraneSelector::apply(), protocols::membrane::benchmark::SampleTiltAngles::apply(), protocols::membrane::TransformIntoMembraneMover::apply(), core::scoring::membrane::FaMPEnvSmoothEnergy::calc_energy(), core::scoring::membrane::MPHelicalityEnergy::calc_energy(), core::scoring::membrane::MPResidueLipophilicityEnergy::calc_energy(), core::scoring::membrane::MPSpanInsertionEnergy::calc_span_score(), protocols::membrane::check_orientation(), protocols::simple_filters::TMsSpanMembraneFilter::compute(), protocols::simple_filters::MembAccesResidueLipophilicityFilter::compute(), core::scoring::membrane::MPSpanInsertionEnergy::create_updated_span(), core::scoring::hbonds::get_membrane_depth_dependent_weight(), core::io::pose_to_sfr::PoseToStructFileRepConverter::grab_membrane_info(), core::scoring::membrane::FaMPSolvEnergy::init(), core::scoring::constraints::MembraneSpanConstraint::MembraneSpanConstraint(), core::scoring::constraints::MembraneSpanTermZConstraint::MembraneSpanTermZConstraint(), core::pose::operator<<(), core::scoring::membrane::MPResidueLipophilicityEnergy::report_ressolv(), core::scoring::membrane::MPCbetaEnergy::residue_energy(), core::scoring::membrane::MPTerminiPenalty::residue_energy(), core::scoring::membrane::MPNonHelixPenalty::residue_energy(), core::scoring::membrane::MPEnvEnergy::residue_energy(), core::scoring::hbonds::HBondEnergy::setup_for_packing(), core::scoring::hbonds::HBondEnergy::setup_for_scoring(), and protocols::simple_filters::SpanTopologyMatchPoseFilter::span_file_topology().

membrane::MembraneInfoOP core::conformation::Conformation::membrane_info ( ) const

Returns the const MembraneInfo object in conformation.

Returns a Membrane Info Object in the conformation.

Membrane Info contains information describing location of the membrane virtual residue in the pose sequence, membrane spanning region definitions and lipid exposure/burial data

Membrane Info contains information regarding membrane residues, foldtree modifications, fullatom vs. centroid embedding parameters for scoring and the spanning topology/lipids accessibility data

References membrane_info_.

core::chemical::PoseResidueTypeSetOP core::conformation::Conformation::modifiable_residue_type_set_for_conf ( core::chemical::TypeSetMode  mode = core::chemical::INVALID_t) const

Return a clone of the Conformation-specific PoseResidueTypeSet (note this is const) Modifications to this RTS won't be seen in the Conformation unless you pass it back in with reset_residue_type_set_for_conf() Should always return a non-null pointer: will create a new PoseResidueTypeSet if the Conformation doesn't have it already.

Return a clone of the Conformation-specific PoseResidueTypeSet. Modifications to this RTS won't be seen in the Conformation unless you pass it back in with reset_residue_type_set_for_conf() Should always return a non-null pointer: will create a new PoseResidueTypeSet if the Conformation doesn't have it already.

References core::chemical::FULL_ATOM_t, core::chemical::CacheableResidueTypeSets::get_res_type_set(), core::chemical::INVALID_t, core::chemical::MIXED_t, residue_type_sets_, residue_typeset_mode(), and core::conformation::TR().

Referenced by protocols::ligand_docking::AddHydrogen::apply(), protocols::jd2::ScreeningJobInputter::pose_from_job(), protocols::splice::SampleRotamersFromPDB_RotamerSetOperation::ROT2res(), and core::util::switch_to_residue_type_set().

virtual core::Size core::conformation::Conformation::n_parameters_sets ( ) const
inlinevirtual
void core::conformation::Conformation::notify_connection_obs ( ConnectionEvent const &  e) const
private

notify ConnectionEvent observers

work in progress void insert_chemical_chainbreak_between_polymer_residues( Size const lower_seqpos ) { ResidueOP lower_rsd( residues_[ lower_seqpos ] );

the type of the desired variant residue ResidueTypeSet const & rsd_set( lower_rsd->residue_type_set() );

ResidueType const & new_lower_rsd_type ( rsd_set.get_residue_type_with_variant_removed( lower_rsd.type(), UPPER_TERMINUS ) ); ResidueOP new_lower_rsd( ResidueFactory::create_residue( new_lower_rsd_type ) ); }

Remarks
called upon a change in the state of connection between the Conformation and the observer (e.g. destruction of Conformation or transfer of connection)

References connection_obs_hub_.

Referenced by clear_observers(), and receive_observers_from().

void core::conformation::Conformation::notify_general_obs ( GeneralEvent const &  e) const
private

notify GeneralEvent observers

Remarks
should only be called when there are no other suitable event types since specific event notifications will automatically fire a GeneralEvent signal

References general_obs_hub_.

Referenced by notify_identity_obs(), notify_length_obs(), and notify_xyz_obs().

void core::conformation::Conformation::notify_identity_obs ( IdentityEvent const &  e,
bool  fire_general = true 
) const
private

notify IdentityEvent observers

Parameters
ethe event
fire_generalfire a GeneralEvent afterwards? default true

References identity_obs_hub_, and notify_general_obs().

Referenced by operator=(), and replace_residue().

void core::conformation::Conformation::notify_length_obs ( LengthEvent const &  e,
bool  fire_general = true 
) const
private

notify LengthEvent observers

Parameters
ethe event
fire_generalfire a GeneralEvent afterwards? default true

References length_obs_hub_, and notify_general_obs().

Referenced by append_residue(), delete_polymer_residue(), delete_residue_range_slow(), delete_residue_slow(), insert_conformation_by_jump(), insert_polymer_residue(), insert_residue_by_bond(), insert_residue_by_jump(), and operator=().

void core::conformation::Conformation::notify_xyz_obs ( XYZEvent const &  e,
bool  fire_general = true 
) const
private

notify XYZEvent observers

Parameters
ethe event
fire_generalfire a GeneralEvent afterwards? default true

References notify_general_obs(), and xyz_obs_hub_.

Referenced by operator=(), update_residue_coordinates(), and update_residue_torsions().

Size core::conformation::Conformation::num_chains ( ) const
inline

Returns the number of chains.

See the documentation of Pose::num_chains() for details about chain numbers, chain letters and jumps.

References chain_endings_.

Referenced by protocols::matdes::SymDofMover::add_components_to_pose_if_necessary(), protocols::chemically_conjugated_docking::add_extra_bodies(), protocols::anchored_design::AnchorMoversData::anchor_noise_constraints_setup(), protocols::seeded_abinitio::SwapSegment::apply(), protocols::simple_moves::SwitchChainOrderMover::apply(), protocols::protein_interface_design::movers::SetAtomTree::apply(), protocols::protein_interface_design::movers::PrepackMover::apply(), protocols::seeded_abinitio::SeedFoldTree::apply(), protocols::seeded_abinitio::SegmentHybridizer::apply(), protocols::task_operations::SelectBySASAOperation::apply(), protocols::simple_moves::CyclizationMover::apply(), protocols::metal_interface::ZincHeterodimerMover::apply(), protocols::task_operations::SelectResiduesWithinChainOperation::apply(), protocols::task_operations::RestrictChainToRepackingOperation::apply(), protocols::protein_interface_design::movers::BackrubDDMover::apply(), protocols::indel::IndelOptimizationMover::apply(), protocols::task_operations::PreventChainFromRepackingOperation::apply(), protocols::splice::DesignInterfacesOperation::apply(), protocols::task_operations::RestrictToTerminiOperation::apply(), protocols::simple_moves::SetTorsion::apply(), protocols::task_operations::ProteinInterfaceDesignOperation::apply(), protocols::task_operations::RestrictToInterfaceVectorOperation::apply(), protocols::splice::Splice::apply(), protocols::enzdes::LigInterfaceEnergyFilter::apply(), protocols::analysis::InterfaceAnalyzerMover::apply_const(), protocols::peptide_deriver::PeptideDeriverMarkdownStreamOutputter::begin_structure(), protocols::evolution::EvolutionaryDynamicsMover::boltzmann(), protocols::monte_carlo::GenericMonteCarloMover::boltzmann(), protocols::denovo_design::components::calc_paired_residues(), chain_begin(), protocols::simple_filters::ResidueBurialFilter::compute(), protocols::evolution::AASynthesisFitnessCost::compute(), protocols::protein_interface_design::filters::AverageDegreeFilter::compute(), protocols::protein_interface_design::filters::RmsdSimpleFilter::compute(), protocols::protein_interface_design::filters::SSamountFilter::compute(), protocols::protein_interface_design::filters::SpecificResiduesNearInterfaceFilter::compute(), protocols::protein_interface_design::filters::AtomicContactCountFilter::compute(), protocols::indexed_structure_store::filters::FragmentLookupFilter::compute(), protocols::analysis::InterfaceAnalyzerMover::compute_interface_energy(), protocols::simple_filters::SSMotifFinder::compute_jump(), protocols::simple_filters::ResidueIEFilter::compute_resnums(), core::pose::conf2pdb_chain(), core::pose::conf2pdb_chain_default_map(), protocols::floppy_tail::create_extra_output(), protocols::seeded_abinitio::define_movemap_chains(), core::pack::hbonds::determine_atom_level_edge_info(), protocols::ligand_docking::InterfaceBuilder::enforce_minimum_length(), protocols::indexed_structure_store::extract_residue_entries(), protocols::splice::find_residues_on_chain1_inside_interface(), core::pack::hbonds::MCHBNetInteractionGraph::find_symmetric_hbonds(), protocols::forge::methods::fold_tree_from_loops(), protocols::forge::methods::fold_tree_from_pose(), protocols::motif_grafting::movers::MotifGraftMover::generate_scaffold_matches(), protocols::features::InterfaceFeatures::get_all_pose_chains(), core::conformation::symmetry::get_chain2range(), protocols::peptide_deriver::PeptideDeriverFilter::get_chain_indices(), protocols::indexed_structure_store::FragmentLookup::get_fragment_residue_spans(), core::pose::has_chain(), protocols::antibody::AntibodyInfo::identify_antibody(), protocols::floppy_tail::FloppyTailMover::init_on_new_input(), protocols::chemically_conjugated_docking::UBQ_GTPaseMover::initialize(), insert_conformation_by_jump(), protocols::denovo_design::components::make_lengths_str(), protocols::forge::build::SegmentRebuild::modify_impl(), core::conformation::Residue::orient_onto_residue_peptoid(), protocols::seeded_abinitio::DefineMovableLoops::parse_my_tag(), protocols::protein_interface_design::movers::TopologyBrokerMover::parse_my_tag(), protocols::seeded_abinitio::CloseFold::parse_my_tag(), protocols::simple_moves::SwitchChainOrderMover::parse_my_tag(), protocols::simple_ddg::ddG::parse_my_tag(), protocols::denovo_design::components::pose_matches_description(), protocols::peptide_deriver::PeptideDeriverFilter::prepare_pose(), protocols::denovo_design::components::prune_unpaired_residues(), protocols::pose_metric_calculators::ResidueDecompositionByChainCalculator::recompute(), protocols::denovo_design::components::reorder_chains(), protocols::analysis::InterfaceAnalyzerMover::reorder_foldtree_find_jump(), protocols::forge::remodel::RemodelLoopMover::repeat_generation_with_additional_residue(), protocols::forge::remodel::RemodelLoopMover::repeat_propagation(), protocols::denovo_design::components::reverse_chains(), core::io::external::PsiPredInterface::run_psipred(), core::io::external::PsiPredInterface::run_psipred_prob(), protocols::pmut_scan::AlterSpecDisruptionDriver::score(), core::select::residue_selector::ChainSelector::select_chain_by_index(), protocols::ligand_docking::MoveMapBuilder::set_all_chi(), protocols::anchored_design::AnchoredDesignMover::set_fold_tree_and_cutpoints(), protocols::splice::SpliceOutAntibody::set_fold_tree_nodes(), protocols::splice::SpliceInAntibody::set_fold_tree_nodes(), protocols::seeded_abinitio::SeedSetupMover::set_packerTasks_target_and_seeds(), protocols::hbnet::HBNet::set_symmetry(), protocols::analysis::InterfaceAnalyzerMover::setup_for_dock_chains(), core::scoring::methods::Abego::setup_for_scoring(), protocols::relax::membrane::MPFastRelaxMover::setup_relax_foldtree(), core::conformation::symmetry::setup_symmetric_conformation(), protocols::fldsgn::CircularPermutation::split_chains(), protocols::protein_interface_design::star_fold_tree(), protocols::features::InterfaceDdGMover::unbind(), and protocols::fldsgn::CircularPermutation::which_chain().

Conformation & core::conformation::Conformation::operator= ( Conformation const &  src)
virtual
virtual ParametersSetOP core::conformation::Conformation::parameters_set ( core::Size const  index)
inlinevirtual
virtual ParametersSetCOP core::conformation::Conformation::parameters_set ( core::Size const  index) const
inlinevirtual

Const access to one of the ParametersSets objects linked to this Conformation.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References parameters_set_.

virtual core::environment::DofPassportCOP core::conformation::Conformation::pop_passport ( )
inlinevirtual
void core::conformation::Conformation::pre_nresidue_change ( )
private

The Conformation must transfer lazily accumulated "moved" data from the AtomTree before changing the number of residues.

Copy any un-registered coordinate or DOF changes into the existing residues. For now, the AtomTree only tracks which Residues need external coordinate changes, and not internal coordinate changes. When internal coordinates go out-of-date in the atom tree, the "update_internal_coordinates" recursion begins at the root. Moreover, the Conformation updates internal coordinates for all residues when it updates. However, when this changes and the AtomTree starts tracking which residues need to have their internal coordinates updated, then it will be necessary to add a call to update_residue_torsions() here.

References update_residue_coordinates().

Referenced by append_polymer_residue_after_seqpos(), append_residue(), append_residue_by_bond(), append_residue_by_jump(), clear(), delete_polymer_residue(), delete_residue_range_slow(), delete_residue_slow(), insert_conformation_by_jump(), insert_polymer_residue(), insert_residue_by_bond(), insert_residue_by_jump(), prepend_polymer_residue_before_seqpos(), safely_append_polymer_residue_after_seqpos(), and safely_prepend_polymer_residue_before_seqpos().

void core::conformation::Conformation::prepend_polymer_residue_before_seqpos ( Residue const &  new_rsd,
Size const  seqpos,
bool const  build_ideal_geometry 
)
virtual
virtual void core::conformation::Conformation::push_passport ( core::environment::DofPassportCOP  )
inlinevirtual
void core::conformation::Conformation::rebuild_polymer_bond_dependent_atoms ( Size const  seqpos)
virtual
void core::conformation::Conformation::rebuild_polymer_bond_dependent_atoms ( Size const  seqpos,
int const  upper_lower 
)
private
void core::conformation::Conformation::rebuild_polymer_bond_dependent_atoms_this_residue_only ( Size const  seqpos)
void core::conformation::Conformation::rebuild_residue_connection_dependent_atoms ( Size  seqpos,
Size  connid 
)
void core::conformation::Conformation::receive_observers_from ( Conformation const &  src)

fire a ConnectionEvent::TRANSFER to transfer observers from some source Conformation

Parameters
srcTake observers from this source Conformation.
Remarks
Only observers that properly honor the TRANSFER event by re-attaching themselves to 'this' Conformation will be transferred.

References notify_connection_obs(), and core::conformation::signals::ConnectionEvent::TRANSFER.

void core::conformation::Conformation::rederive_chain_endings ( )
private
void core::conformation::Conformation::rederive_chain_ids ( )
private
void core::conformation::Conformation::replace_residue ( Size const  seqpos,
Residue const &  new_rsd_in,
bool const  orient_backbone 
)
virtual
void core::conformation::Conformation::replace_residue ( Size const  seqpos,
Residue const &  new_rsd_in,
utility::vector1< std::pair< std::string, std::string > > const &  atom_pairs 
)
virtual

function to replace a residue based on superposition on the specified input atom pairs

Note
NOTE: at the moment, only superposition on 3 atoms works Fires an IdentityEvent signal.

Reimplemented in core::conformation::symmetry::SymmetricConformation, core::conformation::symmetry::MirrorSymmetricConformation, and protocols::environment::ProtectedConformation.

References core::conformation::Residue::orient_onto_residue(), replace_residue(), and residues_.

void core::conformation::Conformation::reset_chain_endings ( )
virtual

Resets chain data so that the Conformation is marked as a single (chain number) chain.

See the documentation of Pose::num_chains() for details about chain numbers, chain letters and jumps.

Reimplemented in protocols::environment::ProtectedConformation.

References chain_endings_, and rederive_chain_ids().

Referenced by protocols::domain_assembly::AssembleLinkerMover::apply(), protocols::loop_grower::FragmentExtension::apply(), and protocols::fldsgn::CircularPermutation::apply().

void core::conformation::Conformation::reset_move_data ( )
virtual

forget all the structure modifications

called after domain map information is transferred to the Energies class

Reimplemented in protocols::environment::ProtectedConformation.

References dof_moved_, core::id::AtomID_Map< T >::fill_with(), structure_moved_, and xyz_moved_.

void core::conformation::Conformation::reset_residue_type_set_for_conf ( core::chemical::PoseResidueTypeSetCOP  new_set,
core::chemical::TypeSetMode  mode = core::chemical::INVALID_t 
)

Reset the Conformation-specific PoseResidueTypeSet for the appropriate mode to the given RTS. (If the given mode is INVALID_t (the recommended default) the mode will be auto-determined from the RTS.)

Reset the Conformation-specific PoseResidueTypeSet for the appropriat mode to the given RTS.

NOTE: You're potentially in for a bunch of trouble if the passed in set isn't a modified version of the value returned by modifiable_residue_type_set_for_conf() from this conformation. Also, a clone of the RTS is made, so subsequent edits to the RTS will not be reflected in the Conformation's RTS

References core::chemical::INVALID_t, residue_type_set_for_conf(), residue_type_sets_, core::chemical::CacheableResidueTypeSets::set_res_type_set(), and core::conformation::TR().

Referenced by protocols::ligand_docking::AddHydrogen::apply(), protocols::jd2::ScreeningJobInputter::pose_from_job(), and core::util::switch_to_residue_type_set().

void core::conformation::Conformation::reset_structure_moved ( ) const
inline

reset the structure_moved_ bool

References structure_moved_.

Residue const& core::conformation::Conformation::residue ( Size  seqpos) const
inline

access one of the residues

Note
this access is inlined, since otherwise it shows up in the profiler. This will call non-inlined refold methods if necessary.

update coordinates and torsions for this and all other residues before allowing read access

References residue_coordinates_need_updating_, residue_torsions_need_updating_, residues_, size(), update_residue_coordinates(), and update_residue_torsions().

Referenced by protocols::environment::EnvClaimBroker::add_chainbreak_variants(), core::pose::add_custom_variant_type_to_pose_residue(), core::conformation::add_variant_type_to_conformation_residue(), core::pose::add_variant_type_to_pose_residue(), core::conformation::carbohydrates::align_virtual_atoms_in_carbohydrate_residue(), core::conformation::annotated_atom_graph_from_conformation(), annotated_sequence(), protocols::protein_interface_design::movers::AddSidechainConstraintsToHotspots::apply(), protocols::simple_filters::SSMotifFinder::apply(), protocols::ligand_docking::WriteLigandMolFile::apply(), protocols::protein_interface_design::filters::FilterScanFilter::apply(), protocols::fold_from_loops::movers::NubInitioLoopClosureMover::apply(), protocols::protein_interface_design::movers::PlacementAuctionMover::apply(), protocols::splice::Splice::apply(), protocols::loops::loop_closure::kinematic_closure::KinematicMover::apply(), protocols::fold_from_loops::movers::NubInitioLoopClosureMover::apply_closure_trust(), protocols::generalized_kinematic_closure::perturber::GeneralizedKICperturber::apply_perturb_backbone_by_bins(), protocols::generalized_kinematic_closure::perturber::GeneralizedKICperturber::apply_randomize_backbone_by_bins(), protocols::pockets::PlaidFingerprint::apply_rotation_offset_to_pose_(), protocols::generalized_kinematic_closure::perturber::GeneralizedKICperturber::apply_set_backbone_bin(), protocols::pockets::ElectrostaticpotentialGrid::assign_esp_for_protein_grid_points(), protocols::simple_filters::atom_distance(), core::conformation::atom_graph_from_conformation(), core::conformation::membrane::MembraneInfo::atom_z_position(), protocols::pockets::PocketGrid::autoexpanding_pocket_eval(), bonded_neighbor_all_res(), core::conformation::break_disulfide(), protocols::pockets::PlaidFingerprint::calculate_ligand_CoM(), core::conformation::change_cys_state(), protocols::environment::collect_dofs(), protocols::simple_filters::ResidueBurialFilter::compute(), protocols::simple_filters::ResidueSelectionDistanceFilter::compute(), protocols::simple_filters::SidechainRmsdFilter::compute(), protocols::simple_filters::ResidueDistanceFilter::compute(), protocols::simple_filters::AngleToVector::compute(), protocols::protein_interface_design::filters::AverageDegreeFilter::compute(), protocols::enzdes::LigBurialFilter::compute(), protocols::matdes::OligomericAverageDegreeFilter::compute(), protocols::simple_filters::SSMotifFinder::compute_jump(), protocols::pockets::PlaidFingerprint::compute_ligand_natoms(), protocols::pockets::PlaidFingerprint::compute_ligand_natoms_with_hydrogens(), protocols::ligand_docking::ComputeLigandRDF::compute_rdf(), protocols::star::copy_residues(), copy_segment(), protocols::generalized_kinematic_closure::correct_polymer_dependent_atoms_in_pose_segment(), core::pose::correctly_add_2prime_connection_variants(), debug_residue_torsions(), core::conformation::symmetry::SymmetricConformation::declare_chemical_bond(), declare_chemical_bond(), core::pose::declare_cutpoint_chemical_bond(), detect_bonds(), core::conformation::symmetry::SymmetricConformation::detect_disulfides(), detect_disulfides(), detect_pseudobonds(), core::conformation::disulfide_bonds(), protocols::environment::dof_id_to_string(), protocols::pockets::PlaidFingerprint::dump_oriented_pose_and_fp_to_pdb(), protocols::viewer::dump_residue_kinemage(), protocols::viewer::dump_structure_kinemage(), protocols::pockets::EggshellGrid::EggshellGrid(), protocols::environment::EXCN_Env_Security_Exception::EXCN_Env_Security_Exception(), core::conformation::carbohydrates::fill_downstream_children_res_and_tips(), protocols::environment::find_implied_cut(), protocols::pockets::PocketGrid::findExemplars(), fix_disulfides(), core::conformation::form_disulfide(), core::conformation::form_disulfide_helper(), core::conformation::carbohydrates::get_carbohydrate_residues_and_tips_of_branch(), core::conformation::carbohydrates::get_distance_to_start(), core::conformation::get_disulf_partner(), core::conformation::carbohydrates::get_downstream_residue_that_this_torsion_moves(), core::scoring::orbitals::OrbitalsScore::get_E_haro_one_way(), core::scoring::orbitals::OrbitalsScore::get_E_hpol_one_way(), core::conformation::carbohydrates::get_glycan_connecting_protein_branch_point(), core::conformation::carbohydrates::get_glycan_start_points(), core::conformation::carbohydrates::get_glycosidic_bond_residues(), core::conformation::carbohydrates::get_glycosidic_TorsionIDs(), core::pose::get_hash_excluding_chain(), core::pose::get_hash_from_chain(), protocols::pockets::GenPharmacophore::get_ideal_hydrogenBond_atoms(), protocols::simple_moves::BackboneMover::get_mainchain_TorsionIDs(), core::conformation::carbohydrates::get_non_NU_TorsionID_from_AtomIDs(), core::scoring::orbitals::OrbitalsScore::get_orb_orb_E(), core::conformation::get_second_atom_from_connection(), core::pose::get_sha1_hash_excluding_chains(), core::pose::get_sha1_hash_from_chains(), core::conformation::symmetry::SymmetricConformation::get_upstream_vrt(), protocols::pockets::PocketGrid::getRelaxResidues(), core::conformation::carbohydrates::has_exocyclic_glycosidic_linkage(), core::conformation::idealize_position(), protocols::pockets::NonPlaidFingerprint::include_eggshell_points_based_on_known_ligand(), protocols::membrane::AddMembraneMover::initialize_membrane_residue(), core::conformation::symmetry::MirrorSymmetricConformation::insert_conformation_by_jump(), core::conformation::symmetry::SymmetricConformation::insert_conformation_by_jump(), insert_conformation_by_jump(), core::conformation::insert_ideal_bonds_at_polymer_junction(), core::conformation::insert_ideal_mainchain_bonds(), core::io::pose_from_sfr::is_connected(), core::conformation::is_disulfide_bond(), core::conformation::carbohydrates::is_glycosidic_omega_torsion(), core::conformation::carbohydrates::is_glycosidic_phi_torsion(), core::conformation::carbohydrates::is_glycosidic_psi_torsion(), core::conformation::is_ideal_position(), protocols::ligand_docking::ComputeLigandRDF::ligand_protein_rdf(), core::scoring::mm::MMBondAngleResidueTypeParamSet::lookup(), protocols::pockets::ElectrostaticpotentialGrid::mark_protein_espGrid_points(), core::conformation::membrane::MembraneInfo::membrane_center(), core::conformation::membrane::MembraneInfo::membrane_normal(), protocols::make_rot_lib::MakeRotLibMover::minimize_rotamer(), protocols::pockets::PocketGrid::move_pose_to_standard_orie(), core::conformation::carbohydrates::GlycanTreeSet::on_length_change(), core::conformation::Residue::orient_onto_residue_peptoid(), protocols::loops::loop_closure::kinematic_closure::KinematicMover::perform_bump_check(), protocols::splice::SpliceOut::place_cut_site_in_segment(), protocols::pockets::PlaidFingerprint::PlaidFingerprint(), protocols::pockets::PocketConstraint::PocketConstraint(), core::conformation::print_atom(), protocols::viewer::print_node(), protocols::ligand_docking::ComputeLigandRDF::protein_protein_rdf(), core::scoring::bin_transitions::BinTransitionCalculator::random_bin_based_on_prev_and_next(), core::scoring::bin_transitions::BinTransitionCalculator::random_mainchain_torsions_from_bin(), core::scoring::bin_transitions::BinTransitionCalculator::random_mainchain_torsions_from_bins(), core::pose::Pose::real_to_virtual(), core::conformation::symmetry::SymmetricConformation::recalculate_transforms(), core::conformation::symmetry::recenter(), core::conformation::remove_variant_type_from_conformation_residue(), core::pose::remove_variant_type_from_pose_residue(), core::conformation::replace_conformation_residue_copying_existing_coordinates(), protocols::simple_filters::res_res_min_distance(), protocols::simple_filters::res_rmsd(), protocols::protein_interface_design::filters::res_rmsd(), core::scoring::func::ConformationXYZ::residue(), core::conformation::symmetry::residue_center_of_mass(), residue_data(), core::conformation::residue_point_graph_from_conformation(), core::conformation::membrane::MembraneInfo::residue_z_position(), core::conformation::symmetry::return_nearest_residue(), protocols::pockets::PlaidFingerprint::rmsd(), protocols::environment::ClientMover::sandboxed_copy(), core::pose::symmetry::sealed_symmetric_fold_tree(), sequence_matches(), core::conformation::symmetry::set_fold_tree_from_symm_data(), protocols::pockets::PocketConstraint::set_target_res(), protocols::pockets::PocketConstraint::set_target_res_pdb(), protocols::star::setup_constraints(), protocols::medal::setup_coordinate_constraints(), core::scoring::methods::Abego::setup_for_scoring(), core::conformation::carbohydrates::GlycanTree::setup_glycan_nodes(), core::io::pose_from_sfr::show_residue_connections(), protocols::protein_interface_design::movers::PlaceStubMover::StubMinimize(), protocols::calc_taskop_filters::RelativePoseFilter::thread_seq(), torsion(), core::conformation::carbohydrates::GlycanNode::update_connectivity_data(), core::conformation::update_cutpoint_virtual_atoms_if_connected(), core::conformation::symmetry::SymmetricConformation::update_noncanonical_connection(), core::conformation::symmetry::MirrorSymmetricConformation::update_residue_identities(), core::pose::Pose::virtual_to_real(), core::conformation::ConformationKinWriter::write_coords(), and protocols::environment::claims::XYZClaim::yield_elements().

Residue& core::conformation::Conformation::residue_ ( Size  seqpos)
inlineprivate

Returns a non-constant residue reference without triggering coordinate/torsion update.

Use with care. Useful inside torsion/coordinate setters where we want chemical info about a given residue but don't want to trigger the coordinate/torsion updates that go along with a call to residue(seqpos).

Note
APL – Conformation should not give out non-const access to its residues even to derived classes. This function should not be called by derived classes.

References residues_, and size().

Referenced by append_polymer_residue_after_seqpos(), append_residue_by_bond(), apply_transform_Rx_plus_v(), detect_pseudobonds(), fill_missing_atoms(), insert_polymer_residue(), insert_residue_by_bond(), insert_residue_by_jump(), prepend_polymer_residue_before_seqpos(), rebuild_polymer_bond_dependent_atoms(), rebuild_residue_connection_dependent_atoms(), residue_data(), set_polymeric_connection(), and sever_chemical_bond().

ResidueCOP core::conformation::Conformation::residue_cop ( Size  seqpos) const
inline
basic::datacache::BasicDataCache const& core::conformation::Conformation::residue_data ( Size  seqpos) const
inline

Read access to the datacache array stored inside a Residue object. Also accessible to the user by calling residue( seqpos ).data_ptr() directly.

The purpose of the residue-level data cache is so that scoring terms may store coordinate-derived information in a Residue (perhaps a Residue that does not belong to a Conformation) so that it can be used during scoring evaluation.

References core::conformation::Residue::data_ptr(), and residue().

basic::datacache::BasicDataCache& core::conformation::Conformation::residue_data ( Size  seqpos)
inline

Write access to the datacache array stored inside a Residue object. Although the Conformation very deliberately does not grant users write access to the whole of its Residue objects, it will grant users access to the Residue objects data cache. So while the coordinates and dihedrals of the Residue will not be changable e.g. during the setup-for-scoring phase, data derived from those coordinates and dihedrals and which ends up living in the Residue will be changable.

The purpose of the residue-level data cache is so that scoring terms may store coordinate-derived information in a Residue (perhaps a Residue that does not belong to a Conformation) so that it can be used during scoring evaluation. Accessing the residue_data will trigger a coordinate (or torsion) update.

References core::conformation::Residue::nonconst_data_ptr(), residue_(), residue_coordinates_need_updating_, residue_torsions_need_updating_, size(), update_residue_coordinates(), and update_residue_torsions().

chemical::ResidueType const& core::conformation::Conformation::residue_type ( Size  seqpos) const
inline
chemical::ResidueTypeCOP core::conformation::Conformation::residue_type_ptr ( Size  seqpos) const
inline

access one of the residue's types as a COP – avoids coord/torsion update

References residues_, and size().

core::chemical::ResidueTypeSetCOP core::conformation::Conformation::residue_type_set_for_conf ( core::chemical::TypeSetMode  mode = core::chemical::INVALID_t) const
core::chemical::TypeSetMode core::conformation::Conformation::residue_typeset_mode ( bool  majority = true) const
void core::conformation::Conformation::residues_append ( Residue const &  new_rsd,
bool  start_new_chain,
bool  by_jump = false,
std::string const &  root_atom = "",
id::NamedAtomID  anchor_id = id::NamedAtomID::BOGUS_NAMED_ATOM_ID() 
)
private

PRIVATE: wrap direct access to the Residues container for appending

Warning
Since this is the innermost routine when replacing a residue, it does not fire any signals to ensure that observer access to the residues container does not trigger an atom tree refold prematurely.

References core::id::NamedAtomID::atom(), core::id::NamedAtomID::BOGUS_NAMED_ATOM_ID(), core::conformation::Residue::clone(), dof_moved_, core::conformation::Residue::natoms(), rederive_chain_endings(), rederive_chain_ids(), residues_, core::id::AtomID_Map< T >::resize(), core::id::NamedAtomID::rsd(), secstruct_, structure_moved_, core::conformation::TR(), update_noncanonical_connection(), update_polymeric_connection(), and xyz_moved_.

Referenced by append_residue().

void core::conformation::Conformation::residues_delete ( Size  seqpos)
private

PRIVATE: wrap direct access to the Residues container for replacement also handles redimensioning and setting of the _moved arrays and updating of sequence numbers

Warning
Since this is the innermost routine when replacing a residue, it does not fire any signals to ensure that observer access to the residues container does not trigger an atom tree refold prematurely.

References rederive_chain_endings(), rederive_chain_ids(), residues_, secstruct_, update_polymeric_connection(), and update_sequence_numbering().

Referenced by delete_polymer_residue(), delete_residue_range_slow(), and delete_residue_slow().

void core::conformation::Conformation::residues_insert ( Size  seqpos,
Residue const &  new_rsd,
bool  use_lower_chain = false,
bool  new_chain = false 
)
private

PRIVATE: wrap direct access to the Residues container for replacement also handles redimensioning and setting of the _moved arrays and updating of sequence numbers

Warning
Since this is the innermost routine when replacing a residue, it does not fire any signals to ensure that observer access to the residues container does not trigger an atom tree refold prematurely.

References core::conformation::Residue::clone(), dof_moved_, core::conformation::Residue::name(), core::conformation::Residue::natoms(), rederive_chain_endings(), residues_, secstruct_, structure_moved_, update_polymeric_connection(), update_sequence_numbering(), and xyz_moved_.

Referenced by insert_polymer_residue(), insert_residue_by_bond(), and insert_residue_by_jump().

void core::conformation::Conformation::residues_replace ( Size  seqpos,
Residue const &  new_rsd 
)
private

wrap direct access to the Residues container

PRIVATE: wrap direct access to the Residues container for replacement also handles redimensioning and setting of the _moved arrays

Warning
Since this is the innermost routine when replacing a residue, it does not fire any signals to ensure that observer access to the residues container does not trigger an atom tree refold prematurely.

References core::conformation::Residue::clone(), dof_moved_, core::conformation::Residue::natoms(), residues_, structure_moved_, and xyz_moved_.

Referenced by replace_residue().

void core::conformation::Conformation::safely_append_polymer_residue_after_seqpos ( Residue const &  new_rsd,
Size const  seqpos,
bool const  build_ideal_geometry 
)
virtual
void core::conformation::Conformation::safely_prepend_polymer_residue_before_seqpos ( Residue const &  new_rsd,
Size const  seqpos,
bool const  build_ideal_geometry 
)
virtual
bool core::conformation::Conformation::same_type_as_me ( Conformation const &  other,
bool const  recurse = true 
) const
virtual
char core::conformation::Conformation::secstruct ( Size  seqpos) const
inline
bool core::conformation::Conformation::sequence_matches ( Conformation const &  other) const

do the names of all residues in this and src match?

Am I composed of the same sequence of ResidueType objects as other? DANGER! Fails, unexpectedly, if a histidine pair has a different tautomerization. tex, 9/12/08 The above comment points out that this method isn't a clearly defined idea, because there are many ways that someone could imagine comparing the a sequence, including:

  • cutpoint variants
  • tautomers
  • disulfides For some applications, it's probably to get strings of the one-letter names of the sequence and compare those instead.

References core::conformation::Residue::chain(), core::conformation::Residue::connections_match(), residue(), size(), and core::conformation::Residue::type().

Referenced by operator=(), protocols::design_opt::GreedyOptMutationMover::pose_coords_are_same(), and protocols::matdes::MatDesGreedyOptMutationMover::pose_coords_are_same().

void core::conformation::Conformation::set_bond_angle ( AtomID const &  atom1,
AtomID const &  atom2,
AtomID const &  atom3,
Real const  setting 
)
virtual
void core::conformation::Conformation::set_bond_length ( AtomID const &  atom1,
AtomID const &  atom2,
Real const  setting 
)
virtual
void core::conformation::Conformation::set_dof ( DOF_ID const &  id,
Real const  setting 
)
virtual
void core::conformation::Conformation::set_dof_moved ( AtomID const &  id)
inlineprivate
void core::conformation::Conformation::set_dof_moved ( DOF_ID const &  id)
inlineprivate

notify of dof-change

References dof_moved_, residue_coordinates_need_updating_, and structure_moved_.

void core::conformation::Conformation::set_jump ( int const  jump_number,
Jump const &  new_jump 
)
virtual
void core::conformation::Conformation::set_jump ( AtomID const &  id,
Jump const &  new_jump 
)
virtual
void core::conformation::Conformation::set_jump_atom_stub_id ( id::StubID const &  id)

References atom_tree_.

void core::conformation::Conformation::set_membrane_info ( membrane::MembraneInfoOP  mem_info)

Setup a Membrane Info object in Conformation - pos & topology.

Rosetta Membrane Framework /// Core data for interacting with membrane proteins in Rosetta /// /// Authors: ///

Add a MembraneInfo object - describes the position of the membrane virtual residue, information on membrane spanning regions, lipid exposure/burial of residues in the pose, and fullatom steepness and thickness parameters. At construction, specify membrane position and list of spanning topology objects by chain.

Add a MembraneInfo object - describes the position of the membrane virtual residue, information on membrane spanning regions, lipid exposure/burial of residues in the pose, and fullatom steepness and thickness parameters. At construction, specify membrane position and list of spanning topology objects by chain.

References membrane_info_.

Referenced by protocols::membrane::AddMembraneMover::apply().

void core::conformation::Conformation::set_noncanonical_connection ( Size  res_id_lower,
Size  lr_conn_id,
Size  res_id_upper,
Size  ur_conn_id 
)
void core::conformation::Conformation::set_polymeric_connection ( Size  res_id_lower,
Size  res_id_upper 
)
virtual

identify polymeric connections

The lower residue connects to the upper residue through its upper_connect connection The upper residue connects to the lower residue through its lower_connect connection

Reimplemented in protocols::environment::ProtectedConformation.

References residue_(), and residues_.

Referenced by update_polymeric_connection().

virtual void core::conformation::Conformation::set_secstruct ( Size const  seqpos,
char const  setting 
)
inlinevirtual

Sets the secondary structure of the position <seqpos> to <setting>

Sets secondary structure character of a sequence position. Will resize the secondary structure array if the requested sequence position is larger than the length of the array.

Reimplemented in core::conformation::symmetry::SymmetricConformation, and protocols::environment::ProtectedConformation.

References secstruct_.

Referenced by protocols::environment::ProtectedConformation::set_secstruct(), and core::conformation::symmetry::SymmetricConformation::set_secstruct().

void core::conformation::Conformation::set_stub_transform ( id::StubID const &  stub_id1,
id::StubID const &  stub_id2,
kinematics::RT const &  target_rt 
)
virtual
void core::conformation::Conformation::set_torsion ( TorsionID const &  tor_id,
Real const  setting 
)
virtual
void core::conformation::Conformation::set_torsion_angle ( AtomID const &  atom1,
AtomID const &  atom2,
AtomID const &  atom3,
AtomID const &  atom4,
Real const  setting,
bool const  quiet = false 
)
virtual

Sets the torsion angle defined by <atom[1-4]> to <setting>

Reimplemented in core::conformation::symmetry::SymmetricConformation, protocols::environment::ProtectedConformation, and core::conformation::symmetry::MirrorSymmetricConformation.

References align_virtual_atoms_in_carbohydrate_residue(), atom_tree_, residue_torsions_need_updating_, residues_, core::id::AtomID::rsd(), set_dof_moved(), and core::conformation::TR().

Referenced by protocols::simple_moves::oop::OopMover::apply(), protocols::simple_moves::triazolamer::TriazolamerMover::apply(), protocols::simple_moves::chiral::ChiralMover::apply(), protocols::simple_moves::TorsionDOFMover::apply(), protocols::simple_moves::SetTorsion::apply(), core::pose::correctly_add_2prime_connection_variants(), protocols::topology_broker::fix_mainchain_connect(), protocols::abinitio::abscript::fix_mainchain_connect(), protocols::generalized_kinematic_closure::general_set_phi(), protocols::generalized_kinematic_closure::general_set_psi(), protocols::frags::TorsionFragment::insert(), protocols::pose_metric_calculators::SemiExplicitWaterUnsatisfiedPolarsCalculator::semiexpl_water_hbgeom_score(), core::conformation::carbohydrates::set_glycosidic_torsion(), protocols::generalized_kinematic_closure::set_loop_pose(), core::conformation::symmetry::MirrorSymmetricConformation::set_torsion_angle(), core::conformation::symmetry::SymmetricConformation::set_torsion_angle(), protocols::simple_moves::triazolamer::TriazolamerMover::update_hydrogens_(), and protocols::simple_moves::oop::OopMover::update_hydrogens_().

void core::conformation::Conformation::set_xyz ( AtomID const &  id,
PointPosition const &  position 
)
virtual
void core::conformation::Conformation::set_xyz_moved ( AtomID const &  id)
inlineprivate

notify of xyz-change

References residue_torsions_need_updating_, structure_moved_, and xyz_moved_.

Referenced by batch_set_xyz(), and set_xyz().

void core::conformation::Conformation::set_xyz_moved ( utility::vector1< AtomID > const &  ids)
inlineprivate

notify of mutiple-xyz-change

References residue_torsions_need_updating_, structure_moved_, and xyz_moved_.

void core::conformation::Conformation::setup_atom_tree ( )
private
void core::conformation::Conformation::setup_glycan_trees ( )
void core::conformation::Conformation::sever_chemical_bond ( Size  seqpos1,
Size  res1_resconn_index,
Size  seqpos2,
Size  res2_resconn_index 
)
virtual

Sever the chemical bond between two residues by stating that the connections for those residues are "incomplete" (i.e. in a state where these residues are not ready to be scored).

References core::conformation::Residue::mark_connect_incomplete(), and residue_().

Referenced by core::pose::correctly_add_2prime_connection_variants(), and core::pose::declare_cutpoint_chemical_bond().

void core::conformation::Conformation::show_residue_connections ( ) const

Show residue connections for debugging purposes.

References core::conformation::TR().

Referenced by core::conformation::operator<<().

void core::conformation::Conformation::show_residue_connections ( std::ostream &  os) const

Show residue connections for debugging purposes.

Note
This method is a rewrite of an earlier version to include an argument for desired output stream. This is to be more consistent with typical show() methods and allows for simple << operator overloading for use in PyRosetta. ~ Labonte

References core::conformation::Residue::connect_map(), core::chemical::ResConnID::connid(), core::conformation::Residue::n_non_polymeric_residue_connections(), core::conformation::Residue::n_polymeric_residue_connections(), core::conformation::Residue::n_possible_residue_connections(), core::conformation::Residue::name(), core::chemical::ResConnID::resid(), core::conformation::Residue::residue_connect_atom_index(), residues_, and size().

Size core::conformation::Conformation::size ( ) const
inline

Returns the number of residues in the Conformation.

References residues_.

Referenced by aa(), protocols::denovo_design::components::add_to_pose(), protocols::environment::EnvClaimBroker::add_virtual_residues(), core::conformation::annotated_atom_graph_from_conformation(), annotated_sequence(), append_polymer_residue_after_seqpos(), append_residue(), append_residue_by_bond(), append_residue_by_jump(), core::conformation::symmetry::SymmetricConformation::apply_transform_Rx_plus_v(), apply_transform_Rx_plus_v(), core::conformation::atom_graph_from_conformation(), core::chemical::ICoorAtomID::atom_id(), protocols::idealize::basic_idealize(), core::conformation::break_disulfide(), protocols::environment::EnvClaimBroker::broker_fold_tree(), chain_end(), chain_endings(), chains_from_termini(), protocols::environment::collect_dofs(), Conformation(), const_residue_(), const_residues(), copy_segment(), debug_residue_torsions(), delete_polymer_residue(), delete_residue_range_slow(), delete_residue_slow(), detect_bonds(), core::conformation::symmetry::SymmetricConformation::detect_disulfides(), detect_disulfides(), detect_pseudobonds(), core::conformation::disulfide_bonds(), protocols::viewer::dump_residue_kinemage(), protocols::viewer::dump_structure_kinemage(), core::scoring::disulfides::FullatomDisulfideEnergy::ensure_lrenergy_container_is_up_to_date(), fill_missing_atoms(), protocols::environment::find_implied_cut(), protocols::simple_moves::asym_fold_and_dock::AsymFoldandDockMoveRbJumpMover::find_new_jump_residue(), core::pose::symmetry::find_new_symmetric_jump_residues(), fix_disulfides(), fold_tree(), core::conformation::get_disulf_partner(), core::conformation::carbohydrates::get_glycan_start_points(), core::conformation::idealize_position(), in_place_copy(), core::pose::initialize_atomid_map(), core::pose::initialize_atomid_map_heavy_only(), insert_chain_ending(), core::conformation::symmetry::MirrorSymmetricConformation::insert_conformation_by_jump(), core::conformation::symmetry::SymmetricConformation::insert_conformation_by_jump(), insert_conformation_by_jump(), core::conformation::insert_ideal_bonds_at_polymer_junction(), core::conformation::insert_ideal_mainchain_bonds(), insert_polymer_residue(), insert_residue_by_bond(), insert_residue_by_jump(), core::conformation::Residue::inter_residue_connection_partner(), core::conformation::is_ideal_position(), core::conformation::signals::LengthEvent::LengthEvent(), core::pose::symmetry::make_symmetric_movemap(), operator=(), core::conformation::Residue::orient_onto_residue_peptoid(), prepend_polymer_residue_before_seqpos(), core::conformation::symmetry::process_residue_request(), core::scoring::bin_transitions::BinTransitionCalculator::random_bin_based_on_prev_and_next(), core::conformation::symmetry::SymmetricConformation::recalculate_transforms(), core::conformation::symmetry::recenter(), rederive_chain_endings(), rederive_chain_ids(), protocols::fibril::reorient_extended_fibril(), residue(), residue_(), residue_cop(), residue_data(), core::conformation::residue_point_graph_from_conformation(), residue_type(), residue_type_ptr(), residue_typeset_mode(), protocols::hybridization::DomainAssembly::run(), sequence_matches(), core::conformation::symmetry::set_fold_tree_from_symm_data(), core::conformation::carbohydrates::GlycanTreeSet::setup_glycan_trees(), core::conformation::symmetry::setup_symmetric_conformation(), show_residue_connections(), protocols::environment::Environment::start(), core::conformation::symmetry::symmetrize_fold_tree(), update_actcoords(), update_domain_map(), core::conformation::symmetry::SymmetricConformation::update_noncanonical_connection(), update_noncanonical_connection(), update_polymeric_connection(), core::conformation::parametric::ParametersSet::update_residue_links(), update_residue_torsions(), update_sequence_numbering(), and core::conformation::ConformationKinWriter::write_coords().

bool core::conformation::Conformation::structure_moved ( ) const
inline
kinematics::Stub core::conformation::Conformation::stub_from_id ( id::StubID const &  id) const

References atom_tree_.

Real core::conformation::Conformation::torsion ( TorsionID const &  tor_id) const
Real core::conformation::Conformation::torsion_angle ( AtomID const &  atom1,
AtomID const &  atom2,
AtomID const &  atom3,
AtomID const &  atom4 
) const
void core::conformation::Conformation::unblock_signals ( )

allow signals to be sent

If unblocking after buffering, buffered/held signals will be sent.

References general_obs_hub_, identity_obs_hub_, length_obs_hub_, and xyz_obs_hub_.

Referenced by protocols::denovo_design::add_residues_to_pose(), and delete_residue_slow().

void core::conformation::Conformation::update_actcoord ( Size  resid)
void core::conformation::Conformation::update_actcoords ( )

References residues_, and size().

void core::conformation::Conformation::update_domain_map ( DomainMap domain_map) const

Generate a domain_map from the current dof/xyz moved data.

References atom_tree_, dof_moved_, size(), and xyz_moved_.

Referenced by protocols::rna::movers::RNA_LoopCloser::passes_fast_scan().

void core::conformation::Conformation::update_membrane_position ( Vector  center,
Vector  normal 
)
void core::conformation::Conformation::update_noncanonical_connection ( Size  lower_seqpos,
Size  lr_conn_id,
Size  upper_seqpos,
Size  ur_conn_id 
)
virtual
void core::conformation::Conformation::update_orbital_coords ( Residue rsd) const
void core::conformation::Conformation::update_orbital_coords ( Size  resid)

References residues_.

void core::conformation::Conformation::update_polymeric_connection ( Size  lower_seqpos,
bool  update_connection_dep_atoms = false 
)
void core::conformation::Conformation::update_residue_coordinates ( ) const
private

Will (if necessary) copy the xyz coordinates from the AtomTree to the Residues being managed.

The AtomTree is responsible for tracking the set of residues whose coordinates need updating, and informs the Conformation object of these residues. The Conformation only updates coordinates for this subset of residues.

Note
Always safe to call. Nothing will happen unless coords_need_updating_ is true.

References atom_tree_, notify_xyz_obs(), and residue_coordinates_need_updating_.

Referenced by append_polymer_residue_after_seqpos(), append_residue_by_bond(), debug_residue_torsions(), fill_missing_atoms(), fold_tree(), force_update_residue_coordinates(), insert_residue_by_bond(), pre_nresidue_change(), rebuild_polymer_bond_dependent_atoms(), rebuild_residue_connection_dependent_atoms(), residue(), residue_cop(), residue_data(), torsion(), and torsion_angle().

void core::conformation::Conformation::update_residue_coordinates ( Size  seqpos,
bool  fire_signal = true 
) const
private
void core::conformation::Conformation::update_residue_torsions ( ) const
private

Will (if necessary) copy the torsion angles (mainchain/chi) from the AtomTree to the Residues being managed.

Note
Always safe to call. Nothing will happen unless torsions_need_updating_ is true.

References notify_xyz_obs(), residue_torsions_need_updating_, residues_, and size().

Referenced by debug_residue_torsions(), declare_chemical_bond(), force_update_residue_torsions(), residue(), residue_cop(), residue_data(), setup_atom_tree(), and torsion().

void core::conformation::Conformation::update_residue_torsions ( Size  seqpos,
bool  fire_signal = true 
) const
private
void core::conformation::Conformation::update_sequence_numbering ( Size  new_size,
utility::vector1< Size > const &  old2new 
)
private

remap *_moved arrays, sequence numbering in the residues_ arrays, etc, after insertion or deletion of rsds

private need to update:

  1. seqpos of Residues, residue_connection_partners_ info in Residues
  2. xyz_moved, dof_moved

References dof_moved_, residues_, size(), core::id::AtomID_Map< T >::update_sequence_numbering(), and xyz_moved_.

Referenced by insert_conformation_by_jump(), residues_delete(), and residues_insert().

kinematics::Stub core::conformation::Conformation::upstream_jump_stub ( int  jump_number) const

The upstream and downstream Stubs are the coordinate frames between which this jump is transforming.

References atom_tree_, and jump_atom_id().

Referenced by protocols::protein_interface_design::movers::SpinMover::apply(), protocols::rigid::RotateJumpAxisMover::apply(), protocols::nonlocal::SheetTranslate::apply(), protocols::nonlocal::HelixRotate::apply(), protocols::docking::EllipsoidalRandomizationMover::apply(), protocols::simple_moves::UniformRotationMover::apply(), protocols::rigid::WholeBodyTranslationMover::apply(), protocols::denovo_design::movers::RotateSegmentMover::apply(), protocols::rigid::WholeBodyRotationMover::apply(), protocols::membrane::TranslationMover::apply(), protocols::simple_moves::UniformTranslationMover::apply(), protocols::membrane::RotationMover::apply(), protocols::rigid::RigidBodyRandomizeMover::apply(), protocols::rigid::RigidBodySpinMover::apply(), protocols::rigid::RigidBodyDeterministicSpinMover::apply(), protocols::rigid::RigidBodyTiltMover::apply(), protocols::rigid::RigidBodyTransMover::apply(), protocols::toolbox::apply_superposition_transform_to_jump(), core::scoring::DockingScoreFunction::operator()(), protocols::ligand_docking::LigandDockProtocol::optimize_orientation3(), protocols::anchored_design::AnchoredDesignMover::perturb_anchor(), protocols::flexpep_docking::FlexPepDockingProtocol::place_peptide_on_binding_site(), protocols::hotspot_hashing::StubGenerator::placeResidueOnPose(), core::pose::symmetry::rotate_anchor_to_x_axis(), protocols::rna::denovo::coarse::MultipleDomainMover::slide_back_to_origin(), protocols::rna::denovo::coarse::MultipleDomainMover::try_to_slide_into_contact(), and protocols::environment::CoMTrackerCM::update_tracking_residue().

PointPosition const & core::conformation::Conformation::xyz ( AtomID const &  id) const

Friends And Related Function Documentation

friend class ::ConformationTests
friend

Member Data Documentation

AtomTreeOP core::conformation::Conformation::atom_tree_
private
utility::vector1< Size > core::conformation::Conformation::chain_endings_
private

chain number for each position

conformation is in charge of making sure that the Residue chain ID's and the chain_endings_ vector stay in sync.

Referenced by chain_begin(), chain_end(), chain_endings(), chains_from_termini(), clear(), Conformation(), delete_chain_ending(), in_place_copy(), insert_chain_ending(), insert_conformation_by_jump(), num_chains(), operator=(), rederive_chain_endings(), rederive_chain_ids(), and reset_chain_endings().

utility::signals::BufferedSignalHub< void, ConnectionEvent > core::conformation::Conformation::connection_obs_hub_
mutableprivate

ConnectionEvent observers.

Remarks
Notification only occurs when there is a change in the state of the connection between observers and the Conformation object, e.g. destruction or transfer of the connection.

Referenced by attach_connection_obs(), clear_observers(), detach_connection_obs(), and notify_connection_obs().

bool core::conformation::Conformation::contains_carbohydrate_residues_
private
AtomID_Mask core::conformation::Conformation::dof_moved_
private

book-keeping array for energy evaluations

store which DOF's have changed since the last call to reset_move_data note that we are not currently differentiating dof's from the same atom

Referenced by append_polymer_residue_after_seqpos(), clear(), Conformation(), in_place_copy(), insert_conformation_by_jump(), operator=(), prepend_polymer_residue_before_seqpos(), reset_move_data(), residues_append(), residues_insert(), residues_replace(), set_dof_moved(), update_domain_map(), and update_sequence_numbering().

FoldTreeOP core::conformation::Conformation::fold_tree_
private
utility::signals::PausableSignalHub< void, GeneralEvent > core::conformation::Conformation::general_obs_hub_
mutableprivate

GeneralEvent observers.

Remarks
GeneralEvent observers will be notified whenever any signal derived from GeneralEvent occurs.

Referenced by attach_general_obs(), block_signals(), blocking_signals(), buffer_signals(), buffering_signals(), clear_observers(), debug_pause(), detach_general_obs(), notify_general_obs(), and unblock_signals().

utility::signals::BufferedSignalHub< void, IdentityEvent > core::conformation::Conformation::identity_obs_hub_
mutableprivate
utility::signals::BufferedSignalHub< void, LengthEvent > core::conformation::Conformation::length_obs_hub_
mutableprivate
membrane::MembraneInfoOP core::conformation::Conformation::membrane_info_
private
utility::vector1< ParametersSetOP > core::conformation::Conformation::parameters_set_
private

Parameter sets for parametric conformation generation.

This is a list of pointers to parameter set objects. The list is empty by default; the list only contains anything if the conformation has parametrically-generated bits. Each ParametersSet is intended to describe an assemblage of secondary structure (e.g. a helical bundle); each Parameters object in a ParametersSet is intended to describe a single piece of (likely contiguous) structure (e.g. a single helix in a helical bundle).

Referenced by add_parameters_set(), clear(), clear_parameters_set_list(), Conformation(), create_new_parameters_set(), in_place_copy(), n_parameters_sets(), operator=(), and parameters_set().

bool core::conformation::Conformation::residue_coordinates_need_updating_
mutableprivate
bool core::conformation::Conformation::residue_torsions_need_updating_
mutableprivate
core::chemical::CacheableResidueTypeSets core::conformation::Conformation::residue_type_sets_
private

Any Conformation-specific ResidueTypes are stored here. Note: The ResidueTypeSets contained herein can be shared by multiple Conformations, and should have copy-on-write semantics.

Referenced by clear(), Conformation(), in_place_copy(), modifiable_residue_type_set_for_conf(), operator=(), reset_residue_type_set_for_conf(), and residue_type_set_for_conf().

ResidueOPs core::conformation::Conformation::residues_
private
utility::vector1< char > core::conformation::Conformation::secstruct_
private
bool core::conformation::Conformation::structure_moved_
mutableprivate
carbohydrates::GlycanTreeSetObserverOP core::conformation::Conformation::tree_set_observer_ = nullptr
private

GlycanTreeSetObserver Object.

Referenced by clear_glycan_trees(), Conformation(), glycan_tree_set(), operator=(), and setup_glycan_trees().

AtomID_Mask core::conformation::Conformation::xyz_moved_
private
utility::signals::BufferedSignalHub< void, XYZEvent > core::conformation::Conformation::xyz_obs_hub_
mutableprivate

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