DiaDes  0.1
DIAgnosis of Discrete-Event System
Classes | Public Types | Static Public Member Functions | Protected Types | Protected Attributes | Private Attributes | Friends | List of all members
Diades::Petri::Net Class Reference

1-bounded Petri nets More...

#include <Net.hh>

Classes

class  ConstIterator
 
class  PerTypeIterator
 Iterators over the places or the transitions of the Net. More...
 

Public Types

enum  NodeType { P, T }
 
typedef Diades::Utils::Exception< NetException
 
typedef PerTypeIterator TransitionIterator
 
typedef PerTypeIterator PlaceIterator
 
typedef set< Event >::const_iterator EventIterator
 
typedef set< Transition >::const_iterator TransitionEventIterator
 

Public Member Functions

Constructors and destructor
 Net ()
 
 Net (const Net &p1, const Net &p2, const set< Event > &synchronization, bool strict=true)
 
virtual ~Net ()
 
General accessors/modifiers
void setName (const string &name)
 
const string & name () const
 
unsigned int id () const
 
void setId (unsigned id)
 
void clear ()
 
const Diades::Graph::Graphgraph () const
 
Event management
EventIterator beginOfEvents () const
 
EventIterator endOfEvents () const
 
const EventgetEvent (Transition t) const
 
virtual void setEvent (Transition t, Event event)
 
bool containsEvent (Event event) const
 
Place management
Place newPlace ()
 
Place newPlace (const string &label)
 
void setLabelOfPlace (const Place &place, const string &label)
 
PlaceIterator beginOfPlaces () const
 
PlaceIterator endOfPlaces () const
 
size_t numberOfPlaces () const
 
const string & labelOfPlace (const Place &p) const
 
const string & getInfoLabel (Place p) const
 
void setInfoLabel (Place p, const string &info)
 
Transition management
virtual bool enables (const Transition &t, const set< Place > &marking)
 
virtual Transition newTransition (const set< Place > &pre, const set< Place > &post)
 
virtual Transition newTransition (const set< Place > &pre, const set< Place > &post, const string &label)
 
size_t numberOfTransitions () const
 
size_t numberOfArcs () const
 
void addPre (Transition transition, Place place)
 
void addPost (Transition transition, Place place)
 
bool pre (const Vdd *marking, const Transition &t) const
 
ConstIterator preTransBegin (const Place &place) const
 
ConstIterator preTransEnd (const Place &place) const
 
ConstIterator postTransBegin (const Place &place) const
 
ConstIterator postTransEnd (const Place &place) const
 
ConstIterator preBegin (const Transition &transition) const
 
ConstIterator preEnd (const Transition &transition) const
 
ConstIterator postBegin (const Transition &transition) const
 
ConstIterator postEnd (const Transition &transition) const
 
TransitionIterator beginOfTransitions () const
 
TransitionIterator endOfTransitions () const
 
void setLabelOfTransition (const Transition &t, const string &label)
 
const string & labelOfTransition (const Transition &t) const
 
bool inPre (const Transition &t, const Place &p) const
 
TransitionEventIterator beginOfTransitionWithEvent (Event event) const
 
TransitionEventIterator endOfTransitionWithEvent (Event event) const
 
virtual void deleteTransition (Transition t)
 
virtual Transition duplicateTransition (Transition t)
 
Methods for net synchronisation
void setPostponable (Transition t)
 
bool isPostponable (Transition t) const
 
void setNotPostponable (Transition t)
 
void synchronize (const Net &p1, const Net &p2, const set< Event > &synchronization, bool strict)
 
Basic Marking management
void setMarking (const set< Place > &marking)
 
bool isMarked () const
 
bool isMarked (Place p) const
 
void mark (Place p)
 
void unmark (Place p)
 
const set< Place > & initialMarking () const
 
IO management
virtual void net2Dot (const string &fileName) const
 
virtual void net2Tina (ostream &os) const
 
void printWarning (const string &s) const
 
void printFactory (const string &fileName) const
 
Marking Graph computation/analysis

