9 #ifndef GlobeEngine_UndirectedEdge_h
10 #define GlobeEngine_UndirectedEdge_h
12 #include "OpenGL_Includes.h"
23 create(std::numeric_limits<T>::max(), std::numeric_limits<T>::max(), std::numeric_limits<T>::max());
27 create(std::numeric_limits<T>::max(), _node1,_node2);
31 create(_uid, _node1,_node2);
34 void create(T _uid, T _node1, T _node2) {
50 if (_nodeID !=
nodes[0] && _nodeID !=
nodes[1]) {
54 if(_nodeID ==
nodes[0]) {
61 if(this->
nodes[0] == _nodeID || this->
nodes[1] == _nodeID){
79 friend std::ostream& operator<< (std::ostream &out, const UndirectedEdge< T > &edge) {
80 out <<
"("<< edge.uid <<
": " << edge.nodes[0] <<
", " << edge.nodes[1] <<
", marked: " << edge.marked <<
")";
UndirectedEdge< unsigned int > Edgeui
Definition: UndirectedEdge.h:90
UndirectedEdge< unsigned int > UndirectedEdgeui
Definition: UndirectedEdge.h:91
UndirectedEdge(T _node1, T _node2)
Definition: UndirectedEdge.h:26
void unmark()
Definition: UndirectedEdge.h:71
void mark()
Definition: UndirectedEdge.h:67
UndirectedEdge(T _uid, T _node1, T _node2)
Definition: UndirectedEdge.h:30
bool marked
Definition: UndirectedEdge.h:85
void setNodes(T _node1, T _node2)
Definition: UndirectedEdge.h:40
Definition: DirectedEdge.h:16
const T * getNodes() const
Definition: UndirectedEdge.h:45
bool isMarked()
Definition: UndirectedEdge.h:75
T nodes[2]
Definition: UndirectedEdge.h:87
UndirectedEdge()
Definition: UndirectedEdge.h:22
Definition: UndirectedEdge.h:19
T uid
Definition: UndirectedEdge.h:86
void create(T _uid, T _node1, T _node2)
Definition: UndirectedEdge.h:34
bool isIDaNeighborNode(T _nodeID)
Definition: UndirectedEdge.h:60
T getOppositeNode(T _nodeID) const
Definition: UndirectedEdge.h:49