DiaDes
0.1
DIAgnosis of Discrete-Event System
|
#include <GraphInt.hh>
Public Types | |
typedef Diades::Utils::Exception< Graph > | Exception |
typedef vector< Edge >::size_type | EdgeSizeType |
typedef vector< Node >::size_type | NodeSizeType |
typedef Edge::EdgeId | EdgeId |
typedef Node::NodeId | NodeId |
typedef vector< Node >::size_type | SizeType |
Public Member Functions | |
vector< Edge > & | vEdges () |
vector< Node > & | vNodes () |
list< EdgeSizeType > & | listEdgeId () |
list< NodeSizeType > & | listNodeId () |
const vector< Edge > & | vEdges () const |
const vector< Node > & | vNodes () const |
const list< EdgeSizeType > & | listEdgeId () const |
const list< NodeSizeType > & | listNodeId () const |
unsigned | id () const |
Graph () | |
Graph (const Graph &graph) | |
virtual | ~Graph () |
Graph & | operator= (const Graph &graph) |
bool | sanityCheck (string &log) const |
ostream & | toDot (ostream &os) |
void | transitiveClosure (Edge edge) |
bool | sanityCheck (string &log) const |
bool | valid () const |
ostream & | toDot (ostream &os) |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Accessors | |
bool | succeeds (const Node &n1, const Node &n2) const |
NodeSizeType | numberOfNodes () const |
EdgeSizeType | numberOfEdges () const |
bool | empty () const |
Node | target (const Edge &edge) const |
Node | source (const Edge &edge) const |
const Node & | targetRef (const Edge &edge) const |
const Node & | sourceRef (const Edge &edge) const |
bool | cycleDetection (const Node &n) const |
bool | succeeds (const Node &n1, const Node &n2) const |
bool | preceeds (const Node &n1, const Node &n2) const |
bool | operator== (const Graph &g) const |
bool | operator!= (const Graph &g) const |
bool | operator< (const Graph &g) const |
SizeType | numberOfNodes () const |
SizeType | numberOfEdges () const |
bool | empty () const |
Node | target (const Edge &edge) const |
Node | source (const Edge &edge) const |
const Node & | targetRef (const Edge &edge) const |
const Node & | sourceRef (const Edge &edge) const |
Node | getNode (unsigned id) const |
Edge | getEdge (unsigned id) const |
void | transitiveClosure (Edge edge) |
bool | cycleDetection (const Node &n) const |
Construction of the graph | |
Node | newNode () |
Node | newNode (NodeSizeType index) |
Node | getNode (NodeSizeType index) const |
Edge | getEdge (EdgeSizeType index) const |
Edge | newEdge (Node source, Node target) |
Edge | newEdge (EdgeSizeType index, Node source, Node target) |
Node | newNode () |
Edge | newEdge (Node source, Node target) |
Deletion | |
virtual void | deleteNode (Node &node) |
virtual void | deleteNode (NodeIterator start, NodeIterator end) |
virtual void | deleteEdge (Edge &edge) |
virtual void | deleteEdge (EdgeIterator start, EdgeIterator end) |
virtual void | deleteEdge (LocalEdgeIterator start, LocalEdgeIterator end) |
virtual void | deleteAllEdges () |
void | clear () |
virtual void | deleteNode (Node &node) |
virtual void | deleteNode (NodeIterator start, NodeIterator end) |
virtual void | deleteEdge (Edge &edge) |
virtual void | deleteEdge (EdgeIterator start, EdgeIterator end) |
virtual void | deleteEdge (LocalEdgeIterator start, LocalEdgeIterator end) |
virtual void | deleteAllEdges () |
void | clear () |
Iterators | |
NodeIterator | nodeBegin () |
NodeIterator | nodeEnd () |
NodeIterator | nodeBegin () const |
NodeIterator | nodeEnd () const |
EdgeIterator | edgeBegin () |
EdgeIterator | edgeEnd () |
EdgeIterator | edgeBegin () const |
EdgeIterator | edgeEnd () const |
OutEdgeIterator | outEdgeBegin (const Node &node) const |
OutEdgeIterator | outEdgeEnd (const Node &node) const |
InEdgeIterator | inEdgeBegin (const Node &node) const |
InEdgeIterator | inEdgeEnd (const Node &node) const |
NodeIterator | nodeBegin () |
NodeIterator | nodeEnd () |
NodeIterator | nodeBegin () const |
NodeIterator | nodeEnd () const |
EdgeIterator | edgeBegin () |
EdgeIterator | edgeEnd () |
EdgeIterator | edgeBegin () const |
EdgeIterator | edgeEnd () const |
OutEdgeIterator | outEdgeBegin (const Node &node) const |
OutEdgeIterator | outEdgeEnd (const Node &node) const |
InEdgeIterator | inEdgeBegin (const Node &node) const |
InEdgeIterator | inEdgeEnd (const Node &node) const |
EdgeSizeType | edgeCapacity () const |
NodeSizeType | nodeCapacity () const |
Constructors and Destructor | |
Graph () | |
Graph (GraphData *data) | |
Graph (const Graph &g) | |
const GraphData * | data () const |
GraphData * | data () |
unsigned | id () const |
void | init () |
void | destroy () |
virtual | ~Graph () |
Graph & | operator= (const Graph &g) |
SizeType | edgeCapacity () const |
SizeType | nodeCapacity () const |
Static Public Member Functions | |
static string | typeName () |
Private Member Functions | |
void | copyGraph (const Graph &graph) |
Private Attributes | |
vector< Edge > | _vEdges |
vector< Node > | _vNodes |
list< EdgeSizeType > | _listEdgeId |
list< NodeSizeType > | _listNodeId |
NodeSizeType | _nbNodes |
EdgeSizeType | _nbEdges |
unsigned | _id |
GraphData * | _data |
Friends | |
ostream & | operator<< (ostream &os, const Graph &g) |
This library is a very basic implementation of graph structure. A Graph implements a directed graph structure. This Graph is composed of states (State) and edges (Edge). A State implements the notion of node of the Graph and a Edge implements the notion of edge of the Graph. In order to add some information to a State, you have to use a StateMap. To add an information to a Edge, you have to use a EdgeMap. A State object is a small object so it can be used like a reference (the real data of the State are in StateData). A Edge object can also be used like a reference (the real data of the EdgeData).
A few graph algorithms have been implemented in the library (Tremaux, and Tarjan)
Here is an example how to use the Graph library:
A Graph.
A Graph defines a directed graph. A Graph is a set of nodes (Node) and edges (Edge).
Definition at line 176 of file GraphInt.hh.
typedef Edge::EdgeId Diades::Graph::Graph::EdgeId |
Definition at line 184 of file GraphInt.hh.
typedef vector<Edge>::size_type Diades::Graph::Graph::EdgeSizeType |
Definition at line 182 of file GraphInt.hh.
typedef Diades::Utils::Exception<Graph> Diades::Graph::Graph::Exception |
Definition at line 181 of file GraphInt.hh.
typedef Node::NodeId Diades::Graph::Graph::NodeId |
Definition at line 185 of file GraphInt.hh.
typedef vector<Node>::size_type Diades::Graph::Graph::NodeSizeType |
Definition at line 183 of file GraphInt.hh.
typedef vector<Node>::size_type Diades::Graph::Graph::SizeType |
Definition at line 41 of file GraphIntOld.hh.
Diades::Graph::Graph::Graph | ( | ) |
Default constructor
Make an empty graph
Referenced by Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::behaviour(), id(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::setId().
Diades::Graph::Graph::Graph | ( | const Graph & | graph | ) |
|
virtual |
Destructor
Desallocate all the memory resource used by its states and transitions.
Referenced by id().
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
Destructor Destructor
Definition at line 151 of file GraphIntOld.hh.
|
inline |
Elimination of edge paths
s | a Node |
Elimination of transition paths from the state s in the current graph. Make the graph empty
Desallocate all the memory resource used by its nodes and edges.
Definition at line 478 of file GraphIntOld.hh.
void Diades::Graph::Graph::clear | ( | ) |
Elimination of edge paths
s | a Node |
Elimination of transition paths from the state s in the current graph. Make the graph empty
Desallocate all the memory resource used by its nodes and edges.
Referenced by Diades::Utils::PartialOrder< Diades::Petri::Extension, Diades::Petri::AdequateOrder, Diades::Petri::ExtensionEquality >::clear(), Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::clear(), empty(), and Diades::Automata::ClassicalDiagnoser::~ClassicalDiagnoser().
|
private |
Copy contructor
graph | the Graph to copy The copy is a full semantical copy however, the copy has its own identifier the nodes and edges are also copied. The internal representation does not have necessarily the same structure. The Node ids and edge ids are the same. |
Referenced by operator=().
|
inline |
bool Diades::Graph::Graph::cycleDetection | ( | const Node & | n | ) | const |
|
inline |
Definition at line 80 of file GraphIntOld.hh.
References _data.
Referenced by source(), and sourceRef().
|
inline |
Definition at line 89 of file GraphIntOld.hh.
References _data.
|
inlinevirtual |
Deletion of all the edges
Definition at line 456 of file GraphIntOld.hh.
|
virtual |
Deletion of all the edges
Referenced by empty().
|
inlinevirtual |
|
inlinevirtual |
Deletion of edges
start | EdgeIterator |
end | EdgeIterator |
Deletion of the edges in [start,end) (desallocation of memory).
Definition at line 441 of file GraphIntOld.hh.
|
inlinevirtual |
Definition at line 447 of file GraphIntOld.hh.
|
virtual |
Deletion of an Edge
edge | Edge to delete |
Deletion of the Edge egde (desallocation of memory).
Referenced by Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::deleteTransition(), empty(), and inEdgeEnd().
|
virtual |
Deletion of edges
start | EdgeIterator |
end | EdgeIterator |
Deletion of the edges in [start,end) (desallocation of memory).
|
virtual |
|
inlinevirtual |
Deletion of a Node
node | Node to delete |
Deletion of the Node node. All the input and output edges of 'nodes' are deleted. (desallocation of memory)
Definition at line 395 of file GraphIntOld.hh.
|
inlinevirtual |
Deletion of nodes
start | GraphIterator |
end | GraphIterator |
Deletion of the nodes in [start,end). All the input and output edges are deleted. (desallocation of memory)
Definition at line 411 of file GraphIntOld.hh.
|
virtual |
Deletion of a Node
node | Node to delete |
Deletion of the Node node. All the input and output edges of 'nodes' are deleted. (desallocation of memory)
Referenced by Diades::Graph::deleteEdge(), Diades::Graph::deleteNode(), Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::deleteState(), empty(), Diades::Utils::PartialOrder< Diades::Petri::Extension, Diades::Petri::AdequateOrder, Diades::Petri::ExtensionEquality >::erase(), and Diades::Utils::PartialOrder< Diades::Petri::Extension, Diades::Petri::AdequateOrder, Diades::Petri::ExtensionEquality >::insert().
|
virtual |
Deletion of nodes
start | GraphIterator |
end | GraphIterator |
Deletion of the nodes in [start,end). All the input and output edges are deleted. (desallocation of memory)
|
inline |
Destroy the graph (be careful, all living Graph objects pointing at the same internal data must be erased as well, not in use anymore.)
Definition at line 129 of file GraphIntOld.hh.
|
inline |
Iterator for the transitions in the graph
Definition at line 541 of file GraphIntOld.hh.
|
inline |
Iterator for the transitions in the graph
Definition at line 564 of file GraphIntOld.hh.
|
inline |
Iterator for the transitions in the graph
Definition at line 565 of file GraphInt.hh.
Referenced by Diades::Graph::ConstNodeMap< set< Diades::Automata::Event > >::export2dot(), Diades::Graph::NodeMap< Status >::export2dot(), Diades::Graph::ConstEdgeMap< ValueType >::export2dot(), Diades::Automata::Component::transitionBegin(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::transitionBegin().
|
inline |
Iterator for the transitions in the graph
Definition at line 583 of file GraphInt.hh.
|
inline |
Size of a graph
transitions | to measure |
Definition at line 657 of file GraphIntOld.hh.
|
inline |
Size of a graph
transitions | to measure |
Definition at line 660 of file GraphInt.hh.
|
inline |
Past-the-end iterator for the transitions of the graph.
Definition at line 552 of file GraphIntOld.hh.
|
inline |
Past-the-end iterator for the transitions of the graph.
Definition at line 574 of file GraphInt.hh.
Referenced by Diades::Graph::ConstEdgeMapIterator< T >::ConstEdgeMapIterator(), Diades::Graph::EdgeMapIterator< T >::operator++(), Diades::Graph::ConstEdgeMapIterator< T >::operator++(), Diades::Automata::Component::transitionEnd(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::transitionEnd().
|
inline |
Past-the-end iterator for the transitions of the graph.
Definition at line 575 of file GraphIntOld.hh.
References inEdgeBegin(), inEdgeEnd(), outEdgeBegin(), outEdgeEnd(), require, and valid().
|
inline |
Past-the-end iterator for the transitions of the graph.
Definition at line 592 of file GraphInt.hh.
References inEdgeBegin(), inEdgeEnd(), outEdgeBegin(), and outEdgeEnd().
|
inline |
Return true if the graph is empty
Definition at line 272 of file GraphIntOld.hh.
References getEdge(), getNode(), numberOfNodes(), require, source(), sourceRef(), target(), targetRef(), transitiveClosure(), and valid().
|
inline |
Return true if the graph is empty
Definition at line 332 of file GraphInt.hh.
References clear(), cycleDetection(), deleteAllEdges(), deleteEdge(), deleteNode(), getEdge(), getNode(), newEdge(), newNode(), numberOfNodes(), source(), sourceRef(), start, target(), and targetRef().
Referenced by Diades::Utils::PartialOrder< Diades::Petri::Extension, Diades::Petri::AdequateOrder, Diades::Petri::ExtensionEquality >::empty(), Diades::Automata::Component::isEmpty(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::isEmpty().
|
inline |
Edge Diades::Graph::Graph::getEdge | ( | EdgeSizeType | index | ) | const |
Get an Edge from its id
id | of the Edge |
Referenced by empty(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::finaliseTransitions().
|
inline |
Node Diades::Graph::Graph::getNode | ( | NodeSizeType | index | ) | const |
Get a Node from its id
id | of the Node |
Referenced by empty(), Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::finaliseInitialStates(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::finaliseStatePropertyIds().
|
inline |
Definition at line 98 of file GraphIntOld.hh.
References valid().
|
inline |
Definition at line 242 of file GraphInt.hh.
References _id, Graph(), and ~Graph().
Referenced by Diades::Graph::Edge::operator<(), operator<(), and boost::serialization::save().
InEdgeIterator Diades::Graph::Graph::inEdgeBegin | ( | const Node & | node | ) | const |
|
inline |
Iterator on Edges
node | : a Node |
Definition at line 822 of file GraphIntOld.hh.
References Diades::Graph::Node::inEdgeBegin(), Diades::Graph::Node::owner(), require, and Diades::Graph::Node::valid().
Referenced by edgeEnd().
InEdgeIterator Diades::Graph::Graph::inEdgeEnd | ( | const Node & | node | ) | const |
|
inline |
Iterator on Edges
node | : a Node |
Definition at line 828 of file GraphIntOld.hh.
References deleteEdge(), Diades::Graph::Node::inEdgeEnd(), Diades::Graph::Node::owner(), require, and Diades::Graph::Node::valid().
Referenced by edgeEnd().
|
inline |
Initialisation
make | an empty graph |
Definition at line 110 of file GraphIntOld.hh.
References valid().
|
inline |
Definition at line 218 of file GraphInt.hh.
References _listEdgeId.
|
inline |
Definition at line 234 of file GraphInt.hh.
References _listEdgeId.
|
inline |
Definition at line 222 of file GraphInt.hh.
References _listNodeId.
|
inline |
Definition at line 238 of file GraphInt.hh.
References _listNodeId.
Creation of a new edge
Definition at line 377 of file GraphIntOld.hh.
Creation of a new edge
Referenced by Diades::Petri::BoundedNet::addPost(), Diades::Petri::BoundedNet::addPre(), empty(), Diades::Utils::PartialOrder< Diades::Petri::Extension, Diades::Petri::AdequateOrder, Diades::Petri::ExtensionEquality >::insert(), Diades::Petri::MarkingGraph::newEdge(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::newTransition().
Edge Diades::Graph::Graph::newEdge | ( | EdgeSizeType | index, |
Node | source, | ||
Node | target | ||
) |
Node Diades::Graph::Graph::newNode | ( | ) |
|
inline |
Creation of a new node
reference | to the GraphData |
Definition at line 729 of file GraphIntOld.hh.
References _data, require, and valid().
Referenced by cycleDetection(), empty(), Diades::Utils::PartialOrder< Diades::Petri::Extension, Diades::Petri::AdequateOrder, Diades::Petri::ExtensionEquality >::insert(), Diades::Petri::BoundedNet::newPlace(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::newState().
Node Diades::Graph::Graph::newNode | ( | NodeSizeType | index | ) |
|
inline |
Iterator for the nodes in the graph
Definition at line 495 of file GraphIntOld.hh.
|
inline |
Iterator for the nodes in the graph
Definition at line 517 of file GraphIntOld.hh.
|
inline |
Iterator for the nodes in the graph
Definition at line 529 of file GraphInt.hh.
Referenced by Diades::Petri::BoundedNet::beginOfPlaces(), Diades::Petri::BoundedNet::beginOfTransitions(), Diades::Utils::PartialOrder< Diades::Petri::Extension, Diades::Petri::AdequateOrder, Diades::Petri::ExtensionEquality >::erase(), Diades::Graph::ConstNodeMap< set< Diades::Automata::Event > >::export2dot(), Diades::Graph::NodeMap< Status >::export2dot(), Diades::Utils::PartialOrder< Diades::Petri::Extension, Diades::Petri::AdequateOrder, Diades::Petri::ExtensionEquality >::insert(), Diades::Automata::Component::stateBegin(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::stateBegin().
|
inline |
Iterator for the nodes in the graph
Definition at line 547 of file GraphInt.hh.
|
inline |
Definition at line 668 of file GraphIntOld.hh.
|
inline |
Definition at line 669 of file GraphInt.hh.
References Diades::Utils::log(), sanityCheck(), toDot(), and transitiveClosure().
|
inline |
Past-the-end iterator for the nodes of the graph.
Definition at line 505 of file GraphIntOld.hh.
|
inline |
Past-the-end iterator for the nodes of the graph.
Definition at line 527 of file GraphIntOld.hh.
|
inline |
Past-the-end iterator for the nodes of the graph.
Definition at line 538 of file GraphInt.hh.
Referenced by Diades::Graph::ConstNodeMapIterator< T >::ConstNodeMapIterator(), Diades::Graph::EdgeMapIterator< T >::EdgeMapIterator(), Diades::Petri::BoundedNet::endOfPlaces(), Diades::Petri::BoundedNet::endOfTransitions(), Diades::Utils::PartialOrder< Diades::Petri::Extension, Diades::Petri::AdequateOrder, Diades::Petri::ExtensionEquality >::erase(), Diades::Utils::PartialOrder< Diades::Petri::Extension, Diades::Petri::AdequateOrder, Diades::Petri::ExtensionEquality >::insert(), Diades::Graph::NodeMapIterator< T >::NodeMapIterator(), Diades::Graph::ConstNodeMapIterator< T >::operator++(), Diades::Graph::NodeMapIterator< T >::operator++(), Diades::Automata::Component::stateEnd(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::stateEnd().
|
inline |
Past-the-end iterator for the nodes of the graph.
Definition at line 556 of file GraphInt.hh.
|
inline |
Return the number of transitions in the graph
Definition at line 261 of file GraphIntOld.hh.
|
inline |
Return the number of transitions in the graph
Definition at line 323 of file GraphInt.hh.
References _nbEdges.
Referenced by Diades::Petri::BoundedNet::numberOfArcs(), Diades::Automata::Component::numberOfTransitions(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::numberOfTransitions().
|
inline |
Return the number of states in the graph.
Definition at line 250 of file GraphIntOld.hh.
|
inline |
Return the number of states in the graph.
Definition at line 314 of file GraphInt.hh.
References _nbNodes.
Referenced by empty(), Diades::Automata::Component::numberOfStates(), and Diades::Automata::Experimental::StateMachine< _StatePropertyId, _InputSymbolId, _NullStatePropertyId, _NullInputSymbolId >::numberOfStates().
|
inline |
Difference operator
g | the Graph to compare (pointer equality) |
Definition at line 216 of file GraphIntOld.hh.
Referenced by Diades::Graph::ConstEdgeMapIterator< T >::ConstEdgeMapIterator(), Diades::Graph::ConstNodeMapIterator< T >::ConstNodeMapIterator(), Diades::Graph::EdgeMapIterator< T >::EdgeMapIterator(), and Diades::Graph::NodeMapIterator< T >::NodeMapIterator().
|
inline |
Comparison operator
g | the Graph to compare (pointer inequality) |
Definition at line 226 of file GraphIntOld.hh.
graph | the graph to copy |
Definition at line 282 of file GraphInt.hh.
References copyGraph(), and succeeds().
Assignation
Definition at line 619 of file GraphIntOld.hh.
|
inline |
Equality operator
g | the Graph to compare (pointer equality) |
Definition at line 205 of file GraphIntOld.hh.
Referenced by Diades::Graph::ConstEdgeMapIterator< T >::ConstEdgeMapIterator(), Diades::Graph::ConstNodeMapIterator< T >::ConstNodeMapIterator(), Diades::Graph::EdgeMapIterator< T >::EdgeMapIterator(), and Diades::Graph::NodeMapIterator< T >::NodeMapIterator().
OutEdgeIterator Diades::Graph::Graph::outEdgeBegin | ( | const Node & | node | ) | const |
|
inline |
Iterator on Edges
node | : a Node |
Definition at line 810 of file GraphIntOld.hh.
References Diades::Graph::Node::outEdgeBegin(), Diades::Graph::Node::owner(), require, and Diades::Graph::Node::valid().
Referenced by edgeEnd().
OutEdgeIterator Diades::Graph::Graph::outEdgeEnd | ( | const Node & | node | ) | const |
|
inline |
Iterator on Edges
node | : a Node |
Definition at line 816 of file GraphIntOld.hh.
References Diades::Graph::Node::outEdgeEnd(), Diades::Graph::Node::owner(), require, and Diades::Graph::Node::valid().
Referenced by edgeEnd().
Definition at line 186 of file GraphIntOld.hh.
References succeeds().
bool Diades::Graph::Graph::sanityCheck | ( | string & | log | ) | const |
Referenced by nodeCapacity().
|
inline |
Definition at line 676 of file GraphIntOld.hh.
References valid().
|
inline |
Definition at line 699 of file GraphIntOld.hh.
References _data.
Source state of an Edge
edge | an Edge |
Definition at line 744 of file GraphIntOld.hh.
References _data, Diades::Graph::Edge::_eData, Diades::Graph::EdgeData::_source, Diades::Graph::EdgeData::_target, _vNodes, data(), Diades::Graph::NodeData::identifier(), Diades::Graph::Edge::owner(), require, Diades::Graph::Edge::valid(), and valid().
Referenced by empty(), and boost::serialization::save().
Source state of an Edge
edge | an Edge |
Definition at line 775 of file GraphIntOld.hh.
References _data, Diades::Graph::Edge::_eData, Diades::Graph::EdgeData::_source, Diades::Graph::EdgeData::_target, _vNodes, data(), Diades::Graph::NodeData::identifier(), Diades::Graph::Edge::owner(), require, Diades::Graph::Edge::valid(), and valid().
Referenced by empty().
Referenced by operator=(), and preceeds().
edge | an Edge |
Definition at line 736 of file GraphIntOld.hh.
References _data, Diades::Graph::Edge::owner(), require, Diades::Graph::Edge::valid(), and valid().
Referenced by empty(), and boost::serialization::save().
edge | an Edge |
Definition at line 767 of file GraphIntOld.hh.
References _data, Diades::Graph::Edge::owner(), require, Diades::Graph::Edge::valid(), and valid().
Referenced by empty().
ostream& Diades::Graph::Graph::toDot | ( | ostream & | os | ) |
Referenced by nodeCapacity(), and valid().
ostream& Diades::Graph::Graph::toDot | ( | ostream & | os | ) |
void Diades::Graph::Graph::transitiveClosure | ( | Edge | edge | ) |
Transitive closure of a edge. This methods transforms the current graph so that the graph will become closed by transitivity with respect to the edge Egde. In other words, any sucessors of the target node of 'edge' will become the target of an edge whose source is the source of 'edge' (method used for priority graphs for instance).
edge | an edge belonging to the Graph |
void Diades::Graph::Graph::transitiveClosure | ( | Edge | edge | ) |
Transitive closure of a edge. This methods transforms the current graph so that the graph will become closed by transitivity with respect to the edge Egde. In other words, any sucessors of the target node of 'edge' will become the target of an edge whose source is the source of 'edge' (method used for priority graphs for instance).
edge | an edge belonging to the Graph |
Referenced by empty(), and nodeCapacity().
|
inlinestatic |
Definition at line 178 of file GraphInt.hh.
|
inline |
Definition at line 683 of file GraphIntOld.hh.
References toDot().
Referenced by Diades::Graph::Edge::changeSource(), Diades::Graph::Edge::changeTarget(), clear(), Diades::Graph::Edge::create(), cycleDetection(), deleteAllEdges(), deleteEdge(), deleteNode(), destroy(), edgeBegin(), edgeCapacity(), edgeEnd(), empty(), getEdge(), getNode(), Diades::Graph::GraphIterator< Edge >::GraphIterator(), id(), init(), newEdge(), newNode(), nodeBegin(), nodeCapacity(), nodeEnd(), numberOfEdges(), numberOfNodes(), Diades::Graph::GraphIterator< Edge >::operator*(), Diades::Graph::GraphIterator< Edge >::operator++(), Diades::Graph::GraphIterator< Edge >::operator->(), Diades::Graph::Edge::operator<(), operator<(), Diades::Graph::Edge::owner(), sanityCheck(), boost::serialization::save(), source(), sourceRef(), target(), and targetRef().
|
inline |
Definition at line 210 of file GraphInt.hh.
References _vEdges.
|
inline |
Definition at line 226 of file GraphInt.hh.
References _vEdges.
|
inline |
Definition at line 214 of file GraphInt.hh.
References _vNodes.
|
inline |
Definition at line 230 of file GraphInt.hh.
References _vNodes.
|
friend |
Definition at line 705 of file GraphIntOld.hh.
|
private |
Definition at line 38 of file GraphIntOld.hh.
Referenced by data(), destroy(), getEdge(), getNode(), newNode(), serialize(), source(), sourceRef(), target(), and targetRef().
|
private |
Definition at line 197 of file GraphInt.hh.
Referenced by id(), and Diades::Automata::FaultPattern::EventOccurrence::identifier().
|
private |
Definition at line 193 of file GraphInt.hh.
Referenced by listEdgeId().
|
private |
Definition at line 194 of file GraphInt.hh.
Referenced by listNodeId().
|
private |
Definition at line 196 of file GraphInt.hh.
Referenced by numberOfEdges().
|
private |
Definition at line 195 of file GraphInt.hh.
Referenced by numberOfNodes().
|
mutableprivate |
Definition at line 191 of file GraphInt.hh.
Referenced by vEdges().
|
mutableprivate |
Definition at line 192 of file GraphInt.hh.
Referenced by source(), sourceRef(), and vNodes().