Rosetta 3.4
Public Types | Public Member Functions | Protected Member Functions
protocols::forge::build::SegmentRebuild Class Reference

instruction to rebuild a segment More...

#include <SegmentRebuild.hh>

Inheritance diagram for protocols::forge::build::SegmentRebuild:
Inheritance graph
[legend]
Collaboration diagram for protocols::forge::build::SegmentRebuild:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Super::Size Size
typedef Super::Real Real
typedef Super::ResidueTypeSetCAP ResidueTypeSetCAP
typedef Super::LengthEvent LengthEvent
typedef Super::MoveMap MoveMap
typedef Super::Pose Pose
typedef Super::Positions Positions
typedef Super::String String

Public Member Functions

 SegmentRebuild ()
 default constructor
 SegmentRebuild (Interval const &i, String const &ss, ResidueTypeSetCAP rts=core::chemical::ChemicalManager::get_instance()->residue_type_set(core::chemical::FA_STANDARD), bool const keep_known_bb_torsions_at_junctions=false)
 sec.struct only constructor (poly-alanine for new region)
 SegmentRebuild (Interval const &i, String const &ss, String const &aa, ResidueTypeSetCAP rts=core::chemical::ChemicalManager::get_instance()->residue_type_set(core::chemical::FA_STANDARD), bool const keep_known_bb_torsions_at_junctions=false)
 full constructor
 SegmentRebuild (SegmentRebuild const &rval)
 copy constructor
virtual ~SegmentRebuild ()
 default destructor
SegmentRebuildoperator= (SegmentRebuild const &rval)
 copy assignment
virtual BuildInstructionOP clone () const
 clone this object
String const & ss () const
 get secondary structure string
String const & aa () const
 get annotated amino acid string
bool keep_known_bb_torsions_at_junctions () const
 Attempt to keep the omega at original_interval().left-1, the phi at original_interval().left and the psi+omega at original_interval().right present from the original Pose in the modified Pose? Default False.
virtual bool original_interval_valid () const
 is the original interval storing valid information, or is empty or being used for something else?
virtual Interval interval () const
 a copy of the working range of residues specifying the modified region
virtual Positions preexisting_positions () const
 return a copy of the set of positions within the new region that were pre-existing in the original Pose prior to modify()
virtual Positions new_positions () const
 return a copy of the set of positions that are "new" and did not exist in the original Pose.
virtual Positions defined_positions () const
 return a copy of the set of positions within the newly modified region that has a defined conformation. E.g. existing or copied residues.
virtual Positions undefined_positions () const
 return a copy of the set of positions within the newly modified region that has an undefined conformation. E.g. newly created residues.
virtual MoveMap movemap () const
 return a copy of the MoveMap that defines the moveable/fixed positions/dofs for this instruction
virtual void on_residue_append (LengthEvent const &event)
 update indexing on residue append
virtual void on_residue_prepend (LengthEvent const &event)
 update indexing on residue prepend
virtual void on_residue_delete (LengthEvent const &event)
 update indexing on residue delete
virtual Positions original_kept_positions () const
 return the set of positions within the original interval that will be kept in this BuildInstruction
virtual Positions original_deleted_positions () const
 return set of positions within the original interval that will be deleted in this BuildInstruction
virtual Positions original_fixed_positions () const
 return set of any fixed positions necessary with respect to the original interval and original Pose numbering
virtual Positions original_mutable_positions () const
 return set of any mutable positions necessary with respect to the original interval and original Pose numbering
virtual bool creates_undefined_backbone () const
 does this object create undefined backbone in the modified region?

Protected Member Functions

virtual bool dependencies_satisfied () const
 are dependencies satisfied so that modify_impl() can complete successfully?
virtual void modify_impl (Pose &pose)
 do the actual work of modifying the Pose
virtual void reset_accounting_impl ()
 do the actual reset of intervals, positions, etc to initial state

Detailed Description

instruction to rebuild a segment

Remarks:
Handles both cut based rebuilding (i.e. loops) and continuous rebuilding adjacent to the boundary of a chain, such as n-term/c-term extensions.

Member Typedef Documentation


Constructor & Destructor Documentation

