|
| typedef GraphBaseT< VertexType, EdgeType > | Base |
| |
| typedef SortedElementSet< typename Base::EdgeTypeRefArray > | SortedEdgeSet |
| |
| typedef SortedElementSet< typename Base::VertexTypeRefArray > | SortedVertexSet |
| |
| typedef std::map< typename Base::VertexTypeConstRef, Integer > | VertexLevelMap |
| |
| typedef std::map< typename Base::EdgeTypeConstRef, Integer > | EdgeLevelMap |
| |
| typedef std::set< std::pair< VertexType, Integer >, std::function< bool(std::pair< VertexType, Integer >, std::pair< VertexType, Integer >)> > | VertexLevelSet |
| |
| typedef std::reference_wrapper< VertexType > | VertexTypeRef |
| |
| typedef std::reference_wrapper< const VertexType > | VertexTypeConstRef |
| |
| typedef std::reference_wrapper< EdgeType > | EdgeTypeRef |
| |
| typedef std::reference_wrapper< const EdgeType > | EdgeTypeConstRef |
| |
| typedef std::list< VertexType > | VertexList |
| |
| typedef std::list< EdgeType > | EdgeList |
| |
| typedef SharedArray< VertexTypeRef > | VertexTypeRefArray |
| |
| typedef SharedArray< VertexTypeConstRef > | VertexTypeConstRefArray |
| |
| typedef SharedArray< EdgeTypeRef > | EdgeTypeRefArray |
| |
| typedef SharedArray< EdgeTypeConstRef > | EdgeTypeConstRefArray |
| |
| typedef std::map< VertexTypeConstRef, std::pair< VertexTypeRefArray, EdgeTypeRefArray > > | AdjacencyListType |
| |
| typedef std::pair< VertexTypeRef, VertexTypeRef > | VertexPair |
| |
| typedef std::map< EdgeTypeConstRef, VertexPair > | EdgeToVertexMap |
| |
| typedef IterableEnsembleT< VertexList > | VertexSet |
| |
| typedef IterableEnsembleT< EdgeList > | EdgeSet |
| |
| typedef IterableEnsembleT< EdgeTypeRefArray > | ConnectedEdgeSet |
| |
| typedef VertexType | VertexRef |
| |
| typedef EdgeType | EdgeRef |
| |
|
| | DirectedAcyclicGraphT (ITraceMng *trace_mng) |
| |
| virtual | ~DirectedAcyclicGraphT () |
| |
| void | addEdge (const VertexType &source_vertex, const VertexType &target_vertex, const EdgeType &source_to_target_edge) |
| |
| void | addEdge (VertexType &&source_vertex, VertexType &&target_vertex, EdgeType &&source_to_target_edge) |
| |
| SortedVertexSet | topologicalSort () |
| |
| SortedEdgeSet | spanningTree () |
| |
| void | print () |
| |
| bool | hasCycle () |
| |
| void | addEdge (const VertexType &source_vertex, const VertexType &target_vertex, const EdgeType &source_to_target_edge) |
| | Les arêtes multiples (constituées des mêmes noeuds source et target) ne sont pas autorisées (throw FatalErrorException)
|
| |
| void | addEdge (VertexType &&source_vertex, VertexType &&target_vertex, EdgeType &&source_to_target_edge) |
| |
| template<class Vertex, class Edge> |
| void | _addEdge (Vertex source_vertex, Vertex target_vertex, Edge source_to_target_edge) |
| |
| EdgeType * | getEdge (const VertexType &source_vertex, const VertexType &target_vertex) |
| | Renvoie un pointeur vers l'instance d'EdgeType stockée dans le graphe ou nullptr si non trouvé.
|
| |
| const EdgeType * | getEdge (const VertexType &source_vertex, const VertexType &target_vertex) const |
| | Renvoie un pointeur vers l'instance d'EdgeType stockée dans le graphe ou nullptr si non trouvé.
|
| |
| EdgeType * | _getEdge (const VertexType &source_vertex, const VertexType &target_vertex) |
| |
| VertexType * | getSourceVertex (const EdgeType &edge) |
| |
| const VertexType * | getSourceVertex (const EdgeType &edge) const |
| |
| VertexType * | getTargetVertex (const EdgeType &edge) |
| |
| const VertexType * | getTargetVertex (const EdgeType &edge) const |
| |
| VertexSet | vertices () |
| |
| EdgeSet | edges () |
| |
| ConnectedEdgeSet | inEdges (const VertexType &vertex) |
| |
| ConnectedEdgeSet | outEdges (const VertexType &vertex) |
| |
template<class VertexType, class EdgeType>
class Arcane::DirectedAcyclicGraphT< VertexType, EdgeType >
Template class for DirectedAcyclicGraph. VertexType must implement a less comparison operator.
Définition à la ligne 38 du fichier DirectedAcyclicGraphT.h.