|
| Control.Hasim.DES | | Portability | unportable | | Stability | experimental | | Maintainer | jochem@functor.nl |
|
|
|
|
|
| Description |
This module defines a DES, which stands for Discrete Event Set.
There are functions for creating and inserting events.
For each process, an Event may be scheduled. This event consists of
a Time and a Runnable. There can be at most one Event scheduled
for each Process.
|
|
| Synopsis |
|
|
|
|
| Events
|
|
| Abstract data type
|
|
|
|
|
| Querying events
|
|
|
| The Time at which the event takes place.
|
|
|
| The Runnable that should be run at this time
|
|
|
| The process of an Event
|
|
| Discrete Event Set
|
|
| ADT for Discrete Event Set
|
|
|
| Discrete Event Set. A discrete event set is a data structure
that supports the operations update and removeNext.
| Instances | |
|
|
| Creating Discrete Event Set
|
|
|
|
|
|
| An empty discrete event set.
|
|
| Querying Discrete Event Set
|
|
|
| Is the Discrete Event Set empty?
|
|
| Updating Discrete Event Set
|
|
|
Get an event with lowest time that will take place next.
Returns a tuple (evt, des) where evt is the next Event
and des is the new DES where this event is removed.
Calls error if the DES is empty.
|
|
|
| :: Time | The time at which the event takes place
| | -> Runnable | The Runnable that should be run at that time
| | -> DES | The old discrete event set
| | -> DES | The discrete event set with the event added
| | Schedule an event in a discrete event set. Note that an old
event of the same process is removed from the discrete event set.
|
|
|
| Produced by Haddock version 2.3.0 |