C# Class PetriNetCore.GraphPetriNet

Inheritance: PetriNetBase
ファイルを表示 Open project: aabs/PetriNets Class Usage Examples

Public Properties

Property Type Description
InArcs List>.Dictionary
OutArcs List>.Dictionary
PlaceCapacities int>.Dictionary
PlaceOutArcs List>.Dictionary
Places string>.Dictionary
TransitionFunctions List>>.Dictionary
TransitionPriorities int>.Dictionary
Transitions string>.Dictionary

Public Methods

Method Description
AddArcFromPlace ( int placeId, int transitionId ) : void
AddArcFromTransition ( int placeId, int transitionId ) : void
AddArcIntoTransition ( int placeId, int transitionId ) : void
AddLinearTransition ( int placeIn, int placeOut, int transitionId ) : void
AllEnabledTransitions ( Marking m ) : IEnumerable
AllPlaces ( ) : IEnumerable
CreateTransitions ( IEnumerable transitions ) : void
Fire ( Marking m ) : Marking

invokes the first enabled transition in the petri net under the supplied Marking.

This method will not have any side effects on the Marking passed into the function or on the net itself. This method works by choosing the next transition to fire randomly.

GetConflictedPlaces ( Marking m ) : IEnumerable
GetNextTransitionToFire ( Marking m ) : int?
GetPlaceOutArcs ( int placeId ) : IEnumerable
GetTransitionPriority ( int t ) : int
GetWeight ( int placeid, int transid ) : int
GraphPetriNet ( string id, string>.Dictionary placeNames, string>.Dictionary transitionNames, Dictionary inArcs, Dictionary outArcs ) : System
GraphPetriNet ( string id, string>.Dictionary placeNames, string>.Dictionary transitionNames, Dictionary inArcs, Dictionary outArcs, int>.Dictionary transitionOrdering ) : System
InhibitorsIntoTransition ( int transitionId ) : IEnumerable
IsEmptyTransition ( int transitionId ) : bool
NonInhibitorsIntoTransition ( int transitionId ) : IEnumerable
RegisterFunction ( int transitionId, Action fn ) : void

Private Methods

Method Description
AllDestinationPlaces ( ) : List
AllMarkedPlaces ( Marking m ) : IEnumerable
AllSourcePlaces ( ) : List
GetInArcs ( int transitionId ) : IEnumerable
GetOutArcs ( int transitionId ) : IEnumerable
GetTransitionFunctions ( int transitionId ) : IEnumerable>
ObjectInvariant ( ) : void
PlacesFeedingIntoTransitions ( ) : IEnumerable
SharedInputPlaces ( int t1, int t2 ) : IEnumerable

Method Details

AddArcFromPlace() public method

public AddArcFromPlace ( int placeId, int transitionId ) : void
placeId int
transitionId int
return void

AddArcFromTransition() public method

public AddArcFromTransition ( int placeId, int transitionId ) : void
placeId int
transitionId int
return void

AddArcIntoTransition() public method

public AddArcIntoTransition ( int placeId, int transitionId ) : void
placeId int
transitionId int
return void

AddLinearTransition() public method

public AddLinearTransition ( int placeIn, int placeOut, int transitionId ) : void
placeIn int
placeOut int
transitionId int
return void

AllEnabledTransitions() public method

public AllEnabledTransitions ( Marking m ) : IEnumerable
m Marking
return IEnumerable

AllPlaces() public method

public AllPlaces ( ) : IEnumerable
return IEnumerable

CreateTransitions() public method

public CreateTransitions ( IEnumerable transitions ) : void
transitions IEnumerable
return void

Fire() public method

invokes the first enabled transition in the petri net under the supplied Marking.
This method will not have any side effects on the Marking passed into the function or on the net itself. This method works by choosing the next transition to fire randomly.
public Fire ( Marking m ) : Marking
m Marking The marking under which transition activation is calculated.
return Marking

GetConflictedPlaces() public method

public GetConflictedPlaces ( Marking m ) : IEnumerable
m Marking
return IEnumerable

GetNextTransitionToFire() public method

public GetNextTransitionToFire ( Marking m ) : int?
m Marking
return int?

GetPlaceOutArcs() public method

public GetPlaceOutArcs ( int placeId ) : IEnumerable
placeId int
return IEnumerable

GetTransitionPriority() public method

public GetTransitionPriority ( int t ) : int
t int
return int

GetWeight() public method

public GetWeight ( int placeid, int transid ) : int
placeid int
transid int
return int

GraphPetriNet() public method

public GraphPetriNet ( string id, string>.Dictionary placeNames, string>.Dictionary transitionNames, Dictionary inArcs, Dictionary outArcs ) : System
id string
placeNames string>.Dictionary
transitionNames string>.Dictionary
inArcs Dictionary
outArcs Dictionary
return System

GraphPetriNet() public method

public GraphPetriNet ( string id, string>.Dictionary placeNames, string>.Dictionary transitionNames, Dictionary inArcs, Dictionary outArcs, int>.Dictionary transitionOrdering ) : System
id string
placeNames string>.Dictionary
transitionNames string>.Dictionary
inArcs Dictionary
outArcs Dictionary
transitionOrdering int>.Dictionary
return System

InhibitorsIntoTransition() public method

public InhibitorsIntoTransition ( int transitionId ) : IEnumerable
transitionId int
return IEnumerable

IsEmptyTransition() public method

public IsEmptyTransition ( int transitionId ) : bool
transitionId int
return bool

NonInhibitorsIntoTransition() public method

public NonInhibitorsIntoTransition ( int transitionId ) : IEnumerable
transitionId int
return IEnumerable

RegisterFunction() public method

public RegisterFunction ( int transitionId, Action fn ) : void
transitionId int
fn Action
return void

Property Details

InArcs public_oe property

public Dictionary> InArcs
return List>.Dictionary

OutArcs public_oe property

public Dictionary> OutArcs
return List>.Dictionary

PlaceCapacities public_oe property

public Dictionary PlaceCapacities
return int>.Dictionary

PlaceOutArcs public_oe property

public Dictionary> PlaceOutArcs
return List>.Dictionary

Places public_oe property

public Dictionary Places
return string>.Dictionary

TransitionFunctions public_oe property

public Dictionary>> TransitionFunctions
return List>>.Dictionary

TransitionPriorities public_oe property

public Dictionary TransitionPriorities
return int>.Dictionary

Transitions public_oe property

public Dictionary Transitions
return string>.Dictionary