These set of methods perform operations based on a symbolic representation of the Petri Net by the use of Zsl and Vdd.

void lock () const
 
void unlock () const
 
const Vddmarking () const
 
const ZslgetPreZsl (Transition t) const
 
const ZslgetIncidenceZsl (Transition t) const
 
const VddreachableNodes () const
 
void printVdd (const Vdd *result, string fileName)
 
ZslFactoryzslFactory () const
 
VddFactoryvddFactory () const
 

Static Public Member Functions

static string typeName ()
 

Protected Types

enum  TransitionType { NotPostponable, Postponable }
 

Protected Attributes

ZslFactory_zslFactory
 
VddFactory_vddFactory
 
Graph::Graph _graph
 
Graph::NodeMap< NodeType_nodeType
 
Graph::NodeMap< string > _labelNode
 
Graph::NodeMap< string > _infoNode
 
Graph::NodeMap< Event_event
 
Graph::NodeMap< int > _postponable
 
string _name
 
const Vdd_initialMarking
 
set< Place_explicitInitialMarking
 
unordered_map< string, Graph::Node > _placeOfLabel
 
vector< set< Transition > > _transitionsOfEventId
 
Graph::ConstNodeMap< const Zsl * > _preZslOfTransition
 
Graph::ConstNodeMap< const Zsl * > _incidenceZslOfTransition
 
const Vdd_reachableNodes
 
set< Event_eventList
 
bool _readOnly
 

Private Attributes

size_t _nbPlaces
 
size_t _nbTransitions
 
unsigned int _id
 

Friends

class Iterator
 
class PerTypeIterator
 

Detailed Description

1-bounded Petri nets

This class implements 1-bounded finite Petri Nets with the use of Diades::Graph::Graph. Each Place/Transition is a Diades::Graph::Node. Arcs between places and transitions are encoded with Diades::Graph::Edge.

Todo:
add lambda-transitions

Definition at line 62 of file Net.hh.

Member Typedef Documentation

◆ EventIterator

Iteration over the set of Net::Event involved in the current Net

Definition at line 311 of file Net.hh.

◆ Exception

Exceptions
Exceptionexception returned by any Net

Definition at line 77 of file Net.hh.

◆ PlaceIterator

Iteration over the set of places in a Net. It is encoded by a PerTypeIterator (type Net:P)

Definition at line 298 of file Net.hh.

◆ TransitionEventIterator

Definition at line 317 of file Net.hh.

◆ TransitionIterator

Iteration over the set of transitions in a Net. It is encoded by a PerTypeIterator (type Net:T)

Definition at line 291 of file Net.hh.

Member Enumeration Documentation

◆ NodeType

A Net is a set of nodes: some are places (type P), some are transitions (type T)

Enumerator

Definition at line 94 of file Net.hh.

◆ TransitionType

Enumerator
NotPostponable 
Postponable 

Definition at line 321 of file Net.hh.

Constructor & Destructor Documentation

◆ Net() [1/2]

Diades::Petri::Net::Net ( )

Default constructor

◆ Net() [2/2]

Diades::Petri::Net::Net ( const Net p1,
const Net p2,
const set< Event > &  synchronization,
bool  strict = true 
)

Parameterized constructor

Parameters
p1Net to synchronize
p2Net to synchronize
synchronizationsynchronized Event
stricttype of synchronization
Returns
a Net that results from the event synchronization of two Net p1 and p2 If the synchronisation is strict every transition of Event e in p1 is synchronised with a Transition in p2. If the synchronisation is not strict, it is defined releying on the property "postponable" of a transition. Let t1 and t2 be two transitions that have the same synchronised event: many cases hold:
  • both are not postponable, one synchronised transition is created.
  • t1 is postponable but not t2, two versions of t2 remains, one that is synchronised with t1 one that is not.
  • t2 is postponable but not t1, two versions of t1 remains, one that is synchronised with t2 one that is not.
  • both are postponable, one version of t1 remains, one version of t2 remains and a synchronised version

◆ ~Net()

virtual Diades::Petri::Net::~Net ( )
inlinevirtual

