SimJulia

The SimJulia module aggregates SimJulia’s most used components into a single namespace.

The following tables list all of the available types in this module.

Environment

AbstractEnvironment Parent type for an environment.
Environment Execution environment for a simulation.

Events

AbstractEvent Parent type for all events.
Event An event that may happen at some point in time.
Timeout An event that is triggered after a delay has passed.
EventOperator An event that is triggered if an eval functions returns true on a tuple of events.

Processes

Process A model that is implemented by a process function yielding events.
An event that is triggered if the process function returns.
Initialize An event that is triggered automatically to start the process function.
Interrupt An event that is triggered immediately and that interrupts another process.
Interruption An event that is triggered with priority and has an InterruptException value.

Resources

Resource Resource with a capacity of usage slots that can be requested by processes.
Container Resource containing up to a capacity of matter which may either be continuous or discrete.
Store Resource with a capacity of slots for storing arbitrary objects.
PutEvent An event that is triggered if the put action of a resource has been executed.
GetEvent An event that is triggered if the get action of a resource has been executed.
Preempted A type that contains the cause and the usage time of a preemption on a Resource.

Exceptions

EmptySchedule An exception that is thrown if the scheduler contains no events.
StopSimulation An exception that stops the simulation when it is thrown.
EventTriggered An exception that is thrown if an already triggered event is triggered again.
EventProcessed An exception that is thrown if a callback is added to a processed event.
InterruptException An exception that is thrown if an interrupt occurs.