GlobeEngine
geGraph::Graph< NODETYPE, EDGETYPE, U > Class Template Reference

#include <Graph.h>

Inheritance diagram for geGraph::Graph< NODETYPE, EDGETYPE, U >:
geGraph::UndirectedGraph< NODETYPE, EDGETYPE, U > geGraph::ReducableUndirectedGraph< NODETYPE, EDGETYPE, U > geGraph::ReducableWeightedUndirectedGraph< NODETYPE, EDGETYPE, U >

Public Member Functions

 Graph ()
 
 ~Graph ()
 
void clearProperties ()
 
unsigned int addNode (NODETYPE _node)
 
const std::map< U, NODETYPE > getMapToIterate () const
 
getNodeCount () const
 
getNodeIDByContent (const NODETYPE _content) const
 
NODETYPE getNodeContentByID (U _id) const
 
std::vector< GraphNode< U > > getGraphNodes ()
 
std::vector< U > getEndnodeIDs ()
 
std::vector< U > getCrossingIDs ()
 
void updateGraphProperties ()
 
unsigned int getNumberOfEndpoints () const
 
unsigned int getNumberOfCrossings () const
 
getEndPointID (unsigned int _idx)
 
getCrossingID (unsigned int _idx)
 
getEdgeCount ()
 
EDGETYPE * getEdge (unsigned int _idx)
 
GraphNode< U > getNode (unsigned int _idx)
 

Protected Attributes

std::map< NODETYPE, U > nodeByContent
 
std::map< U, NODETYPE > nodeByID
 
std::vector< GraphNode< U > > nodes
 
std::vector< EDGETYPE > edges
 
std::map< std::pair< U, U >, U > forwardEdges
 
std::map< std::pair< U, U >, U > backwardEdges
 
std::vector< U > endPoints
 
std::vector< U > crossings
 
unsigned int numberOfConnectors
 
unsigned int numberOfAbandonedNodes
 

Constructor & Destructor Documentation

template<class NODETYPE , class EDGETYPE , class U >
geGraph::Graph< NODETYPE, EDGETYPE, U >::Graph ( )
inline
template<class NODETYPE , class EDGETYPE , class U >
geGraph::Graph< NODETYPE, EDGETYPE, U >::~Graph ( )
inline

Member Function Documentation

template<class NODETYPE , class EDGETYPE , class U >
unsigned int geGraph::Graph< NODETYPE, EDGETYPE, U >::addNode ( NODETYPE  _node)
inline
template<class NODETYPE , class EDGETYPE , class U >
void geGraph::Graph< NODETYPE, EDGETYPE, U >::clearProperties ( )
inline
template<class NODETYPE , class EDGETYPE , class U >
U geGraph::Graph< NODETYPE, EDGETYPE, U >::getCrossingID ( unsigned int  _idx)
inline
template<class NODETYPE , class EDGETYPE , class U >
std::vector< U > geGraph::Graph< NODETYPE, EDGETYPE, U >::getCrossingIDs ( )
inline
template<class NODETYPE , class EDGETYPE , class U >
EDGETYPE* geGraph::Graph< NODETYPE, EDGETYPE, U >::getEdge ( unsigned int  _idx)
inline
template<class NODETYPE , class EDGETYPE , class U >
U geGraph::Graph< NODETYPE, EDGETYPE, U >::getEdgeCount ( )
inline
template<class NODETYPE , class EDGETYPE , class U >
std::vector< U > geGraph::Graph< NODETYPE, EDGETYPE, U >::getEndnodeIDs ( )
inline
template<class NODETYPE , class EDGETYPE , class U >
U geGraph::Graph< NODETYPE, EDGETYPE, U >::getEndPointID ( unsigned int  _idx)
inline
template<class NODETYPE , class EDGETYPE , class U >
std::vector< GraphNode< U > > geGraph::Graph< NODETYPE, EDGETYPE, U >::getGraphNodes ( )
inline
template<class NODETYPE , class EDGETYPE , class U >
const std::map< U, NODETYPE > geGraph::Graph< NODETYPE, EDGETYPE, U >::getMapToIterate ( ) const
inline
template<class NODETYPE , class EDGETYPE , class U >
GraphNode< U > geGraph::Graph< NODETYPE, EDGETYPE, U >::getNode ( unsigned int  _idx)
inline
template<class NODETYPE , class EDGETYPE , class U >
NODETYPE geGraph::Graph< NODETYPE, EDGETYPE, U >::getNodeContentByID ( _id) const
inline
template<class NODETYPE , class EDGETYPE , class U >
U geGraph::Graph< NODETYPE, EDGETYPE, U >::getNodeCount ( ) const
inline
template<class NODETYPE , class EDGETYPE , class U >
U geGraph::Graph< NODETYPE, EDGETYPE, U >::getNodeIDByContent ( const NODETYPE  _content) const
inline
template<class NODETYPE , class EDGETYPE , class U >
unsigned int geGraph::Graph< NODETYPE, EDGETYPE, U >::getNumberOfCrossings ( ) const
inline
template<class NODETYPE , class EDGETYPE , class U >
unsigned int geGraph::Graph< NODETYPE, EDGETYPE, U >::getNumberOfEndpoints ( ) const
inline
template<class NODETYPE , class EDGETYPE , class U >
void geGraph::Graph< NODETYPE, EDGETYPE, U >::updateGraphProperties ( )
inline

Member Data Documentation

template<class NODETYPE , class EDGETYPE , class U >
std::map< std::pair < U , U >, U > geGraph::Graph< NODETYPE, EDGETYPE, U >::backwardEdges
protected
template<class NODETYPE , class EDGETYPE , class U >
std::vector< U > geGraph::Graph< NODETYPE, EDGETYPE, U >::crossings
protected
template<class NODETYPE , class EDGETYPE , class U >
std::vector< EDGETYPE > geGraph::Graph< NODETYPE, EDGETYPE, U >::edges
protected
template<class NODETYPE , class EDGETYPE , class U >
std::vector< U > geGraph::Graph< NODETYPE, EDGETYPE, U >::endPoints
protected
template<class NODETYPE , class EDGETYPE , class U >
std::map< std::pair < U , U >, U > geGraph::Graph< NODETYPE, EDGETYPE, U >::forwardEdges
protected
template<class NODETYPE , class EDGETYPE , class U >
std::map< NODETYPE, U > geGraph::Graph< NODETYPE, EDGETYPE, U >::nodeByContent
protected
template<class NODETYPE , class EDGETYPE , class U >
std::map< U, NODETYPE > geGraph::Graph< NODETYPE, EDGETYPE, U >::nodeByID
protected
template<class NODETYPE , class EDGETYPE , class U >
std::vector< GraphNode< U > > geGraph::Graph< NODETYPE, EDGETYPE, U >::nodes
protected
template<class NODETYPE , class EDGETYPE , class U >
unsigned int geGraph::Graph< NODETYPE, EDGETYPE, U >::numberOfAbandonedNodes
protected
template<class NODETYPE , class EDGETYPE , class U >
unsigned int geGraph::Graph< NODETYPE, EDGETYPE, U >::numberOfConnectors
protected

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