protocols::forge::build::SegmentRebuild::SegmentRebuild ( )

default constructor

Referenced by clone().

protocols::forge::build::SegmentRebuild::SegmentRebuild ( Interval const &  i,
String const &  ss,
ResidueTypeSetCAP  rts = core::chemical::ChemicalManager::get_instance()->residue_type_set( core::chemical::FA_STANDARD ),
bool const  keep_known_bb_torsions_at_junctions = false 
)

sec.struct only constructor (poly-alanine for new region)

Parameters:
[in]intervalrebuild this range of residues
[in]ssthe secondary structure desired, also defines length of new build region
[in]rtsthe residue type set to use, default FA_STANDARD
[in]keep_known_bb_torsions_at_junctionsAttempt to keep the omega at original_interval().left-1, the phi at original_interval().left, and the psi+omega at original_interval().right present from the original Pose in the modified Pose.
Remarks:
length of the *one-letter* aa must equal the length of ss

References core::pose::annotated_to_oneletter_sequence().

protocols::forge::build::SegmentRebuild::SegmentRebuild ( Interval const &  i,
String const &  ss,
String const &  aa,
ResidueTypeSetCAP  rts = core::chemical::ChemicalManager::get_instance()->residue_type_set( core::chemical::FA_STANDARD ),
bool const  keep_known_bb_torsions_at_junctions = false 
)

full constructor

Parameters:
[in]intervalrebuild this range of residues
[in]ssthe secondary structure desired, also defines length of new build region
[in]aathe annotated amino acid sequence desired, default is poly-alanine
[in]rtsthe residue type set to use, default FA_STANDARD
[in]keep_known_bb_torsions_at_junctionsAttempt to keep the omega at original_interval().left-1, the phi at original_interval().left, and the psi+omega at original_interval().right present from the original Pose in the modified Pose.
Remarks:
length of the *one-letter* aa must equal the length of ss

References core::pose::annotated_to_oneletter_sequence().

protocols::forge::build::SegmentRebuild::SegmentRebuild ( SegmentRebuild const &  rval)

copy constructor

protocols::forge::build::SegmentRebuild::~SegmentRebuild ( ) [virtual]

default destructor


Member Function Documentation

String const& protocols::forge::build::SegmentRebuild::aa ( ) const [inline]

get annotated amino acid string

BuildInstructionOP protocols::forge::build::SegmentRebuild::clone ( ) const [virtual]

clone this object

Implements protocols::forge::build::BuildInstruction.

References SegmentRebuild().

virtual bool protocols::forge::build::SegmentRebuild::creates_undefined_backbone ( ) const [inline, virtual]

does this object create undefined backbone in the modified region?

Returns:
true

Implements protocols::forge::build::BuildInstruction.

SegmentRebuild::Positions protocols::forge::build::SegmentRebuild::defined_positions ( ) const [virtual]

return a copy of the set of positions within the newly modified region that has a defined conformation. E.g. existing or copied residues.

Returns:
An empty set -- no positions are defined.

This set can change wrt length changes in Pose/Conformation being watched.

Implements protocols::forge::build::BuildInstruction.

virtual bool protocols::forge::build::SegmentRebuild::dependencies_satisfied ( ) const [inline, protected, virtual]

are dependencies satisfied so that modify_impl() can complete successfully?

Returns:
always True, this BuildInstruction has no dependencies

Reimplemented from protocols::forge::build::BuildInstruction.

virtual Interval protocols::forge::build::SegmentRebuild::interval ( ) const [inline, virtual]

a copy of the working range of residues specifying the modified region

Remarks:
this can change if listening to Conformation LengthEvents

Implements protocols::forge::build::BuildInstruction.

Referenced by movemap(), and new_positions().

bool protocols::forge::build::SegmentRebuild::keep_known_bb_torsions_at_junctions ( ) const [inline]

Attempt to keep the omega at original_interval().left-1, the phi at original_interval().left and the psi+omega at original_interval().right present from the original Pose in the modified Pose? Default False.

void protocols::forge::build::SegmentRebuild::modify_impl ( Pose pose) [protected, virtual]

do the actual work of modifying the Pose

There are two cases:

  • internal rebuild where no residue of the segment is a terminus
  • boundary rebuild where one residue of the segment is a terminus

