Rosetta 3.4
Public Member Functions | Protected Member Functions
core::pack::interaction_graph::NodeBase Class Reference

#include <InteractionGraphBase.hh>

Inheritance diagram for core::pack::interaction_graph::NodeBase:
Inheritance graph
[legend]
Collaboration diagram for core::pack::interaction_graph::NodeBase:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual ~NodeBase ()
 virtual destructor
 NodeBase (InteractionGraphBase *, int node_id, int num_states)
 Main constructor, no default constructor nor copy constructor.
int get_num_states () const
 returns the number of states for this node
std::list< EdgeBase * >::iterator add_edge (EdgeBase *edge_ptr)
 adds edge pointer to edge list; returns an iterator to the new list element
void drop_edge (std::list< EdgeBase * >::iterator edge_iterator)
 removes an edge iterator from the node's edge list
void drop_all_edges ()
 deletes all edges incident upon this node
EdgeBasefind_edge (int other_node_index) const
 a slow (linear) search for an edge. The edge is identified by the index of the node to which the edge connects this node. Returns NULL when there is no such connecting edge.
virtual void assign_zero_state ()=0
virtual void prepare_for_simulated_annealing ()=0
virtual void add_to_one_body_energies (ObjexxFCL::FArray1< core::PackerEnergy > &energy1b)=0
virtual void add_to_one_body_energy (int state, core::PackerEnergy energy)=0
virtual void update_one_body_energy (int state, core::PackerEnergy energy)=0
virtual void zero_one_body_energies ()=0
virtual void print () const =0
virtual bool state_unassigned () const =0
void depth_first_connected_component_counting ()
 performs a depth first traversal of the graph. Each node informs the graph that the traversal resulted in arriving at the node.
virtual unsigned int count_static_memory () const =0
virtual unsigned int count_dynamic_memory () const
 memory accounting scheme
std::list< EdgeBase * >
::const_iterator 
edge_list_begin ()
std::list< EdgeBase * >
::const_iterator 
edge_list_end ()

Protected Member Functions

void update_edge_vector ()
 converts edge-list to edge-vector representation
int get_node_index () const
int get_num_incident_edges () const
int get_num_edges_to_smaller_indexed_nodes () const
int get_num_edges_to_larger_indexed_nodes () const
EdgeBase const * get_incident_edge (int index) const
EdgeBaseget_incident_edge (int index)
int get_index_of_adjacent_node (int index) const
NodeBase const * get_adjacent_node (int index) const
NodeBaseget_adjacent_node (int index)
bool get_edge_vector_up_to_date () const
InteractionGraphBase const * get_owner () const
InteractionGraphBaseget_owner ()

Constructor & Destructor Documentation

core::pack::interaction_graph::NodeBase::~NodeBase ( ) [virtual]

virtual destructor

NodeBase::~NodeBase

Detailed:
Global Read:
Global Write:
Remarks:
References:
Authors:
apl
Last Modified:
core::pack::interaction_graph::NodeBase::NodeBase ( InteractionGraphBase owner,
int  node_id,
int  num_states 
)

Main constructor, no default constructor nor copy constructor.

NodeBase::NodeBase(InteractionGraphBase *, int, int)

Detailed:
Parameters:
owner- [in] - the owning interaction graph node_id - [in] - the index for this node amongst its owners set num_states - [in] - the number of states for this node
Global Read:
Global Write:
Remarks:
References:
Authors:
apl
Last Modified:

Member Function Documentation

std::list< EdgeBase * >::iterator core::pack::interaction_graph::NodeBase::add_edge ( EdgeBase edge_ptr)

adds edge pointer to edge list; returns an iterator to the new list element

NodeBase::add_edge

Detailed:
If the other node this node is attached to by edge_ptr has a higher index then the edge is added to the end of its edge list; if the node has a smaller index, the edge pointer is added to the front of the edge list. The presence of a new edge means the edge vector is not up to date.
Parameters:
edge_ptr- [in] - the new edge
Global Read:
Global Write:
Remarks:
References:
Authors:
apl
Last Modified:

References core::pack::interaction_graph::EdgeBase::get_other_ind().

