Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
protocols::forge::build::ConnectRight Class Reference

instruction to connect one Pose onto the right side of another More...

#include <ConnectRight.hh>

Inheritance diagram for protocols::forge::build::ConnectRight:
Inheritance graph
[legend]

Public Types

typedef Super::Size Size
 
typedef Super::ResidueTypeSetCAP ResidueTypeSetCAP
 
typedef Super::LengthEvent LengthEvent
 
typedef Super::MoveMap MoveMap
 
typedef Super::Pose Pose
 
typedef Super::Positions Positions
 
typedef Super::String String
 
typedef core::kinematics::RT RT
 
typedef core::id::NamedStubID NamedStubID
 
typedef NamedStubID::AtomList AtomNameList
 
- Public Types inherited from protocols::forge::build::BuildInstruction
typedef core::Size Size
 
typedef core::Real Real
 
typedef
core::chemical::ResidueTypeSet 
ResidueTypeSet
 
typedef
core::chemical::ResidueTypeSetCAP 
ResidueTypeSetCAP
 
typedef
core::chemical::ResidueTypeSetCOP 
ResidueTypeSetCOP
 
typedef
core::conformation::signals::LengthEvent 
LengthEvent
 
typedef core::kinematics::MoveMap MoveMap
 
typedef core::pose::Pose Pose
 
typedef utility::vector1
< BuildInstructionCAP
BuildInstructionCAPs
 
typedef utility::signals::Link Link
 
typedef std::set< core::SizePositions
 
typedef std::string String
 

Public Member Functions

 ConnectRight ()
 default constructor More...
 
 ConnectRight (core::Size const left_position, core::Size const right_position, Pose const &pose_right)
 position to position jump constructor More...
 
 ConnectRight (ConnectRight const &rval)
 copy constructor More...
 
 ~ConnectRight () override
 default destructor More...
 
ConnectRightoperator= (ConnectRight const &rval)
 copy assignment More...
 
BuildInstructionOP clone () const override
 clone this object More...
 
Pose const & pose_right ()
 connect this pose to the right of pose_left when modify( pose_left ) is called More...
 
bool use_rt () const
 apply the transform over the jump connection between pose_left and pose_right? default False More...
 
AtomNameList const & left_stub_atoms () const
 Use these atoms to compute the stub on pose_left. Default ["CA", "N", "CA", "C"]. More...
 
AtomNameList const & right_stub_atoms () const
 Use these atoms to compute the stub on pose_right. Default ["CA", "N", "CA", "C"]. More...
 
RT const & rt ()
 the rotation-translation representing an explicit transform from the stub on pose_left to the stub on pose_right, i.e. the representation of the "jump" More...
 
bool original_interval_valid () const override
 is the original interval storing valid information, or is empty or being used for something else? More...
 
Interval interval () const override
 a copy of the working range of residues specifying the modified region More...
 
Positions preexisting_positions () const override
 return a copy of the set of positions within the new region that were pre-existing in the original Pose prior to modify() More...
 
Positions new_positions () const override
 return a copy of the set of positions that are "new" and did not exist in the original Pose. More...
 
Positions defined_positions () const override
 return a copy of the set of positions within the newly modified region that has a defined conformation. E.g. existing or copied residues. More...
 
Positions undefined_positions () const override
 return a copy of the set of positions within the newly modified region that has an undefined conformation. E.g. newly created residues. More...
 
MoveMap movemap () const override
 return a copy of the MoveMap that defines the moveable/fixed positions/dofs for this instruction More...
 
void use_rt (bool const flag)
 apply the transform over the jump connection between pose_left and pose_right? default False More...
 
void extract_rt (Pose const &pose, core::Size const jump_start_residue, core::Size const jump_stop_residue)
 extract appropriately computed transform between two stubs that represent a jump in the given Pose between the two residues and set it as the rt for this ConnectRight More...
 
void left_stub_atoms (AtomNameList const &atoms)
 Use these atoms to compute the stub on pose_left. Default ["CA", "N", "CA", "C"]. More...
 
void right_stub_atoms (AtomNameList const &atoms)
 Use these atoms to compute the stub on pose_right. Default ["CA", "N", "CA", "C"]. More...
 
void rt (RT const &transform)
 the rotation-translation representing an explicit transform from the stub on pose_left to the stub on pose_right, i.e. the representation of the "jump" More...
 
