Click or drag to resize
StaMaStaMa Namespace

Contains all classes, interfaces and delegate types to implement state machines.

See class StateMachineTemplate to create the structure of a state machine.

Use method CreateStateMachine or CreateStateMachine(Object) to create StateMachine instances.

Send events to a state machine to trigger transitions through method SendTriggerEvent(Object) or SendTriggerEvent(Object, EventArgs).

Classes
  ClassDescription
Public classRegion
Represents a container for states and defines the initial State for the contained states.
Public classRegionCollection
Represents a list of Region instances.
Public classState
Represents a state with entry and exit actions. Hierarchical sub-states are aggregated through the Regions collection.
Public classStateCollection
Represents a list of State instances.
Public classStateConfiguration
Specifies a state configuration in a structured way.
Public classStateMachine
Contains the active state of a state machine. Receives the trigger events and executes the actions according to the state machine structure defined by the StateMachineTemplate from which the StateMachine instance is created.
Public classStateMachineException
The exception that is thrown during creation of the state machine template when creation rules are violated.
Public classStateMachineTemplate
Contains the structure and behaviour definition of a state machine.
Public classTransition
Represents a transition with source state, target state and information when the transition shall be executed.
Public classTransitionCollection
Represents a list of Transition instances.
Interfaces
  InterfaceDescription
Public interfaceIStateConfigurationVisitor
Defines a set of methods which allow for composing a human readable representation of a StateConfiguration.
Public interfaceIStateMachineTemplateVisitor
Defines the visitor interface to be used for passing through the regions, states and transitions of a StateMachineTemplate.
Delegates
  DelegateDescription
Public delegateSignatureGenerator
Represents a method that calculates a hash value for a String.
Public delegateStateMachineTraceDispatchTriggerEventEventHandler
Represents a method that will be called whenever the event queue dispatches an event to the state machine.
Public delegateStateMachineTraceStateChangeEventHandler
Represents a method that will be called for tracing state changes in the StateMachine.
Public delegateStateMachineTraceTestTransitionEventHandler
Represents a method that will be called for tracing which transitions are considered by the state machine as active during a SendTriggerEvent(Object) or SendTriggerEvent(Object, EventArgs) call.
Public delegateStateMachineActionCallback
Represents a method that will be called when a State entry, exit or Transition action shall be executed.
Public delegateStateMachineDoActionCallback
Represents a method that will be called when a State do action shall be executed.
Public delegateStateMachineGuardCallback
Represents a method that will be called when a Transition guard shall be executed.
Enumerations
  EnumerationDescription
Public enumerationStateMachineOptions
Defines optional behavior or functionality for the state machines.