In the case of an internal rebuild, the old segment will be removed and a new segment containing a random cutpoint will be inserted. The new jump will be created between (left-1) and (right+1) of the new segment.

Implements protocols::forge::build::BuildInstruction.

References core::pose::add_lower_terminus_type_to_pose_residue(), core::pose::add_upper_terminus_type_to_pose_residue(), protocols::forge::build::BuildInstruction::attach_to(), core::conformation::Conformation::chain_endings(), core::pose::Pose::clear(), protocols::forge::methods::closest_larger_peptide_vertex(), protocols::forge::methods::closest_smaller_peptide_vertex(), core::pose::Pose::conformation(), contains, core::conformation::Conformation::delete_chain_ending(), core::conformation::Conformation::delete_residue_range_slow(), core::kinematics::dir_jump, core::pose::Pose::dump_pdb(), protocols::forge::methods::find_connecting_jump(), core::pose::Pose::fold_tree(), core::conformation::get_anchor_atomno(), protocols::forge::methods::grow_left_rtype(), protocols::forge::methods::grow_right_rtype(), core::conformation::idealize_position(), core::conformation::Residue::is_lower_terminus(), core::conformation::Residue::is_upper_terminus(), protocols::forge::methods::jumps_and_cuts_from_pose(), protocols::forge::methods::jumps_connected_to_position(), protocols::forge::build::BuildInstruction::length_obs_link(), core::pose::Pose::n_residue(), core::conformation::Conformation::num_chains(), core::pose::Pose::num_jump(), core::pose::Pose::omega(), protocols::forge::methods::order(), protocols::forge::build::BuildInstruction::original_interval(), core::pose::Pose::pdb_info(), core::pose::Pose::phi(), core::pose::Pose::psi(), core::util::remove_cutpoint_variants(), core::pose::Pose::residue(), protocols::forge::build::BuildInstruction::residue_type_set(), core::pose::residue_types_from_sequence(), protocols::forge::build::RG(), core::pose::Pose::set_omega(), core::pose::Pose::set_phi(), core::pose::Pose::set_psi(), core::pose::Pose::set_secstruct(), core::pose::Pose::total_residue(), and protocols::forge::methods::trans_omega().

SegmentRebuild::MoveMap protocols::forge::build::SegmentRebuild::movemap ( ) const [virtual]

return a copy of the MoveMap that defines the moveable/fixed positions/dofs for this instruction

Returns:
a MoveMap with [interval.left, interval.right] bb & chi set to true at the MoveMapTorsionID level

This set can change wrt length changes in Pose/Conformation being watched.

Implements protocols::forge::build::BuildInstruction.

References core::id::BB, make_table_of_pilot_apps::begin, core::sequence::end, interval(), protocols::forge::build::Interval::left, core::id::omega_torsion(), core::id::phi_torsion(), core::id::psi_torsion(), protocols::forge::build::Interval::right, core::kinematics::MoveMap::set(), core::kinematics::MoveMap::set_bb(), and core::kinematics::MoveMap::set_chi().

SegmentRebuild::Positions protocols::forge::build::SegmentRebuild::new_positions ( ) const [virtual]

return a copy of the set of positions that are "new" and did not exist in the original Pose.

Returns:
A set of positions spanning the entire modified interval -- all positions are undefined.

Implements protocols::forge::build::BuildInstruction.

References protocols::forge::methods::closed_range(), interval(), protocols::forge::build::Interval::left, and protocols::forge::build::Interval::right.

Referenced by undefined_positions().

void protocols::forge::build::SegmentRebuild::on_residue_append ( LengthEvent const &  event) [virtual]

update indexing on residue append

Remarks:
left and right endpoints of the interval can travel independently

Implements protocols::forge::build::BuildInstruction.

References protocols::forge::build::Interval::left, core::conformation::signals::LengthEvent::position, and protocols::forge::build::Interval::right.

void protocols::forge::build::SegmentRebuild::on_residue_delete ( LengthEvent const &  event) [virtual]
void protocols::forge::build::SegmentRebuild::on_residue_prepend ( LengthEvent const &  event) [virtual]

update indexing on residue prepend