Destructor

Definition at line 394 of file Net.hh.

Member Function Documentation

◆ addPost()

void Diades::Petri::Net::addPost ( Transition  transition,
Place  place 
)
inline

Add a new Place to post(transition)

Parameters
transitiona Transition
placea Place
Precondition
place is a Place of the current Net
transition is a Transition of the current Net

Definition at line 777 of file Net.hh.

◆ addPre()

void Diades::Petri::Net::addPre ( Transition  transition,
Place  place 
)
inline

Add a new Place to pre(transition)

Parameters
transitiona Transition
placea Place
Precondition
place is a Place of the current Net
transition is a Transition of the current Net

Definition at line 765 of file Net.hh.

◆ beginOfEvents()

EventIterator Diades::Petri::Net::beginOfEvents ( ) const
inline
Returns
an iterator on the set of events (begin)

Definition at line 469 of file Net.hh.

◆ beginOfPlaces()

PlaceIterator Diades::Petri::Net::beginOfPlaces ( ) const
inline
Returns
start iterator on the places of the Net

Definition at line 605 of file Net.hh.

◆ beginOfTransitions()

TransitionIterator Diades::Petri::Net::beginOfTransitions ( ) const
inline
Returns
start iterator on the transitions of the Net

Definition at line 899 of file Net.hh.

◆ beginOfTransitionWithEvent()

TransitionEventIterator Diades::Petri::Net::beginOfTransitionWithEvent ( Event  event) const
inline
Parameters
eventan Event
Returns
start iterator on the Transition with the Event 'event'

Definition at line 944 of file Net.hh.

References require.

◆ clear()

void Diades::Petri::Net::clear ( )

Clear the current Petri Net

◆ containsEvent()

bool Diades::Petri::Net::containsEvent ( Event  event) const
inline

Is the event contained in the Petri Net

Parameters
eventan Event
Returns
true if at least one Transition is associated with the Event 'event'

Definition at line 534 of file Net.hh.

◆ deleteTransition()

virtual void Diades::Petri::Net::deleteTransition ( Transition  t)
virtual

Transition deletion

Parameters
ta Transition

Reimplemented in Diades::Petri::TimeNet.

◆ duplicateTransition()

virtual Transition Diades::Petri::Net::duplicateTransition ( Transition  t)
virtual

Transition duplication

Parameters
ta Transition
Returns
the created clone of transition t. The clone has the same Event and the same pre and post conditions

Reimplemented in Diades::Petri::TimeNet.

◆ enables()

virtual bool Diades::Petri::Net::enables ( const Transition t,
const set< Place > &  marking 
)
virtual
Parameters
ta Transition of the Net
markinga Marking of the Net
Returns
true if the Transition t is enabled by the Marking marking

◆ endOfEvents()

EventIterator Diades::Petri::Net::endOfEvents ( ) const
inline
Returns
an iterator on the set of events (end)

Definition at line 479 of file Net.hh.

◆ endOfPlaces()

PlaceIterator Diades::Petri::Net::endOfPlaces ( ) const
inline
Returns
end iterator on the places of the Net

Definition at line 615 of file Net.hh.

◆ endOfTransitions()

TransitionIterator Diades::Petri::Net::endOfTransitions ( ) const
inline
Returns
end iterator on the transitions of the Net

Definition at line 909 of file Net.hh.

◆ endOfTransitionWithEvent()

TransitionEventIterator Diades::Petri::Net::endOfTransitionWithEvent ( Event  event) const
inline
Parameters
eventan Event
Returns
end iterator on the Transition with the Event 'event'

Definition at line 958 of file Net.hh.

References Diades::Automata::deleteTransition(), and require.

◆ getEvent()

const Event& Diades::Petri::Net::getEvent ( Transition  t) const
inline
Parameters
ta Transition of the Net
Returns
the event associated to the transition t

Definition at line 489 of file Net.hh.

References require.

◆ getIncidenceZsl()

const Zsl* Diades::Petri::Net::getIncidenceZsl ( Transition  t) const
Parameters
ta Transition of the Petri Net
Returns
the associated Zsl (incidence)
Postcondition
with the first call of this method, the Petri becomes unmodifiable

◆ getInfoLabel()

const string& Diades::Petri::Net::getInfoLabel ( Place  p) const
inline
Parameters
pa Place

Get the information associated to Place p. This information can be set by setInfoLabel

Definition at line 649 of file Net.hh.

References require.

◆ getPreZsl()

const Zsl* Diades::Petri::Net::getPreZsl ( Transition  t) const
Parameters
ta Transition of the Petri Net
Returns
the associated Zsl (precondition)
Postcondition
with the first call of this method, the Petri becomes unmodifiable

◆ graph()

const Diades::Graph::Graph& Diades::Petri::Net::graph ( ) const
inline
Returns
the underlying Graph that encodes the Net

Definition at line 454 of file Net.hh.

◆ id()

unsigned int Diades::Petri::Net::id ( ) const
inline
Returns
the id of the Petri Net

Definition at line 429 of file Net.hh.

◆ initialMarking()

const set<Place>& Diades::Petri::Net::initialMarking ( ) const
inline
Returns
the initial marking

Definition at line 1103 of file Net.hh.

◆ inPre()

bool Diades::Petri::Net::inPre ( const Transition t,
const Place p 
) const
Parameters
ta Transition
pa Place
Returns
true if the Place p is in the precondition of t

◆ isMarked() [1/2]

bool Diades::Petri::Net::isMarked ( ) const
inline
Returns
true if the current Net has a non-empty marking

Definition at line 1069 of file Net.hh.

◆ isMarked() [2/2]

bool Diades::Petri::Net::isMarked ( Place  p) const
Returns
true if the place p is marked in the current Net

◆ isPostponable()

bool Diades::Petri::Net::isPostponable ( Transition  t) const
inline
Parameters
ta Transition
Returns
true if the given Transition is postponable

Definition at line 1011 of file Net.hh.

References require, and Diades::Automata::Experimental::synchronize().

◆ labelOfPlace()

const string& Diades::Petri::Net::labelOfPlace ( const Place p) const
inline
Parameters
pa Place
Returns
the label associated to the Place p

Definition at line 638 of file Net.hh.

◆ labelOfTransition()

const string& Diades::Petri::Net::labelOfTransition ( const Transition t) const
inline
Parameters
ta Transition
Returns
the label associated to the Transition t

Definition at line 926 of file Net.hh.

◆ lock()

void Diades::Petri::Net::lock ( ) const

Make the Petri Net read-only (to use the symbolic implementation) The call of this method is mandatory before calling anything method that is using the symbolic representation with Zsl / Vdd

◆ mark()

void Diades::Petri::Net::mark ( Place  p)
Parameters
pa Place Add p to the marking of the Net

◆ marking()

const Vdd* Diades::Petri::Net::marking ( ) const
Returns
the marking of the Net

◆ name()

const string& Diades::Petri::Net::name ( ) const
inline
Returns
the name of the Net

Definition at line 422 of file Net.hh.

◆ net2Dot()

virtual void Diades::Petri::Net::net2Dot ( const string &  fileName) const
virtual
Parameters
fileNamethe name of an output file Write in the file 'fileName' the dot description of the Net

Reimplemented in Diades::Petri::Chronicle, and Diades::Petri::TimeNet.

◆ net2Tina()

virtual void Diades::Petri::Net::net2Tina ( ostream &  os) const
virtual
Parameters
osoutput stream Write the TINA '.net' description of the Net (see TINA ) on the output stream

Reimplemented in Diades::Petri::Chronicle, and Diades::Petri::TimeNet.

◆ newPlace() [1/2]

Place Diades::Petri::Net::newPlace ( )
inline
Returns
a new Place of the Net
Postcondition
the place has an internal and generated label "__pX" where X is a number
the return place is invalid if the Petri Net is in "readonly mode"

Definition at line 557 of file Net.hh.

References ensure, and require.

◆ newPlace() [2/2]

Place Diades::Petri::Net::newPlace ( const string &  label)
Parameters
labelLabel associated to the created Place
Returns
a new Place of the Net
Postcondition
If there is a place that already has the label, return the predefined place

◆ newTransition() [1/2]

virtual Transition Diades::Petri::Net::newTransition ( const set< Place > &  pre,
const set< Place > &  post 
)
virtual
Parameters
preprecondition of the transition
postpostcondition of the transition
Returns
the new transition t such that pre(t) = pre and post(t) = post

◆ newTransition() [2/2]

virtual Transition Diades::Petri::Net::newTransition ( const set< Place > &  pre,
const set< Place > &  post,
const string &  label 
)
inlinevirtual
Parameters
preprecondition of the transition
postpostcondition of the transition
labelLabel associated to the created Transition
Returns
the new Transition t such that pre(t) = pre and post(t) = post
Postcondition
the return transition is invalid if the Petri Net is in "readonly mode"

Definition at line 719 of file Net.hh.

References require.

◆ numberOfArcs()

size_t Diades::Petri::Net::numberOfArcs ( ) const
inline
Returns
the number of transitions

Definition at line 753 of file Net.hh.

◆ numberOfPlaces()

size_t Diades::Petri::Net::numberOfPlaces ( ) const
inline
Returns
the number of places

Definition at line 627 of file Net.hh.

◆ numberOfTransitions()

size_t Diades::Petri::Net::numberOfTransitions ( ) const
inline
Returns
the number of transitions

Definition at line 742 of file Net.hh.

◆ postBegin()

ConstIterator Diades::Petri::Net::postBegin ( const Transition transition) const
inline
Parameters
transitiona Transition
Returns
start iterator on post(t)

Definition at line 878 of file Net.hh.

◆ postEnd()

ConstIterator Diades::Petri::Net::postEnd ( const Transition transition) const
inline
Parameters
transitiona Transition
Returns
end iterator on post(t)

Definition at line 889 of file Net.hh.

◆ postTransBegin()

ConstIterator Diades::Petri::Net::postTransBegin ( const Place place) const
inline
Parameters
placea Place
Returns
start iterator of the Transitions t which contain the Place 'place' in pre(t);

Definition at line 834 of file Net.hh.

◆ postTransEnd()

ConstIterator Diades::Petri::Net::postTransEnd ( const Place place) const
inline
Parameters
placea Place
Returns
end iterator of the Transitions t which contain the Place 'place' in pre(t);

Definition at line 848 of file Net.hh.

◆ pre()

bool Diades::Petri::Net::pre ( const Vdd marking,
const Transition t 
) const
Parameters
markinga possible marking of the Net
ta Transition
Returns
true if the Transition 't' is enabled by the marking 'marking'
Precondition
marking.owner() == this

◆ preBegin()

ConstIterator Diades::Petri::Net::preBegin ( const Transition transition) const
inline
Parameters
transitiona Transition
Returns
start iterator on pre(t)

Definition at line 858 of file Net.hh.

◆ preEnd()

ConstIterator Diades::Petri::Net::preEnd ( const Transition transition) const
inline
Parameters
transitiona Transition
Returns
end iterator on pre(t)

Definition at line 868 of file Net.hh.

◆ preTransBegin()

ConstIterator Diades::Petri::Net::preTransBegin ( const Place place) const
inline
Parameters
markinga possible marking of the Net
ta Transition
Returns
true if the marking 'marking' is possible after firing the Transition 't'
Precondition
marking.owner() == this
Parameters
placea Place
Returns
start iterator of the Transitions t which contain the Place 'place' in post(t);

Definition at line 807 of file Net.hh.

◆ preTransEnd()

ConstIterator Diades::Petri::Net::preTransEnd ( const Place place) const
inline
Parameters
placea Place
Returns
end iterator of the Transitions t which contain the Place 'place' in post(t);

Definition at line 821 of file Net.hh.

◆ printFactory()

void Diades::Petri::Net::printFactory ( const string &  fileName) const

Print factory

Parameters
fileNamethe output file name

◆ printVdd()

void Diades::Petri::Net::printVdd ( const Vdd result,
string  fileName 
)

Print the content of a given vdd into a file

Parameters
vdda Vdd
fileNamefile name

◆ printWarning()

void Diades::Petri::Net::printWarning ( const string &  s) const
inline

Print warning message

Parameters
sa string that contains a contextual information

Definition at line 1142 of file Net.hh.

◆ reachableNodes()

const Vdd* Diades::Petri::Net::reachableNodes ( ) const

Compute the set of reachable states from the initial marking

Returns
the Vdd representation of this set of states.

◆ setEvent()

virtual void Diades::Petri::Net::setEvent ( Transition  t,
Event  event 
)
inlinevirtual
Parameters
ta Transition of the Net
eventan Event Associates the Event 'event' to the Transition 't'

Definition at line 504 of file Net.hh.

References require.

◆ setId()

void Diades::Petri::Net::setId ( unsigned  id)
inline

Set the id of the Petri net

Parameters
idthe new id

Definition at line 438 of file Net.hh.

◆ setInfoLabel()

void Diades::Petri::Net::setInfoLabel ( Place  p,
const string &  info 
)
inline
Parameters
pa Place
infoan information Associates to the Place p the information info. This information can be retrieved by getInfoLabel

Definition at line 665 of file Net.hh.

References require.

◆ setLabelOfPlace()

void Diades::Petri::Net::setLabelOfPlace ( const Place place,
const string &  label 
)
inline

Definition at line 590 of file Net.hh.

References require.

◆ setLabelOfTransition()

void Diades::Petri::Net::setLabelOfTransition ( const Transition t,
const string &  label 
)
inline

Definition at line 915 of file Net.hh.

References require.

◆ setMarking()

void Diades::Petri::Net::setMarking ( const set< Place > &  marking)

Set a marking

Parameters
markingthe set of marked places The marking of the Net is 'marking'

◆ setName()

void Diades::Petri::Net::setName ( const string &  name)
inline

Set the name of the Net

Parameters
namethe new name of the Net

Definition at line 411 of file Net.hh.

References require.

◆ setNotPostponable()

void Diades::Petri::Net::setNotPostponable ( Transition  t)

Set a Transition not postponable. If a Transition is not postponable, it means that it must be synhronised with a Transition from the other Net when performing the synchronise() operation.

Parameters
ta Transition

◆ setPostponable()

void Diades::Petri::Net::setPostponable ( Transition  t)

Set a Transition postponable. A postponable Transition is a transition that can be independently fired even if the associated event is usually synchronised with an event from another Petri Net by the synchronise() operator. In other words, a postponable transition can be fired even if there is no transition in the other Petri Net that can be synchronised. In the case it is possible to synchronise this Transition with another one, the synchronisation results in two Transitions. One is the synchronised one, the one is the independent one. Transition

Parameters
ta Transition

◆ synchronize()

void Diades::Petri::Net::synchronize ( const Net p1,
const Net p2,
const set< Event > &  synchronization,
bool  strict 
)

Synchronization operator

Parameters
p1Net to synchronize
p2Net to synchronize
synchronizationsynchronized Event
stricttype of synchronization
Returns
a Net that results from the event synchronization of two Net p1 and p2 If the synchronisation is strict every transition of Event e in p1 is synchronised with a Transition in p2. If the synchronisation is not strict, it is defined releying on the property "postponable" of a transition. Let t1 and t2 be two transitions that have the same synchronised event: many cases hold: 1) both are not postponable, one synchronised transition is created. 2) t1 is postponable but not t2, two versions of t2 remains, one that is synchronised with t1 one that is not. 3) t2 is postponable but not t1, two versions of t1 remains, one that is synchronised with t2 one that is not. 4) both are postponable, one version of t1 remains, one version of t2 remains and a synchronised version

◆ typeName()

static string Diades::Petri::Net::typeName ( )
inlinestatic
Returns
the absolute name of this class

Definition at line 71 of file Net.hh.

◆ unlock()

void Diades::Petri::Net::unlock ( ) const

Make the Petri Net modifiable.

Postcondition
any symbolic implementation of the current Net is erased. If the Net was locked, a new call to lock() is required to use the symbolic implementation of the Petri Net.

◆ unmark()

void Diades::Petri::Net::unmark ( Place  p)
Parameters
pa Place Remove p to the marking of the Net

◆ vddFactory()

VddFactory* Diades::Petri::Net::vddFactory ( ) const
inline
Returns
the factory of the Vdd

Definition at line 1231 of file Net.hh.

◆ zslFactory()

ZslFactory* Diades::Petri::Net::zslFactory ( ) const
inline
Returns
the factory of the Zsl

Definition at line 1222 of file Net.hh.

Friends And Related Function Documentation

◆ Iterator

friend class Iterator
friend

Definition at line 282 of file Net.hh.

◆ PerTypeIterator

friend class PerTypeIterator
friend

Definition at line 283 of file Net.hh.

Member Data Documentation

◆ _event

Graph::NodeMap<Event> Diades::Petri::Net::_event
protected

Definition at line 326 of file Net.hh.

◆ _eventList

set<Event> Diades::Petri::Net::_eventList
protected

Definition at line 336 of file Net.hh.

◆ _explicitInitialMarking

set<Place> Diades::Petri::Net::_explicitInitialMarking
protected

Definition at line 330 of file Net.hh.

◆ _graph

Graph::Graph Diades::Petri::Net::_graph
protected

Type of Transition

Definition at line 322 of file Net.hh.

◆ _id

unsigned int Diades::Petri::Net::_id
private

Definition at line 348 of file Net.hh.

◆ _incidenceZslOfTransition

Graph::ConstNodeMap<const Zsl *> Diades::Petri::Net::_incidenceZslOfTransition
mutableprotected

Definition at line 334 of file Net.hh.

◆ _infoNode

Graph::NodeMap<string> Diades::Petri::Net::_infoNode
protected

Definition at line 325 of file Net.hh.

◆ _initialMarking

const Vdd* Diades::Petri::Net::_initialMarking
mutableprotected

Definition at line 329 of file Net.hh.

◆ _labelNode

Graph::NodeMap<string> Diades::Petri::Net::_labelNode
protected

Definition at line 324 of file Net.hh.

◆ _name

string Diades::Petri::Net::_name
protected

Definition at line 328 of file Net.hh.

◆ _nbPlaces

size_t Diades::Petri::Net::_nbPlaces
private

Definition at line 341 of file Net.hh.

◆ _nbTransitions

size_t Diades::Petri::Net::_nbTransitions
private

Definition at line 342 of file Net.hh.

◆ _nodeType

Graph::NodeMap<NodeType> Diades::Petri::Net::_nodeType
protected

Definition at line 323 of file Net.hh.

◆ _placeOfLabel

unordered_map<string,Graph::Node> Diades::Petri::Net::_placeOfLabel
protected

Definition at line 331 of file Net.hh.

◆ _postponable

Graph::NodeMap<int> Diades::Petri::Net::_postponable
protected

Definition at line 327 of file Net.hh.

◆ _preZslOfTransition

Graph::ConstNodeMap<const Zsl *> Diades::Petri::Net::_preZslOfTransition
mutableprotected

Definition at line 333 of file Net.hh.

◆ _reachableNodes

const Vdd* Diades::Petri::Net::_reachableNodes
mutableprotected

Definition at line 335 of file Net.hh.

◆ _readOnly

bool Diades::Petri::Net::_readOnly
mutableprotected

Definition at line 345 of file Net.hh.

◆ _transitionsOfEventId

vector<set<Transition> > Diades::Petri::Net::_transitionsOfEventId
protected

Definition at line 332 of file Net.hh.

◆ _vddFactory

VddFactory* Diades::Petri::Net::_vddFactory
mutableprotected

Definition at line 83 of file Net.hh.

◆ _zslFactory

ZslFactory* Diades::Petri::Net::_zslFactory
mutableprotected

Definition at line 82 of file Net.hh.


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