void on_residue_append (LengthEvent const &event) override
 update indexing on residue append More...
 
void on_residue_prepend (LengthEvent const &event) override
 update indexing on residue prepend More...
 
void on_residue_delete (LengthEvent const &event) override
 update indexing on residue delete More...
 
Positions original_kept_positions () const override
 return the set of positions within the original interval that will be kept in this BuildInstruction More...
 
Positions original_deleted_positions () const override
 return set of positions within the original interval that will be deleted in this BuildInstruction More...
 
Positions original_fixed_positions () const override
 return set of any fixed positions necessary with respect to the original interval and original Pose numbering More...
 
Positions original_mutable_positions () const override
 return set of any mutable positions necessary with respect to the original interval and original Pose numbering More...
 
bool creates_undefined_backbone () const override
 does this object create undefined backbone in the modified region? More...
 
- Public Member Functions inherited from protocols::forge::build::BuildInstruction
 BuildInstruction ()
 default constructor More...
 
 BuildInstruction (Interval const &i, ResidueTypeSetCAP rts=core::chemical::ChemicalManager::get_instance() ->residue_type_set(core::chemical::FA_STANDARD))
 interval constructor More...
 
 BuildInstruction (BuildInstruction const &rval)
 copy constructor More...
 
 ~BuildInstruction () override
 default destructor More...
 
BuildInstructionoperator= (BuildInstruction const &rval)
 copy assignment More...
 
BuildInstructionState::Enum modify (Pose &pose)
 modify this pose More...
 
BuildInstructionState::Enum state () const
 return the state of this BuildInstruction More...
 
bool ready () const
 Is the BuildInstruction's state at READY? More...
 
bool waiting_on_dependencies () const
 Is the BuildInstruction's state at WAITING_ON_DEPENDENCIES? More...
 
bool modify_was_successful () const
 Is the BuildInstruction's state at MODIFY_WAS_SUCCESSFUL? More...
 
void attach_to (Pose &pose)
 attach to a Pose's conformation More...
 
void detach_from ()
 detach from a Pose's conformation More...
 
void on_length_change (LengthEvent const &event)
 update any indexing wrt length change to Pose/Conformation being watched More...
 
bool detach_after_modify () const
 detach after modify()? More...
 
Interval const & original_interval () const
 return original residue range of this instruction More...
 
ResidueTypeSet const & residue_type_set () const
 the residue type set being used More...
 
bool has_dependencies () const
 does this BuildInstruction have dependencies? More...
 
core::Size n_dependencies () const
 the number of dependencies this BuildInstruction has More...
 
BuildInstructionCAPs const & dependencies () const
 the list of instructions whose modify() must complete before the modify() for this instruction may be called successfully More...
 
void detach_after_modify (bool const flag)
 set detach after modify() More...
 
void reset_accounting ()
 reset intervals, positions, etc to initial state and drop observers. State set to READY. More...
 
virtual void add_dependency_to (BuildInstructionCAP i)
 add an instruction to this BuildInstruction's dependency list More...
 
virtual bool dependent_on (BuildInstructionCAP i) const
 is this instruction dependent upon the given instruction? More...
 
void clear_dependencies ()
 clear the list of dependencies More...
 
virtual bool compatible_with (BuildInstruction const &rval) const
 compares fixed and mutable positions to determine compatibility with another instruction More...
 

Protected Member Functions

bool dependencies_satisfied () const override
 are dependencies satisfied so that modify_impl() can complete successfully? More...
 
void modify_impl (Pose &pose_left) override
 do the actual work of modifying the Pose More...
 
core::Size left_position () const
 connect at this position on 'pose_left' passed into modify() More...
 
core::Size right_position () const
 connect at this position on 'pose_right' More...
 
NamedStubID left_named_stub_id (core::Size const p) const
 generate the NamedStubID for the left stub atoms on position 'p' More...
 
NamedStubID right_named_stub_id (core::Size const p) const
 generate the NamedStubID for the left right atoms on position 'p' More...
 
void left_position (core::Size const i)
 connect at this position on 'pose_left' passed into modify() More...
 
void right_position (core::Size const i)
 connect at this position on 'pose_right' More...
 
void reset_accounting_impl () override
 do the actual reset of intervals, positions, etc to initial state More...
 
- Protected Member Functions inherited from protocols::forge::build::BuildInstruction
Link const & length_obs_link () const
 access to the Conformation length observer link More...
 