virtual void core::pack::interaction_graph::NodeBase::add_to_one_body_energies ( ObjexxFCL::FArray1< core::PackerEnergy > &  energy1b) [pure virtual]
virtual void core::pack::interaction_graph::NodeBase::add_to_one_body_energy ( int  state,
core::PackerEnergy  energy 
) [pure virtual]
virtual void core::pack::interaction_graph::NodeBase::assign_zero_state ( ) [pure virtual]
unsigned int core::pack::interaction_graph::NodeBase::count_dynamic_memory ( ) const [virtual]
virtual unsigned int core::pack::interaction_graph::NodeBase::count_static_memory ( ) const [pure virtual]
void core::pack::interaction_graph::NodeBase::depth_first_connected_component_counting ( )

performs a depth first traversal of the graph. Each node informs the graph that the traversal resulted in arriving at the node.

NodeBase::depth_first_connected_component_counting

Detailed:
Parameters:
Global Read:
Global Write:
Remarks:
References:
Authors:
apl
Last Modified:

References core::pack::interaction_graph::InteractionGraphBase::note_vertex_reached(), and core::pack::interaction_graph::InteractionGraphBase::vertex_already_reached().

void core::pack::interaction_graph::NodeBase::drop_all_edges ( )

deletes all edges incident upon this node

NodeBase::drop_all_edges

Detailed:
Parameters:
@parGlobal Read:
Global Write:
Remarks:
References:
Authors:
apl
Last Modified:

Referenced by core::pack::interaction_graph::InteractionGraphBase::drop_all_edges_for_node().

void core::pack::interaction_graph::NodeBase::drop_edge ( std::list< EdgeBase * >::iterator  edge)

removes an edge iterator from the node's edge list

NodeBase::drop_edge

Detailed:
edges efficiently delete themselves from the edge lists of the nodes they are incident upon by keeping a pair of iterators. Edges request nodes delete them by handing the iterator back to the node.
Parameters:
edge- [in] - the iterator for this node's edge list that points at the edge which is trying to delete itself
Global Read:
Global Write:
Remarks:
References:
Authors:
apl
Last Modified:

Referenced by core::pack::interaction_graph::EdgeBase::~EdgeBase().

std::list< EdgeBase * >::const_iterator core::pack::interaction_graph::NodeBase::edge_list_begin ( )
std::list< EdgeBase * >::const_iterator core::pack::interaction_graph::NodeBase::edge_list_end ( )
EdgeBase * core::pack::interaction_graph::NodeBase::find_edge ( int  other_node) const

a slow (linear) search for an edge. The edge is identified by the index of the node to which the edge connects this node. Returns NULL when there is no such connecting edge.

NodeBase::find_edge

Detailed:
Parameters:
other_node- [in] - the index of the node that the desired edge connects this node to
Global Read:
Global Write:
Remarks:
References:
Authors:
Last Modified:
NodeBase const* core::pack::interaction_graph::NodeBase::get_adjacent_node ( int  index) const [inline, protected]
NodeBase* core::pack::interaction_graph::NodeBase::get_adjacent_node ( int  index) [inline, protected]
bool core::pack::interaction_graph::NodeBase::get_edge_vector_up_to_date ( ) const [inline, protected]
EdgeBase* core::pack::interaction_graph::NodeBase::get_incident_edge ( int  index) [inline, protected]
EdgeBase const* core::pack::interaction_graph::NodeBase::get_incident_edge ( int  index) const [inline, protected]
int core::pack::interaction_graph::NodeBase::get_index_of_adjacent_node ( int  index) const [inline, protected]
int core::pack::interaction_graph::NodeBase::get_node_index ( ) const [inline, protected]

Referenced by core::pack::interaction_graph::PDNode::assign_state(), core::pack::interaction_graph::LinearMemNode::assign_state(), core::pack::interaction_graph::LazyNode::assign_state(), core::pack::interaction_graph::FASTERNode::assign_state(), core::pack::interaction_graph::DoubleLazyNode::assign_state(), core::pack::interaction_graph::DoubleDensePDNode::assign_state(), core::pack::interaction_graph::DensePDNode::assign_state(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::assign_zero_state(), core::pack::interaction_graph::PDNode::assign_zero_state(), core::pack::interaction_graph::LinearMemNode::assign_zero_state(), core::pack::interaction_graph::LazyNode::assign_zero_state(), core::pack::interaction_graph::FASTERNode::assign_zero_state(), core::pack::interaction_graph::DoubleLazyNode::assign_zero_state(), core::pack::interaction_graph::DoubleDensePDNode::assign_zero_state(), core::pack::interaction_graph::DensePDNode::assign_zero_state(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::commit_alt_bb_substitution(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::commit_considered_substitution(), core::pack::interaction_graph::PDNode::commit_considered_substitution(), core::pack::interaction_graph::LinearMemNode::commit_considered_substitution(), core::pack::interaction_graph::LazyNode::commit_considered_substitution(), core::pack::interaction_graph::FASTERNode::commit_considered_substitution(), core::pack::interaction_graph::DoubleLazyNode::commit_considered_substitution(), core::pack::interaction_graph::DoubleDensePDNode::commit_considered_substitution(), core::pack::interaction_graph::DensePDNode::commit_considered_substitution(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::complete_partial_state_assignment(), core::pack::interaction_graph::OnTheFlyNode::compute_rotamer_pair_energy(), core::pack::interaction_graph::FASTERNode::get_deltaE_for_relaxed_state_following_perturbation(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::get_frag_energy_for_alt_bb_state(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::get_frag_energy_for_curr_bb_state_and_finalize_alt_energy_total(), core::pack::interaction_graph::PDNode::get_weighted_energy_with_higher_indexed_nodes(), protocols::flexpack::interaction_graph::FlexbbNode::have_edges_copy_alternate_to_current_following_flexbb_accept(), protocols::flexpack::interaction_graph::FlexbbNode::inform_edges_of_alt_state_before_bbjump(), protocols::flexpack::interaction_graph::FlexbbNode::inform_incident_edges_about_partial_state_assignment(), core::pack::interaction_graph::LinearMemNode::partial_assign_state(), core::pack::interaction_graph::LazyNode::partial_assign_state(), core::pack::interaction_graph::FASTERNode::partial_assign_state(), core::pack::interaction_graph::DoubleLazyNode::partial_assign_state(), core::pack::interaction_graph::LinearMemNode::prepare_for_simulated_annealing(), protocols::flexpack::interaction_graph::FlexbbNode::print(), core::pack::interaction_graph::PDNode::print(), core::pack::interaction_graph::LinearMemNode::print(), core::pack::interaction_graph::LazyNode::print(), core::pack::interaction_graph::FASTERNode::print(), core::pack::interaction_graph::DoubleLazyNode::print(), core::pack::interaction_graph::DoubleDensePDNode::print(), core::pack::interaction_graph::DensePDNode::print(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::project_deltaE_for_substitution(), core::pack::interaction_graph::FASTERNode::relax_neighbors(), protocols::flexpack::interaction_graph::FlexbbNode::set_closest_states_on_other_bbs(), core::pack::interaction_graph::FASTERNode::set_perturbed_state(), core::pack::interaction_graph::PDNode::update_internal_vectors(), and protocols::flexpack::interaction_graph::FlexbbNode::write_current_state_to_state_array().

int core::pack::interaction_graph::NodeBase::get_num_edges_to_larger_indexed_nodes ( ) const [inline, protected]
int core::pack::interaction_graph::NodeBase::get_num_edges_to_smaller_indexed_nodes ( ) const [inline, protected]
int core::pack::interaction_graph::NodeBase::get_num_incident_edges ( ) const [inline, protected]

Referenced by core::pack::interaction_graph::PDNode::assign_state(), core::pack::interaction_graph::LinearMemNode::assign_state(), core::pack::interaction_graph::LazyNode::assign_state(), core::pack::interaction_graph::FASTERNode::assign_state(), core::pack::interaction_graph::DoubleLazyNode::assign_state(), core::pack::interaction_graph::DoubleDensePDNode::assign_state(), core::pack::interaction_graph::DensePDNode::assign_state(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::assign_zero_state(), core::pack::interaction_graph::PDNode::assign_zero_state(), core::pack::interaction_graph::LinearMemNode::assign_zero_state(), core::pack::interaction_graph::LazyNode::assign_zero_state(), core::pack::interaction_graph::FASTERNode::assign_zero_state(), core::pack::interaction_graph::DoubleLazyNode::assign_zero_state(), core::pack::interaction_graph::DoubleDensePDNode::assign_zero_state(), core::pack::interaction_graph::DensePDNode::assign_zero_state(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::commit_alt_bb_substitution(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::commit_considered_substitution(), core::pack::interaction_graph::PDNode::commit_considered_substitution(), core::pack::interaction_graph::LinearMemNode::commit_considered_substitution(), core::pack::interaction_graph::LazyNode::commit_considered_substitution(), core::pack::interaction_graph::FASTERNode::commit_considered_substitution(), core::pack::interaction_graph::DoubleLazyNode::commit_considered_substitution(), core::pack::interaction_graph::DoubleDensePDNode::commit_considered_substitution(), core::pack::interaction_graph::DensePDNode::commit_considered_substitution(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::complete_partial_state_assignment(), core::pack::interaction_graph::FASTERNode::complete_partial_state_assignment(), core::pack::interaction_graph::LinearMemNode::complete_state_assignment(), core::pack::interaction_graph::LazyNode::complete_state_assignment(), core::pack::interaction_graph::DoubleLazyNode::complete_state_assignment(), core::pack::interaction_graph::OnTheFlyNode::distinguish_backbone_and_sidechain(), core::pack::interaction_graph::FASTERNode::get_deltaE_for_relaxed_state_following_perturbation(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::get_frag_energy_for_alt_bb_state(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::get_frag_energy_for_curr_bb_state_and_finalize_alt_energy_total(), core::pack::interaction_graph::FASTERNode::get_random_neighbor(), core::pack::interaction_graph::FASTERNode::get_total_energy_in_curr_state_assignment_for_all_states(), core::pack::interaction_graph::PDNode::get_weighted_energy_with_higher_indexed_nodes(), protocols::flexpack::interaction_graph::FlexbbNode::have_edges_copy_alternate_to_current(), protocols::flexpack::interaction_graph::FlexbbNode::have_edges_copy_alternate_to_current_following_flexbb_accept(), protocols::flexpack::interaction_graph::FlexbbNode::inform_edges_considered_fixedbb_substition_uncommitted(), protocols::flexpack::interaction_graph::FlexbbNode::inform_edges_of_alt_state_before_bbjump(), protocols::flexpack::interaction_graph::FlexbbNode::inform_incident_edges_about_partial_state_assignment(), core::pack::interaction_graph::LinearMemNode::partial_assign_state(), core::pack::interaction_graph::LazyNode::partial_assign_state(), core::pack::interaction_graph::FASTERNode::partial_assign_state(), core::pack::interaction_graph::DoubleLazyNode::partial_assign_state(), core::pack::interaction_graph::FASTERNode::prep_for_neighbors_perturbation(), core::pack::interaction_graph::FASTERNode::prepare_for_FASTER(), core::pack::interaction_graph::LinearMemNode::prepare_for_simulated_annealing(), core::pack::interaction_graph::LinearMemNode::print(), core::pack::interaction_graph::LazyNode::print(), core::pack::interaction_graph::DoubleLazyNode::print(), core::pack::interaction_graph::PDNode::print_internal_energies(), core::pack::interaction_graph::LinearMemNode::print_internal_energies(), core::pack::interaction_graph::LazyNode::print_internal_energies(), core::pack::interaction_graph::FASTERNode::print_internal_energies(), core::pack::interaction_graph::DoubleLazyNode::print_internal_energies(), core::pack::interaction_graph::DoubleDensePDNode::print_internal_energies(), core::pack::interaction_graph::DensePDNode::print_internal_energies(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::project_deltaE_for_substitution(), core::pack::interaction_graph::PDNode::project_deltaE_for_substitution(), core::pack::interaction_graph::FASTERNode::project_deltaE_for_substitution(), core::pack::interaction_graph::DoubleDensePDNode::project_deltaE_for_substitution(), core::pack::interaction_graph::DensePDNode::project_deltaE_for_substitution(), core::pack::interaction_graph::FASTERNode::relax_neighbors(), core::pack::interaction_graph::FASTERNode::reset_relaxed_for_neighbors(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::resolve_uncommitted_substitution(), core::pack::interaction_graph::FASTERNode::set_perturbed_state(), core::pack::interaction_graph::FASTERNode::tell_neighbors_to_prep_for_relaxation(), protocols::flexpack::interaction_graph::FlexbbNode::update_internal_energy_sums(), core::pack::interaction_graph::PDNode::update_internal_energy_sums(), core::pack::interaction_graph::LinearMemNode::update_internal_energy_sums(), core::pack::interaction_graph::LazyNode::update_internal_energy_sums(), core::pack::interaction_graph::FASTERNode::update_internal_energy_sums(), core::pack::interaction_graph::DoubleLazyNode::update_internal_energy_sums(), core::pack::interaction_graph::DoubleDensePDNode::update_internal_energy_sums(), core::pack::interaction_graph::DensePDNode::update_internal_energy_sums(), protocols::flexpack::interaction_graph::FlexbbNode::update_internal_vectors(), core::pack::interaction_graph::PDNode::update_internal_vectors(), core::pack::interaction_graph::FASTERNode::update_internal_vectors(), core::pack::interaction_graph::DoubleDensePDNode::update_internal_vectors(), and core::pack::interaction_graph::DensePDNode::update_internal_vectors().

int core::pack::interaction_graph::NodeBase::get_num_states ( ) const

returns the number of states for this node

NodeBase::~get_num_states

Detailed:
Global Read:
Global Write:
Remarks:
References:
Authors:
apl
Last Modified:

Referenced by core::pack::interaction_graph::FASTERNode::acknowledge_neighbors_perturbed_state(), protocols::flexpack::interaction_graph::FlexbbNode::add_to_one_body_energies(), core::pack::interaction_graph::PDNode::assign_state(), core::pack::interaction_graph::LinearMemNode::assign_state(), core::pack::interaction_graph::LazyNode::assign_state(), core::pack::interaction_graph::FASTERNode::assign_state(), core::pack::interaction_graph::DoubleLazyNode::assign_state(), core::pack::interaction_graph::DoubleDensePDNode::assign_state(), core::pack::interaction_graph::DensePDNode::assign_state(), protocols::flexpack::interaction_graph::FlexbbNode::FlexbbNode(), protocols::flexpack::interaction_graph::FlexbbNode::get_all_states(), core::pack::interaction_graph::PDNode::get_sparse_mat_info_for_state(), core::pack::interaction_graph::FASTERNode::get_total_energy_in_curr_state_assignment_for_all_states(), core::pack::interaction_graph::FASTERNode::partial_assign_state_with_lowest_one_body_energy(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::prepare_for_altbb_move_to_closest_state(), protocols::flexpack::interaction_graph::MinimalistFlexbbNode::prepare_for_altbb_move_to_state(), core::pack::interaction_graph::FASTERNode::prepare_for_FASTER(), core::pack::interaction_graph::LinearMemNode::prepare_for_simulated_annealing(), core::pack::interaction_graph::PDNode::print(), core::pack::interaction_graph::LinearMemNode::print(), core::pack::interaction_graph::LazyNode::print(), core::pack::interaction_graph::FASTERNode::print(), core::pack::interaction_graph::DoubleLazyNode::print(), core::pack::interaction_graph::DoubleDensePDNode::print(), core::pack::interaction_graph::DensePDNode::print(), core::pack::interaction_graph::FASTERNode::relax(), core::pack::interaction_graph::FASTERNode::relax_after_neighbors_perturbation(), protocols::flexpack::interaction_graph::FlexbbNode::set_amino_acid_types(), core::pack::interaction_graph::PDNode::set_amino_acid_types(), protocols::flexpack::interaction_graph::FlexbbNode::set_closest_states_on_other_bbs(), protocols::flexpack::interaction_graph::FlexbbNode::set_num_states_per_backbone(), core::pack::interaction_graph::OnTheFlyNode::set_rotamers(), core::pack::interaction_graph::DoubleDensePDNode::update_internal_vectors(), core::pack::interaction_graph::PDNode::update_one_body_energies(), core::pack::interaction_graph::PDNode::zero_one_body_energies(), core::pack::interaction_graph::FASTERNode::zero_one_body_energies(), core::pack::interaction_graph::DoubleDensePDNode::zero_one_body_energies(), and core::pack::interaction_graph::DensePDNode::zero_one_body_energies().

InteractionGraphBase const* core::pack::interaction_graph::NodeBase::get_owner ( ) const [inline, protected]
InteractionGraphBase* core::pack::interaction_graph::NodeBase::get_owner ( ) [inline, protected]
virtual void core::pack::interaction_graph::NodeBase::prepare_for_simulated_annealing ( ) [pure virtual]
virtual void core::pack::interaction_graph::NodeBase::print ( ) const [pure virtual]
virtual bool core::pack::interaction_graph::NodeBase::state_unassigned ( ) const [pure virtual]
void core::pack::interaction_graph::NodeBase::update_edge_vector ( ) [protected]
virtual void core::pack::interaction_graph::NodeBase::update_one_body_energy ( int  state,
core::PackerEnergy  energy 
) [pure virtual]
virtual void core::pack::interaction_graph::NodeBase::zero_one_body_energies ( ) [pure virtual]

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