Analysis Software
Documentation for sPHENIX simulation software
|
A node in a graph. More...
#include <JETSCAPE/blob/main/external_packages/gtl/include/GTL/node.h>
Public Types | |
typedef list< edge > ::const_iterator | in_edges_iterator |
typedef list< edge > ::const_iterator | out_edges_iterator |
Private Member Functions | |
bool | is_directed () const |
bool | is_undirected () const |
Private Attributes | |
node_data * | data |
in_edges_iterator | akt_edge [2] |
in_edges_iterator | last_edge [2] |
in_edges_iterator | begin_edge [2] |
int | inout |
bool | directed |
adj_edges_iterator | akt_edge |
node | int_node |
Friends | |
class | graph |
class | edge |
class | adj_edges_iterator |
GTL_EXTERN friend bool | operator== (node, node) |
GTL_EXTERN friend bool | operator!= (node, node) |
GTL_EXTERN friend bool | operator< (node, node) |
GTL_EXTERN friend ostream & | operator<< (ostream &os, const node &n) |
A node in a graph.
Iterator for adjacent nodes of a node.
Iterator for all incident edges of a node.
Iterator for adjacent edges of a node.
Definition at line 53 of file node.h.
View newest version in sPHENIX GitHub at line 53 of file node.h
typedef list<edge>::const_iterator node::in_edges_iterator |
typedef list<edge>::const_iterator node::out_edges_iterator |
__GTL_BEGIN_NAMESPACE node::node | ( | ) |
Default constructor. Creates an invalid node. The only way to obtain a valid node is through graph::new_node Example:
graph g; node n;
n = g.new_node();
Definition at line 30 of file node.cpp.
View newest version in sPHENIX GitHub at line 30 of file node.cpp
node::adj_edges_iterator node::adj_edges_begin | ( | ) | const |
Iterate through all adjacent edges.
Definition at line 53 of file node.cpp.
View newest version in sPHENIX GitHub at line 53 of file node.cpp
References adj_edges_iterator().
Referenced by bfs::bfs_sub(), planarity::case_B(), planarity::case_D(), planarity::case_E(), ratio_cut_partition::compute_target_node(), planarity::dfs_bushform(), pathfinder::dfs_sub(), dfs::dfs_sub(), fm_partition::inital_gain_of_node_on_sideA(), ratio_cut_partition::inital_gain_of_node_on_sideA(), fm_partition::inital_gain_of_node_on_sideB(), ratio_cut_partition::inital_gain_of_node_on_sideB(), min_tree::run(), dijkstra::run(), planarity::up_until_marked(), fm_partition::update_data_structure_A2B(), ratio_cut_partition::update_data_structure_A2B(), fm_partition::update_data_structure_B2A(), and ratio_cut_partition::update_data_structure_B2A().
node::adj_edges_iterator node::adj_edges_end | ( | ) | const |
Iterate through all adjacent edges.
Definition at line 58 of file node.cpp.
View newest version in sPHENIX GitHub at line 58 of file node.cpp
References adj_edges_iterator().
Referenced by bfs::bfs_sub(), planarity::case_B(), planarity::case_D(), planarity::case_E(), ratio_cut_partition::compute_target_node(), planarity::dfs_bushform(), pathfinder::dfs_sub(), dfs::dfs_sub(), fm_partition::inital_gain_of_node_on_sideA(), ratio_cut_partition::inital_gain_of_node_on_sideA(), fm_partition::inital_gain_of_node_on_sideB(), ratio_cut_partition::inital_gain_of_node_on_sideB(), min_tree::run(), dijkstra::run(), planarity::up_until_marked(), fm_partition::update_data_structure_A2B(), ratio_cut_partition::update_data_structure_A2B(), fm_partition::update_data_structure_B2A(), and ratio_cut_partition::update_data_structure_B2A().
node::adj_edges_iterator | ( | ) |
Referenced by adj_edges_begin(), adj_edges_end(), bfs::bfs_sub(), planarity::case_B(), planarity::case_D(), planarity::case_E(), ratio_cut_partition::compute_target_node(), planarity::dfs_bushform(), pathfinder::dfs_sub(), dfs::dfs_sub(), fm_partition::inital_gain_of_node_on_sideA(), ratio_cut_partition::inital_gain_of_node_on_sideA(), fm_partition::inital_gain_of_node_on_sideB(), ratio_cut_partition::inital_gain_of_node_on_sideB(), min_tree::run(), bid_dijkstra::run(), dijkstra::run(), planarity::up_until_marked(), fm_partition::update_data_structure_A2B(), ratio_cut_partition::update_data_structure_A2B(), fm_partition::update_data_structure_B2A(), and ratio_cut_partition::update_data_structure_B2A().
node::adj_edges_iterator | ( | node | , |
bool | |||
) |
node::adj_nodes_iterator node::adj_nodes_begin | ( | ) | const |
Iterate through all adjacent nodes.
Definition at line 43 of file node.cpp.
View newest version in sPHENIX GitHub at line 43 of file node.cpp
References adj_nodes_iterator().
node::adj_nodes_iterator node::adj_nodes_end | ( | ) | const |
Iterate through all adjacent nodes.
Definition at line 48 of file node.cpp.
View newest version in sPHENIX GitHub at line 48 of file node.cpp
References adj_nodes_iterator().
node::adj_nodes_iterator | ( | ) |
node::adj_nodes_iterator | ( | const node & | , |
bool | |||
) |
int node::degree | ( | ) | const |
Returns the degree of the node, i. e. node::outdeg + node::indeg .
Definition at line 93 of file node.cpp.
View newest version in sPHENIX GitHub at line 93 of file node.cpp
References indeg(), and outdeg().
Referenced by biconnectivity::new_start_handler().
int node::excentricity | ( | ) | const |
Returns the excentricity of the node, i.e. the maximum graph-theoretic distance to another node
Definition at line 146 of file node.cpp.
View newest version in sPHENIX GitHub at line 146 of file node.cpp
References KFPMath::b, bfs::calc_level(), data, bfs::end(), bfs::level(), node_data::owner, bfs::run(), and bfs::start_node().
Referenced by graph::center().
int node::id | ( | ) | const |
Definition at line 108 of file node.cpp.
View newest version in sPHENIX GitHub at line 108 of file node.cpp
References data, and node_data::id.
Referenced by operator<<(), and Jetscape::PartonShower::save_node_info_handler().
node::in_edges_iterator node::in_edges_begin | ( | ) | const |
Iterate through all incoming edges.
Definition at line 73 of file node.cpp.
View newest version in sPHENIX GitHub at line 73 of file node.cpp
References data, and node_data::edges.
Referenced by maxflow_sap::comp_dist_labels(), maxflow_pp::comp_min_throughput(), graph::del_node(), maxflow_pp::get_sp_backwards(), maxflow_pp::hide_unreachable_nodes(), Jetscape::Parton::parents(), planarity::run_on_biconnected(), and maxflow_pp::store_temp_unvisible_edges().
node::in_edges_iterator node::in_edges_end | ( | ) | const |
Iterate through all incoming edges.
Definition at line 78 of file node.cpp.
View newest version in sPHENIX GitHub at line 78 of file node.cpp
References data, and node_data::edges.
Referenced by maxflow_sap::comp_dist_labels(), maxflow_pp::comp_min_throughput(), graph::del_node(), maxflow_pp::get_sp_backwards(), maxflow_pp::hide_unreachable_nodes(), Jetscape::Parton::parents(), planarity::run_on_biconnected(), and maxflow_pp::store_temp_unvisible_edges().
int node::indeg | ( | ) | const |
Returns the in degree of the node, i. e. the number of incoming edges.
Definition at line 103 of file node.cpp.
View newest version in sPHENIX GitHub at line 103 of file node.cpp
References data, and node_data::edges.
Referenced by maxflow_ff::create_artif_source_target(), maxflow_sap::create_artif_source_target(), maxflow_pp::create_artif_source_target(), degree(), Jetscape::PartonShower::GetNumberOfParents(), and main().
node::inout_edges_iterator node::inout_edges_begin | ( | ) | const |
Iterate through all incoming and outgoing edges.
Definition at line 63 of file node.cpp.
View newest version in sPHENIX GitHub at line 63 of file node.cpp
References inout_edges_iterator().
node::inout_edges_iterator node::inout_edges_end | ( | ) | const |
Iterate through all incoming and outgoing edges.
Definition at line 68 of file node.cpp.
View newest version in sPHENIX GitHub at line 68 of file node.cpp
References inout_edges_iterator().
node::inout_edges_iterator | ( | ) |
Referenced by inout_edges_begin(), and inout_edges_end().
node::inout_edges_iterator | ( | node | n, |
bool | start | ||
) |
|
private |
Definition at line 113 of file node.cpp.
View newest version in sPHENIX GitHub at line 113 of file node.cpp
References data, graph::is_directed(), and node_data::owner.
bool node::is_hidden | ( | ) | const |
Returns true iff node is hidden.
Definition at line 141 of file node.cpp.
View newest version in sPHENIX GitHub at line 141 of file node.cpp
References data, and node_data::hidden.
Referenced by graph::hide_node(), and graph::restore_node().
|
private |
Definition at line 118 of file node.cpp.
View newest version in sPHENIX GitHub at line 118 of file node.cpp
References data, graph::is_undirected(), and node_data::owner.
bool node::operator!= | ( | const adj_edges_iterator & | ) | const |
bool node::operator!= | ( | const inout_edges_iterator & | ) | const |
bool node::operator!= | ( | const adj_nodes_iterator & | ) | const |
const edge& node::operator* | ( | ) | const |
const edge& node::operator* | ( | ) | const |
const node& node::operator* | ( | ) | const |
adj_edges_iterator& node::operator++ | ( | ) |
adj_edges_iterator node::operator++ | ( | int | ) |
inout_edges_iterator& node::operator++ | ( | ) |
inout_edges_iterator node::operator++ | ( | int | ) |
adj_nodes_iterator& node::operator++ | ( | ) |
adj_nodes_iterator node::operator++ | ( | int | ) |
adj_edges_iterator& node::operator-- | ( | ) |
adj_edges_iterator node::operator-- | ( | int | ) |
inout_edges_iterator& node::operator-- | ( | ) |
inout_edges_iterator node::operator-- | ( | int | ) |
adj_nodes_iterator& node::operator-- | ( | ) |
adj_nodes_iterator node::operator-- | ( | int | ) |
const edge* node::operator-> | ( | ) | const |
const edge* node::operator-> | ( | ) | const |
const node* node::operator-> | ( | ) | const |
bool node::operator== | ( | const adj_edges_iterator & | ) | const |
bool node::operator== | ( | const inout_edges_iterator & | ) | const |
bool node::operator== | ( | const adj_nodes_iterator & | ) | const |
Returns the node on the opposite side of e
.
e | an edge incident to the node |
Definition at line 123 of file node.cpp.
View newest version in sPHENIX GitHub at line 123 of file node.cpp
References assert, edge::data, edge_data::nodes, and physmon_simulation::s.
Referenced by biconnectivity::after_recursive_call_handler(), planarity::attachment_cycle(), bfs::bfs_sub(), planarity::case_B(), planarity::case_C(), planarity::case_D(), planarity::case_E(), planar_embedding::check(), pathfinder::const_iterator::const_iterator(), planarity::dfs_bushform(), pathfinder::dfs_sub(), dfs::dfs_sub(), planarity::extend_embedding(), components::old_adj_node_handler(), biconnectivity::old_adj_node_handler(), pathfinder::const_iterator::operator++(), pathfinder::pathfinder(), pq_leaf::pq_leaf(), bid_dijkstra::run(), dijkstra::run(), planarity::run_on_biconnected(), planarity::run_through_partial(), planarity::up_until_marked(), and planar_embedding::write_st().
node::out_edges_iterator node::out_edges_begin | ( | ) | const |
Iterate through all outgoing edges.
Definition at line 83 of file node.cpp.
View newest version in sPHENIX GitHub at line 83 of file node.cpp
References data, and node_data::edges.
Referenced by maxflow_sap::advance(), maxflow_ff::comp_max_flow(), maxflow_sap::comp_max_flow(), maxflow_pp::comp_max_flow(), maxflow_pp::comp_min_throughput(), maxflow_ff::comp_sp(), graph::del_node(), maxflow_pp::get_sp_ahead(), maxflow_sap::has_an_admissible_arc(), maxflow_pp::hide_unreachable_nodes(), graph::insert_reverse_edges(), graph::is_bidirected(), maxflow_pp::leveling(), maxflow_sap::min_neighbour_label(), planarity::run_on_biconnected(), and maxflow_pp::store_temp_unvisible_edges().
node::out_edges_iterator node::out_edges_end | ( | ) | const |
Iterate through all outgoing edges.
Definition at line 88 of file node.cpp.
View newest version in sPHENIX GitHub at line 88 of file node.cpp
References data, and node_data::edges.
Referenced by maxflow_sap::advance(), maxflow_ff::comp_max_flow(), maxflow_sap::comp_max_flow(), maxflow_pp::comp_max_flow(), maxflow_pp::comp_min_throughput(), maxflow_ff::comp_sp(), graph::del_node(), maxflow_pp::get_sp_ahead(), maxflow_sap::has_an_admissible_arc(), maxflow_pp::hide_unreachable_nodes(), graph::insert_reverse_edges(), graph::is_bidirected(), maxflow_pp::leveling(), maxflow_sap::min_neighbour_label(), planarity::run_on_biconnected(), and maxflow_pp::store_temp_unvisible_edges().
int node::outdeg | ( | ) | const |
Returns the out degree of the node, i. e. the number of outgoing edges.
Definition at line 98 of file node.cpp.
View newest version in sPHENIX GitHub at line 98 of file node.cpp
References data, and node_data::edges.
Referenced by maxflow_ff::create_artif_source_target(), maxflow_sap::create_artif_source_target(), maxflow_pp::create_artif_source_target(), degree(), and Jetscape::PartonShower::GetNumberOfChilds().
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
private |
|
private |
|
private |
|
private |
Definition at line 222 of file node.h.
View newest version in sPHENIX GitHub at line 222 of file node.h
Referenced by edge::change_source(), edge::change_target(), graph::del_node(), excentricity(), graph::hide_node(), id(), in_edges_begin(), in_edges_end(), indeg(), is_directed(), is_hidden(), is_undirected(), graph::load(), graph::new_edge(), graph::new_node(), operator!=(), operator<(), operator==(), out_edges_begin(), out_edges_end(), outdeg(), and graph::restore_node().
|
private |
|
private |
|
private |
|
private |