void state (BuildInstructionState::Enum const s)
 set the BuildInstruction's current state More...
 

Private Types

typedef BuildInstruction Super
 

Private Member Functions

void init ()
 initialization on construction More...
 

Private Attributes

core::Size left_position_
 connect at this position on 'pose_left' passed into modify() More...
 
core::Size right_position_
 connect at this position on 'pose_right' More...
 
Pose pose_right_
 connect this pose to the right of pose_left when modify( pose_left ) is called More...
 
bool use_rt_
 apply the transform over the jump connection between pose_left and pose_right? default False More...
 
AtomNameList left_stub_atoms_
 Use these atoms to compute the stub on pose_left. Default ["CA", "N", "CA", "C"]. More...
 
AtomNameList right_stub_atoms_
 Use these atoms to compute the stub on pose_right. Default ["CA", "N", "CA", "C"]. More...
 
RT rt_
 the rotation-translation representing an explicit transform from the stub on pose_left to the stub on pose_right, i.e. the representation of the "jump" More...
 
Interval interval_
 tracks the numbering of the new region specifying the connected Pose More...
 

Detailed Description

instruction to connect one Pose onto the right side of another

Denote pose_left = [a,b] and pose_right = [c,d] and the newly connected pose_left + pose_right = pose_total = [a,d]. If 'b' of pose_left is an upper terminus or 'c' of pose_right is a lower terminus, then ConnectRight will start a new chain in the Conformation at 'c' when constructing pose_total, otherwise it will continue the chain at 'b'.

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::forge::build::ConnectRight::ConnectRight ( )

default constructor

References init().

protocols::forge::build::ConnectRight::ConnectRight ( core::Size const  left_position,
core::Size const  right_position,
Pose const &  pose_right 
)

position to position jump constructor

Parameters
[in]left_positionconnect at this position on 'pose_left' passed into modify()
[in]right_positionconnect at this position on 'pose_right'
[in]pose_rightconnect this pose to the right of pose_left when modify( pose_left ) is called
[in]left_positionconnect at this position on 'pose_left' passed into modify()
[in]right_positionconnect at this position on 'pose_right'
[in]pose_rightconnect this pose to the right of pose_left when modify( pose_left ) is called
[in]start_new_chainstart new chain when connecting? does not handle termini variants

References init().

protocols::forge::build::ConnectRight::ConnectRight ( ConnectRight const &  rval)
default

copy constructor

protocols::forge::build::ConnectRight::~ConnectRight ( )
overridedefault

default destructor

Member Function Documentation

BuildInstructionOP protocols::forge::build::ConnectRight::clone ( ) const
overridevirtual
bool protocols::forge::build::ConnectRight::creates_undefined_backbone ( ) const
inlineoverridevirtual

does this object create undefined backbone in the modified region?

Returns
false

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

ConnectRight::Positions protocols::forge::build::ConnectRight::defined_positions ( ) const
overridevirtual

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
A set spanning the entire interval – all positions are defined.

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

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

References new_positions().

bool protocols::forge::build::ConnectRight::dependencies_satisfied ( ) const
inlineoverrideprotectedvirtual

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

Returns
always True, this BuildInstruction has no dependencies

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

void protocols::forge::build::ConnectRight::extract_rt ( Pose const &  pose,
core::Size const  jump_start_residue,
core::Size const  jump_stop_residue 
)

extract appropriately computed transform between two stubs that represent a jump in the given Pose between the two residues and set it as the rt for this ConnectRight

Parameters
[in]poseThe Pose to use.
[in]jump_start_residueThe starting residue of the jump. This residue should be the equivalent of the jump position on pose_left.
[in]jump_stop-residueThe stopping residue of the jump. This residue should be the equivalent of the jump position on pose_right.
Remarks
Uses left_stub_atoms() and right_stub_atoms() as the stub atoms to compute the transform. Remember to set use_rt() to True after calling this function if you want to actually use the transform during modify().

References core::pose::Pose::conformation(), core::conformation::Conformation::get_stub_transform(), left_named_stub_id(), core::pose::named_stub_id_to_stub_id(), right_named_stub_id(), rt_, and core::pose::Pose::size().

void protocols::forge::build::ConnectRight::init ( void  )
private

initialization on construction

References left_stub_atoms_, and right_stub_atoms_.

Referenced by ConnectRight().

Interval protocols::forge::build::ConnectRight::interval ( ) const
inlineoverridevirtual

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

before modify() holds [1, pose_right.size()]; after modify() holds [1 + pose_left.size(), pose_right.n_residue + pose_left.size()]

Remarks
This can change if listening to Conformation LengthEvents

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

References interval_.

Referenced by new_positions().

NamedStubID protocols::forge::build::ConnectRight::left_named_stub_id ( core::Size const  p) const
inlineprotected

generate the NamedStubID for the left stub atoms on position 'p'

References left_stub_atoms_.

Referenced by extract_rt(), and modify_impl().

core::Size protocols::forge::build::ConnectRight::left_position ( ) const
inlineprotected

connect at this position on 'pose_left' passed into modify()

Remarks
this position can shift if listening to a Pose/Conformation and the number of residues changes

References left_position_.

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

void protocols::forge::build::ConnectRight::left_position ( core::Size const  i)
inlineprotected

connect at this position on 'pose_left' passed into modify()

Remarks
this position can shift if listening to a Pose/Conformation and the number of residues changes

References left_position_.

AtomNameList const& protocols::forge::build::ConnectRight::left_stub_atoms ( ) const
inline

Use these atoms to compute the stub on pose_left. Default ["CA", "N", "CA", "C"].

This is an array with 4 elements in the same order as Stub initialization: 'center atom', 'point1', 'point2', 'point3'. See Stub docs for more details.

References left_stub_atoms_.

void protocols::forge::build::ConnectRight::left_stub_atoms ( AtomNameList const &  atoms)
inline

Use these atoms to compute the stub on pose_left. Default ["CA", "N", "CA", "C"].

This is an array with 4 elements in the same order as Stub initialization: 'center atom', 'point1', 'point2', 'point3'. See Stub docs for more details.

References left_stub_atoms_.

void protocols::forge::build::ConnectRight::modify_impl ( Pose pose_left)
overrideprotectedvirtual
ConnectRight::MoveMap protocols::forge::build::ConnectRight::movemap ( ) const
overridevirtual

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 set to false at the MoveMapTorsionID level

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

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

References new_positions(), and core::kinematics::MoveMap::set_bb().

ConnectRight::Positions protocols::forge::build::ConnectRight::new_positions ( ) const
overridevirtual

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

Returns
A set spanning the entire interval – all positions are new.

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 defined_positions(), and movemap().

void protocols::forge::build::ConnectRight::on_residue_append ( LengthEvent const &  event)
overridevirtual
void protocols::forge::build::ConnectRight::on_residue_delete ( LengthEvent const &  event)
overridevirtual
void protocols::forge::build::ConnectRight::on_residue_prepend ( LengthEvent const &  event)
overridevirtual
ConnectRight & protocols::forge::build::ConnectRight::operator= ( ConnectRight const &  rval)
ConnectRight::Positions protocols::forge::build::ConnectRight::original_deleted_positions ( ) const
overridevirtual

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

Returns
An empty set – no positions are deleted.

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

ConnectRight::Positions protocols::forge::build::ConnectRight::original_fixed_positions ( ) const
overridevirtual

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.
Returns
empty set if no fixed positions

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

Reimplemented in protocols::forge::build::RelativeConnectRight.

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

bool protocols::forge::build::ConnectRight::original_interval_valid ( ) const
inlineoverridevirtual

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

Returns
false, stores invalid interval

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

ConnectRight::Positions protocols::forge::build::ConnectRight::original_kept_positions ( ) const
overridevirtual

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.

ConnectRight::Positions protocols::forge::build::ConnectRight::original_mutable_positions ( ) const
overridevirtual

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.

ConnectRight::Pose const & protocols::forge::build::ConnectRight::pose_right ( )

connect this pose to the right of pose_left when modify( pose_left ) is called

References pose_right_.

ConnectRight::Positions protocols::forge::build::ConnectRight::preexisting_positions ( ) const
overridevirtual

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::ConnectRight::reset_accounting_impl ( )
overrideprotectedvirtual
NamedStubID protocols::forge::build::ConnectRight::right_named_stub_id ( core::Size const  p) const
inlineprotected

generate the NamedStubID for the left right atoms on position 'p'

References right_stub_atoms_.

Referenced by extract_rt(), and modify_impl().

core::Size protocols::forge::build::ConnectRight::right_position ( ) const
inlineprotected

connect at this position on 'pose_right'

References right_position_.

void protocols::forge::build::ConnectRight::right_position ( core::Size const  i)
inlineprotected

connect at this position on 'pose_right'

References right_position_.

AtomNameList const& protocols::forge::build::ConnectRight::right_stub_atoms ( ) const
inline

Use these atoms to compute the stub on pose_right. Default ["CA", "N", "CA", "C"].

This is an array with 4 elements in the same order as Stub initialization: 'center atom', 'point1', 'point2', 'point3'. See Stub docs for more details.

References right_stub_atoms_.

void protocols::forge::build::ConnectRight::right_stub_atoms ( AtomNameList const &  atoms)
inline

Use these atoms to compute the stub on pose_right. Default ["CA", "N", "CA", "C"].

This is an array with 4 elements in the same order as Stub initialization: 'center atom', 'point1', 'point2', 'point3'. See Stub docs for more details.

References right_stub_atoms_.

RT const& protocols::forge::build::ConnectRight::rt ( )
inline

the rotation-translation representing an explicit transform from the stub on pose_left to the stub on pose_right, i.e. the representation of the "jump"

References rt_.

void protocols::forge::build::ConnectRight::rt ( RT const &  transform)
inline

the rotation-translation representing an explicit transform from the stub on pose_left to the stub on pose_right, i.e. the representation of the "jump"

References rt_.

ConnectRight::Positions protocols::forge::build::ConnectRight::undefined_positions ( ) const
overridevirtual

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

Returns
An empty set – no undefined positions.

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

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

bool protocols::forge::build::ConnectRight::use_rt ( ) const
inline

apply the transform over the jump connection between pose_left and pose_right? default False

References use_rt_.

void protocols::forge::build::ConnectRight::use_rt ( bool const  flag)
inline

apply the transform over the jump connection between pose_left and pose_right? default False

References use_rt_.

Member Data Documentation

Interval protocols::forge::build::ConnectRight::interval_
private

tracks the numbering of the new region specifying the connected Pose

before modify_impl() holds [1, pose_right.size()]; after modify holds [1 + pose_left.size(), pose_right.n_residue + pose_left.size()]

Referenced by interval(), modify_impl(), on_residue_append(), on_residue_delete(), on_residue_prepend(), operator=(), and reset_accounting_impl().

core::Size protocols::forge::build::ConnectRight::left_position_
private

connect at this position on 'pose_left' passed into modify()

Remarks
this position can shift if listening to a Pose/Conformation and the number of residues changes

Referenced by left_position(), modify_impl(), on_residue_append(), on_residue_delete(), on_residue_prepend(), operator=(), and reset_accounting_impl().

AtomNameList protocols::forge::build::ConnectRight::left_stub_atoms_
private

Use these atoms to compute the stub on pose_left. Default ["CA", "N", "CA", "C"].

This is an array with 4 elements in the same order as Stub initialization: 'center atom', 'point1', 'point2', 'point3'. See Stub docs for more details.

Referenced by init(), left_named_stub_id(), left_stub_atoms(), and operator=().

Pose protocols::forge::build::ConnectRight::pose_right_
private

connect this pose to the right of pose_left when modify( pose_left ) is called

Referenced by modify_impl(), operator=(), pose_right(), and reset_accounting_impl().

core::Size protocols::forge::build::ConnectRight::right_position_
private

connect at this position on 'pose_right'

Remarks
this position can shift if listening to a Pose/Conformation and the number of residues changes

Referenced by modify_impl(), operator=(), and right_position().

AtomNameList protocols::forge::build::ConnectRight::right_stub_atoms_
private

Use these atoms to compute the stub on pose_right. Default ["CA", "N", "CA", "C"].

This is an array with 4 elements in the same order as Stub initialization: 'center atom', 'point1', 'point2', 'point3'. See Stub docs for more details.

Referenced by init(), operator=(), right_named_stub_id(), and right_stub_atoms().

RT protocols::forge::build::ConnectRight::rt_
private

the rotation-translation representing an explicit transform from the stub on pose_left to the stub on pose_right, i.e. the representation of the "jump"

Referenced by extract_rt(), modify_impl(), operator=(), and rt().

bool protocols::forge::build::ConnectRight::use_rt_
private

apply the transform over the jump connection between pose_left and pose_right? default False

Referenced by modify_impl(), operator=(), and use_rt().


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