![]() |
Rosetta Core
2014.35
|
Function declarations for the AdditionalBackgroundNodesInteractionGraph. More...
#include <SurfaceInteractionGraph.fwd.hh>
Public Types | |
typedef std::vector < BackgroundNode< V, E, G > * > | BackgroundNodeVector |
typedef std::list < BackgroundToFirstClassEdge < V, E, G > * > | BackgroundEdgeList |
typedef std::list < BackgroundToFirstClassEdge < V, E, G > * >::iterator | BackgroundEdgeListIter |
typedef std::list < BackgroundToFirstClassEdge < V, E, G > * >::const_iterator | BackgroundEdgeListConstIter |
Public Member Functions | |
AdditionalBackgroundNodesInteractionGraph (int num_nodes) | |
AdditionalBackgroundNodesInteractionGraph constructor; no default or copy constructors; no operator =. More... | |
virtual | ~AdditionalBackgroundNodesInteractionGraph () |
AdditionalBackgroundNodesInteractionGraph destructor. More... | |
virtual unsigned int | getTotalMemoryUsage () const |
Returns an int representing the total amount of memory in bytes used by this graph. More... | |
virtual unsigned int | count_dynamic_memory () const |
Returns an int representing the amount of dynamic memory in bytes used by this graph. More... | |
int | get_num_background_nodes () const |
Protected Member Functions | |
void | drop_background_edge (BackgroundEdgeListIter iter) |
Constant time edge removal. More... | |
virtual BackgroundNode< V, E, G > * | create_background_node (int bg_node_index)=0 |
virtual BackgroundToFirstClassEdge< V, E, G > * | create_background_edge (int fc_node_index, int bg_node_index)=0 |
void | set_num_background_nodes (int num_bg_nodes) |
sets the number of background nodes in the graph. Should be called no more than once. Some problem instances do not require background nodes. More... | |
void | add_background_edge (int first_class_node_index, int bg_node_index) |
adds a BackgroundToFirstClassEdge to the graph and performs the requisite bookkeepking. More... | |
BackgroundToFirstClassEdge< V, E, G > * | find_background_edge (int first_class_node_index, int bg_node_index) const |
returns a pointer to the background edge, identified by the indices of the first and second class nodes it connects. Returns the null pointer if the edge does not exist. Possibly linear time operation (in the number of BackgroundToFirstClassEdges). More... | |
int | get_num_bg_edges () const |
BackgroundNode< V, E, G > * | get_background_node (int index) const |
void | prepare_for_simulated_annealing () |
invokes prepare_for_simulated_annealing on each of the BackgroundToFirstClassEdges and then invokes prepare_for_simulated_annealing on each of the BackgroundNodes. More... | |
BackgroundEdgeListConstIter | get_bg_edge_list_begin () const |
BackgroundEdgeListConstIter | get_bg_edge_list_end () const |
Private Member Functions | |
AdditionalBackgroundNodesInteractionGraph () | |
AdditionalBackgroundNodesInteractionGraph (AdditionalBackgroundNodesInteractionGraph< V, E, G > const &) | |
AdditionalBackgroundNodesInteractionGraph < V, E, G > & | operator= (AdditionalBackgroundNodesInteractionGraph< V, E, G > const &) |
Private Attributes | |
int | num_bg_nodes_ |
BackgroundNodeVector | bg_nodes_ |
BackgroundEdgeList | bg_to_fc_edge_list_ |
BackgroundToFirstClassEdge< V, E, G > * | focused_bg_edge_ |
Friends | |
class | BackgroundToFirstClassEdge< V, E, G > |
Function declarations for the AdditionalBackgroundNodesInteractionGraph.
typedef std::list< BackgroundToFirstClassEdge< V, E, G > * > core::pack::interaction_graph::AdditionalBackgroundNodesInteractionGraph< V, E, G >::BackgroundEdgeList |
typedef std::list< BackgroundToFirstClassEdge< V, E, G > * >::const_iterator core::pack::interaction_graph::AdditionalBackgroundNodesInteractionGraph< V, E, G >::BackgroundEdgeListConstIter |
typedef std::list< BackgroundToFirstClassEdge< V, E, G > * >::iterator core::pack::interaction_graph::AdditionalBackgroundNodesInteractionGraph< V, E, G >::BackgroundEdgeListIter |
typedef std::vector< BackgroundNode< V, E, G > * > core::pack::interaction_graph::AdditionalBackgroundNodesInteractionGraph< V, E, G >::BackgroundNodeVector |
core::pack::interaction_graph::AdditionalBackgroundNodesInteractionGraph< V, E, G >::AdditionalBackgroundNodesInteractionGraph | ( | int | num_nodes | ) |
AdditionalBackgroundNodesInteractionGraph constructor; no default or copy constructors; no operator =.
AdditionalBackgroundNodesInteractionGraph::AdditionalBackgroundNodesInteractionGraph
num_nodes | - [in] - the number of first class nodes |
|
virtual |
AdditionalBackgroundNodesInteractionGraph destructor.
AdditionalBackgroundNodesInteractionGraph::~AdditionalBackgroundNodesInteractionGraph
|
private |
|
private |
|
protected |
adds a BackgroundToFirstClassEdge to the graph and performs the requisite bookkeepking.
AdditionalBackgroundNodesInteractionGraph::add_background_edge
first_class_node_index | - [in] - the index of the first class node bg_node_index - [in] - the index of the second class node |
References core::pack::interaction_graph::BackgroundToFirstClassEdge< V, E, G >::set_pos_in_owners_list().
|
virtual |
Returns an int representing the amount of dynamic memory in bytes used by this graph.
AdditionalBackgroundNodesInteractionGraph::count_dynamic_memory
Reimplemented in core::pack::interaction_graph::HPatchInteractionGraph< V, E, G >, and core::pack::interaction_graph::SurfaceInteractionGraph< V, E, G >.
|
protectedpure virtual |
|
protectedpure virtual |
|
protected |
Constant time edge removal.
AdditionalBackgroundNodesInteractionGraph::drop_background_edge
iter | - [in] - the iterator to the position in the graph's edge list for the edge that is removing itself. |
|
protected |
returns a pointer to the background edge, identified by the indices of the first and second class nodes it connects. Returns the null pointer if the edge does not exist. Possibly linear time operation (in the number of BackgroundToFirstClassEdges).
AdditionalBackgroundNodesInteractionGraph::find_background_edge
first_class_node_index | - [in] - the index of the first class node bg_node_index - [in] - the index of the second class node |
|
inlineprotected |
References core::pack::interaction_graph::AdditionalBackgroundNodesInteractionGraph< V, E, G >::bg_nodes_, and core::pack::interaction_graph::AdditionalBackgroundNodesInteractionGraph< V, E, G >::num_bg_nodes_.
Referenced by core::pack::interaction_graph::HPatchInteractionGraph< V, E, G >::get_hpatch_bg_node(), and core::pack::interaction_graph::SurfaceInteractionGraph< V, E, G >::get_surface_bg_node().
|
inlineprotected |
|
inlineprotected |
|
inline |
|
inlineprotected |
|
virtual |
Returns an int representing the total amount of memory in bytes used by this graph.
AdditionalBackgroundNodesInteractionGraph::getTotalMemoryUsage
|
private |
|
protected |
invokes prepare_for_simulated_annealing on each of the BackgroundToFirstClassEdges and then invokes prepare_for_simulated_annealing on each of the BackgroundNodes.
AdditionalBackgroundNodesInteractionGraph::prepare_for_simulated_annealing
|
protected |
sets the number of background nodes in the graph. Should be called no more than once. Some problem instances do not require background nodes.
AdditionalBackgroundNodesInteractionGraph::set_num_background_nodes
|
friend |
|
private |
|
private |
Referenced by core::pack::interaction_graph::AdditionalBackgroundNodesInteractionGraph< V, E, G >::get_bg_edge_list_begin(), core::pack::interaction_graph::AdditionalBackgroundNodesInteractionGraph< V, E, G >::get_bg_edge_list_end(), and core::pack::interaction_graph::AdditionalBackgroundNodesInteractionGraph< V, E, G >::get_num_bg_edges().
|
mutableprivate |
|
private |