Remarks:
left and right endpoints of the interval can travel independently

Implements protocols::forge::build::BuildInstruction.

References protocols::forge::build::Interval::left, core::conformation::signals::LengthEvent::position, and protocols::forge::build::Interval::right.

SegmentRebuild & protocols::forge::build::SegmentRebuild::operator= ( SegmentRebuild const &  rval)
SegmentRebuild::Positions protocols::forge::build::SegmentRebuild::original_deleted_positions ( ) const [virtual]

return set of positions within the original interval that will be deleted in this BuildInstruction

Returns:
A set containing all positions in the original interval.

Implements protocols::forge::build::BuildInstruction.

References protocols::forge::methods::closed_range(), core::sequence::left, and protocols::forge::build::BuildInstruction::original_interval().

SegmentRebuild::Positions protocols::forge::build::SegmentRebuild::original_fixed_positions ( ) const [virtual]

return set of any fixed positions necessary with respect to the original interval and original Pose numbering

Remarks:
Used for ensuring build regions for instructions do not overlap and so that jumps may be placed correctly. If SegmentRebuild has dependencies, the set of positions shrinks from the endpoints of [original_left - 1, original_right + 1] down to an empty set in the assumption that the user is requesting an advanced feature and knows what they're doing around the endpoints, e.g. rebuilding directly adjacent to a swapped out section.
Returns:
empty set if no fixed positions
Remarks:
Used for ensuring build regions for instructions do not overlap and so that jumps may be placed correctly. If SegmentRebuild has dependencies, the set of positions shrinks from the endpoints of [original_left - 1, original_right + 1] down to an empty set in the assumption that the user is requesting an advanced feature and knows what they're doing around the endpoints, e.g. rebuilding directly adjacent to a swapped out section.
Returns:
empty set if no fixed positions necessary

Implements protocols::forge::build::BuildInstruction.

References protocols::forge::build::BuildInstruction::has_dependencies(), core::sequence::left, and protocols::forge::build::BuildInstruction::original_interval().

virtual bool protocols::forge::build::SegmentRebuild::original_interval_valid ( ) const [inline, virtual]

is the original interval storing valid information, or is empty or being used for something else?

Returns:
true, stores valid interval

Implements protocols::forge::build::BuildInstruction.

SegmentRebuild::Positions protocols::forge::build::SegmentRebuild::original_kept_positions ( ) const [virtual]

return the set of positions within the original interval that will be kept in this BuildInstruction

Returns:
An empty set -- no positions are kept.

Implements protocols::forge::build::BuildInstruction.

SegmentRebuild::Positions protocols::forge::build::SegmentRebuild::original_mutable_positions ( ) const [virtual]

return set of any mutable positions necessary with respect to the original interval and original Pose numbering

Remarks:
Used for ensuring build regions for instructions do not overlap and so that jumps may be placed correctly.
Returns:
empty set if no mutable positions

Implements protocols::forge::build::BuildInstruction.

References protocols::forge::methods::closed_range(), core::sequence::left, and protocols::forge::build::BuildInstruction::original_interval().

SegmentRebuild::Positions protocols::forge::build::SegmentRebuild::preexisting_positions ( ) const [virtual]

return a copy of the set of positions within the new region that were pre-existing in the original Pose prior to modify()

Returns:
An empty set -- no positions are pre-existing.

Implements protocols::forge::build::BuildInstruction.

void protocols::forge::build::SegmentRebuild::reset_accounting_impl ( ) [protected, virtual]

do the actual reset of intervals, positions, etc to initial state

Implements protocols::forge::build::BuildInstruction.

References protocols::forge::build::BuildInstruction::original_interval().

String const& protocols::forge::build::SegmentRebuild::ss ( ) const [inline]

get secondary structure string

SegmentRebuild::Positions protocols::forge::build::SegmentRebuild::undefined_positions ( ) const [virtual]

return a copy of the set of positions within the newly modified region that has an undefined conformation. E.g. newly created residues.

Returns:
A set of positions spanning the entire modified interval -- all positions are undefined.

This set can change wrt length changes in Pose/Conformation being watched.

Implements protocols::forge::build::BuildInstruction.

References new_positions().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines