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

#include <PriorityPetriNet.hh>

Public Types

typedef std::unordered_multimap< Transition, TransitionPriorities
 
typedef pair< Priorities::const_iterator, Priorities::const_iterator > Range
 
- Public Types inherited from Diades::Petri::Net
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

 PriorityPetriNet ()
 
virtual ~PriorityPetriNet ()
 
void setPriority (Transition t1, Transition t2)
 
void removePriority (Transition t1, Transition t2)
 
Range priorities () const
 
Range priorities (Transition t) const
 
bool hasPriority (Transition t1, Transition t2) const
 
virtual void priorities2Tina (ostream &os) const
 
- Public Member Functions inherited from Diades::Petri::Net
 Net ()
 
 Net (const Net &p1, const Net &p2, const set< Event > &synchronization, bool strict=true)
 
virtual ~Net ()
 
void setName (const string &name)
 
const string & name () const
 
unsigned int id () const
 
void setId (unsigned id)
 
void clear ()
 
const Diades::Graph::Graphgraph () const
 
EventIterator beginOfEvents () const
 
EventIterator endOfEvents () const
 
const EventgetEvent (Transition t) const
 
virtual void setEvent (Transition t, Event event)
 
bool containsEvent (Event event) const
 
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)
 
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)
 
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)
 
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
 
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
 
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
 

Private Attributes

std::unordered_multimap< Transition, Transition_priorities
 

Additional Inherited Members

- Static Public Member Functions inherited from Diades::Petri::Net
static string typeName ()
 
- Protected Types inherited from Diades::Petri::Net
enum  TransitionType { NotPostponable, Postponable }
 
- Protected Attributes inherited from Diades::Petri::Net
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
 

Detailed Description

Definition at line 15 of file PriorityPetriNet.hh.

Member Typedef Documentation

◆ Priorities

Definition at line 21 of file PriorityPetriNet.hh.

◆ Range

typedef pair<Priorities::const_iterator,Priorities::const_iterator> Diades::Petri::PriorityPetriNet::Range

Definition at line 22 of file PriorityPetriNet.hh.

Constructor & Destructor Documentation

◆ PriorityPetriNet()

Diades::Petri::PriorityPetriNet::PriorityPetriNet ( )
inline

Definition at line 24 of file PriorityPetriNet.hh.

◆ ~PriorityPetriNet()

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

Definition at line 26 of file PriorityPetriNet.hh.

Member Function Documentation

◆ hasPriority()

bool Diades::Petri::PriorityPetriNet::hasPriority ( Transition  t1,
Transition  t2 
) const
inline

Definition at line 63 of file PriorityPetriNet.hh.

◆ priorities() [1/2]

Range Diades::Petri::PriorityPetriNet::priorities ( ) const
inline

Definition at line 52 of file PriorityPetriNet.hh.

◆ priorities() [2/2]

Range Diades::Petri::PriorityPetriNet::priorities ( Transition  t) const
inline

Definition at line 58 of file PriorityPetriNet.hh.

◆ priorities2Tina()

virtual void Diades::Petri::PriorityPetriNet::priorities2Tina ( ostream &  os) const
inlinevirtual

Definition at line 76 of file PriorityPetriNet.hh.

◆ removePriority()

void Diades::Petri::PriorityPetriNet::removePriority ( Transition  t1,
Transition  t2 
)
inline

Definition at line 34 of file PriorityPetriNet.hh.

◆ setPriority()

void Diades::Petri::PriorityPetriNet::setPriority ( Transition  t1,
Transition  t2 
)
inline

Definition at line 28 of file PriorityPetriNet.hh.

Member Data Documentation

◆ _priorities

std::unordered_multimap<Transition,Transition> Diades::Petri::PriorityPetriNet::_priorities
private

Definition at line 18 of file PriorityPetriNet.hh.


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