DiaDes  0.1
DIAgnosis of Discrete-Event System
Public Member Functions | Private Attributes | List of all members
Diades::Petri::MarkingGraph Class Reference

#include <MarkingGraph.hh>

Public Member Functions

 MarkingGraph (const TwinPattern &net)
 
 ~MarkingGraph ()
 
const TwinPatternnet () const
 
MarkingTabletable ()
 
const MarkingTabletable () const
 
Diades::Graph::Edge newEdge (Diades::Graph::Node source, Diades::Graph::Node target, const string &label)
 
void markingGraph2Dot (const string &filename)
 
- Public Member Functions inherited from Diades::Graph::Graph
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 ()
 
Graphoperator= (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)
 
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 NodetargetRef (const Edge &edge) const
 
const NodesourceRef (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 NodetargetRef (const Edge &edge) const
 
const NodesourceRef (const Edge &edge) const
 
Node getNode (unsigned id) const
 
Edge getEdge (unsigned id) const
 
void transitiveClosure (Edge edge)
 
bool cycleDetection (const Node &n) const
 
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)
 
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 ()
 
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
 
 Graph ()
 
 Graph (GraphData *data)
 
 Graph (const Graph &g)
 
const GraphData * data () const
 
GraphData * data ()
 
unsigned id () const
 
void init ()
 
void destroy ()
 
virtual ~Graph ()
 
Graphoperator= (const Graph &g)
 
SizeType edgeCapacity () const
 
SizeType nodeCapacity () const
 

Private Attributes

MarkingTable _table
 
const TwinPattern_net
 
Diades::Graph::EdgeMap< std::string > _edgeLabel
 

Additional Inherited Members

- Public Types inherited from Diades::Graph::Graph
typedef Diades::Utils::Exception< GraphException
 
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
 
- Static Public Member Functions inherited from Diades::Graph::Graph
static string typeName ()
 

Detailed Description

Definition at line 13 of file MarkingGraph.hh.

Constructor & Destructor Documentation

◆ MarkingGraph()

Diades::Petri::MarkingGraph::MarkingGraph ( const TwinPattern net)
inline

Definition at line 20 of file MarkingGraph.hh.

References Diades::Graph::EdgeMap< T >::init().

◆ ~MarkingGraph()

Diades::Petri::MarkingGraph::~MarkingGraph ( )
inline

Definition at line 26 of file MarkingGraph.hh.

Member Function Documentation

◆ markingGraph2Dot()

void Diades::Petri::MarkingGraph::markingGraph2Dot ( const string &  filename)

Referenced by newEdge().

◆ net()

const TwinPattern& Diades::Petri::MarkingGraph::net ( ) const
inline

Definition at line 28 of file MarkingGraph.hh.

References _net.

◆ newEdge()

Diades::Graph::Edge Diades::Petri::MarkingGraph::newEdge ( Diades::Graph::Node  source,
Diades::Graph::Node  target,
const string &  label 
)
inline

Definition at line 41 of file MarkingGraph.hh.

References markingGraph2Dot(), and Diades::Graph::Graph::newEdge().

◆ table() [1/2]

MarkingTable& Diades::Petri::MarkingGraph::table ( )
inline

Definition at line 31 of file MarkingGraph.hh.

References _table.

◆ table() [2/2]

const MarkingTable& Diades::Petri::MarkingGraph::table ( ) const
inline

Definition at line 36 of file MarkingGraph.hh.

References _table.

Member Data Documentation

◆ _edgeLabel

Diades::Graph::EdgeMap<std::string> Diades::Petri::MarkingGraph::_edgeLabel
private

Definition at line 18 of file MarkingGraph.hh.

◆ _net

const TwinPattern& Diades::Petri::MarkingGraph::_net
private

Definition at line 17 of file MarkingGraph.hh.

Referenced by net().

◆ _table

MarkingTable Diades::Petri::MarkingGraph::_table
private

Definition at line 16 of file MarkingGraph.hh.

Referenced by table().


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