INSA
  • Tutorials
  • Documentation
  • Api Documentation
  • Changelog
Show / Hide Table of Contents
  • Relations
    • Xareus.Relations
      • IEngine
      • IObject
      • IObjectType
      • IRelation
      • Object
      • ObjectMatch
      • ObjectPattern
      • ObjectQueryParameters
      • ObjectType
      • PatternType
      • Realization
      • RealizationQueryParameters
      • Reference
      • Relation
      • Type
      • TypeMatch
      • TypeSearch
    • Xareus.Relations.CSharp
      • Engine
    • Xareus.Relations.Extra
      • Helper
      • IRunnableRelation
      • ObjectPatternAttribute
    • Xareus.Relations.Tests
      • Bolt
      • Inheritance
      • RelationsTests
      • S3PM
    • Xareus.Relations.Tests.CSharp
      • EngineTest
    • Xareus.Relations.Utilities
      • Extensions
  • Scenarios
    • Xareus.Scenarios
      • AFunction
      • ASequence
      • Assignment
      • ComplexSequence
      • Decision
      • DecisionEvent
      • DecisionTree
      • Decoration
      • Event
      • Event.EffectorData
      • Event.SensorData
      • Extendable
      • ExtendedInfo
      • ExternalScenario
      • Function
      • IValueParser
      • Identifiable
      • InitialSequence
      • Net
      • Node
      • NodeUserData
      • Parameter
      • Place
      • ProxySequence
      • Reference
      • SMTransition
      • SafePetriNet
      • Scenario
      • ScenarioLoadedEventArgs
      • ScenarioLoadingParameters
      • ScenarioState
      • SequenceState
      • SetValueInContextEffector
      • SimpleSequence
      • State
      • StateMachine
      • Transition
      • TransitionFiredEventArgs
      • TypedValue
      • ValueParser
    • Xareus.Scenarios.Arithmetics
      • NumberBetweenSensor
      • NumberEffector
      • NumberEffector.ArithmeticalOperator
      • NumberSensor
      • NumberSensor.ComparisonOperator
      • RandomNumberEffector
      • Utils
    • Xareus.Scenarios.AssignmentEval
      • AAssignmentEval
    • Xareus.Scenarios.Boolean
      • BooleanEffector
      • BooleanEffector.LogicalOperator
      • BooleanSensor
      • BooleanSensor.ComparisonOperator
    • Xareus.Scenarios.Context
      • BackwardCompatibilityContext
      • BackwardCompatibilityContext.ParserDelegate
      • ContextType
      • IContext
      • Map
      • SimpleDictionary
      • Trie
    • Xareus.Scenarios.ContextInit
      • AContextInit
      • DefaultContextInit
    • Xareus.Scenarios.Converter
      • BoolConverter
      • ByteConverter
      • CharConverter
      • DoubleConverter
      • FloatConverter
      • IntConverter
      • LongConverter
      • PlaceConverter
      • PrimitiveConverter
      • SByteConverter
      • SMTransitionConverter
      • SafePetriNetConverter
      • ScenarioStateConverter
      • ScenarioVariablePathConverter
      • SequenceStateConverter
      • ShortConverter
      • StateConverter
      • StateMachineConverter
      • TransitionConverter
      • UIntConverter
      • ULongConverter
      • UShortConverter
      • VariableConverter
      • VariablePathConverter
    • Xareus.Scenarios.Converters
      • ArrayConverter
      • CollectionConverter
      • StringConverter
      • TypeConverter
    • Xareus.Scenarios.Effector
      • AEffector
    • Xareus.Scenarios.Exception
      • InvalidDataException
      • InvalidStateException
    • Xareus.Scenarios.Extra
      • AssignmentOverlap
      • DefaultTokenUpdate
      • DefaultTokenUpdate.TokenData
      • DownstreamSequenceList
      • EventSensor
      • ExtendedInfoHelper
      • SelectFromListEffector
      • SequenceList
      • TransitionFiredSensor
      • UpstreamSequenceList
      • VariableExistsSensor
    • Xareus.Scenarios.Extra.Time
      • WaitEffector
    • Xareus.Scenarios.FinalTokenMerge
      • AFinalTokenMerge
      • CopyAllTokens
      • PickFirst
    • Xareus.Scenarios.Network
      • AScenarioSender
      • INetSocketTcp
      • NetSocketTcpScenarioReceiver
      • NetSocketTcpScenarioSender
      • NetSocketTcpScenarioSender.ClientNewScenarioRegistration
      • NetSocketTcpScenarioSender.ClientUpdateRegistration
      • NetSocketTcpUtils
      • NetSocketTcpUtils.ReceiveState
    • Xareus.Scenarios.Network.Tests
      • NetworkTest
    • Xareus.Scenarios.ScenarioManipulation
      • AddTokenToSequencesEffector
      • AddTokenToSequencesEffector.TokenData
      • LoadScenarioStateEffector
      • LoadScenarioStateFromFileEffector
      • LoadSequenceStateEffector
      • LoadSequenceStateFromFileEffector
      • RemoveTokensFromSequencesEffector
      • SaveScenarioStateEffector
      • SaveScenarioStateInFileEffector
      • SaveSequenceStateEffector
      • SaveSequenceStateInFileEffector
    • Xareus.Scenarios.Sensor
      • ASensor
      • ASensor.Result
    • Xareus.Scenarios.Tests
      • ConfigurationParameterTest
      • ConvertersTests
      • IContextTest
      • ParserTest
      • ProgramTest
      • ScenarioManipulationTests
      • ScenarioTest
      • TypeTest
      • TypeTest.OverrideClass
    • Xareus.Scenarios.Time
      • RandomTimeSensor
      • TimeParametersConverter
      • TimeSensor
      • TimeUnit
      • TimeUtils
    • Xareus.Scenarios.TokenAssign
      • ATokenAssign
      • DoNothing
    • Xareus.Scenarios.TokenInit
      • ATokenInit
      • DefaultTokenInit
      • EmptyTokenInit
    • Xareus.Scenarios.TokenMerge
      • ATokenMerge
      • CopyAllTokens
      • PickFirst
    • Xareus.Scenarios.TokenSplit
      • ATokenSplit
    • Xareus.Scenarios.Utilities
      • BackwardCompatibilityManager
      • ConfigurationParameterAttribute
      • ContextVariableAttribute
      • EventContextEntryAttribute
      • FunctionDescriptionAttribute
      • FunctionManager
      • IFunctionParametersConverter
      • IRenameClass
      • IRenamedProvider
      • Necessity
      • ObsoleteUtils
      • OverrideClassAttribute
      • ParameterChecker
      • RenamedAttribute
      • RenamedManagerBase
      • RenamedTypeUtils
      • RuntimeTools
      • TypeConverterForAttribute
    • Xareus.Scenarios.Variables
      • ContextVariable<T>
      • EventVariablePath
      • ExternalContextVariablePath
      • ScenarioVariablePath
      • TokenVariablePath
      • Variable
      • VariablePath
  • Scenarios.Relations
      • Program
    • Xareus.Scenarios.Relations
      • Action
      • ActionLogEffector
      • ActionRecordEffector
      • ActionRecorder
      • AnyRelationSensor
      • Change
      • Environment
      • Execution
      • IRealizationManager
      • InitializeRecorderEffector
      • RealizationContext
      • RealizationManager
      • RealizationRecord
      • RelationEffector
      • RelationSensor
      • RelationsValueParser
      • RenamedProvider
      • WriteActionRecordEffector
    • Xareus.Scenarios.Relations.TypeConverter
      • FiveObjectConverter
      • RealizationConverter
      • RelationConverter
  • Utils
    • Xareus.Utils
      • AssemblyUtils
      • DatedEventManager<DataType, TimeType>
      • DatedEventManager<DataType, TimeType>.EventRecord
      • Extensions
      • FieldsAndPropertiesContainer
      • MemberUtils
      • Serialization
      • TypeUtils
      • UriUtils
    • Xareus.Utils.Tests
      • DatedEventManagerTest
      • DatedEventManagerTest.TestDatedEventManager
      • ExtensionsTests
      • MemberUtilsTest
      • TypeUtilsTests
      • TypeUtilsTests.DummySensor
      • TypeUtilsTests.GenericClassUser
      • TypeUtilsTests.GenericClass<T>
      • UriUtilsTest
  • Unity
    • FIVE.Unity
      • UFManager
      • UFRelationEngine
      • UFScenarioEngineKernel
    • Xareus.Unity
      • GameObjectExtension
      • Log4netFileAppender
      • Log4netUnityAppender
      • XULog4net
      • XareusManager
    • Xareus.Unity.Converters
      • ColorConverter
      • MemberInfoConverter
      • MethodInfoConverter
      • QuaternionConverter
      • UnityObjectConverter
      • Vector2Converter
      • Vector2IntConverter
      • Vector3Converter
      • Vector3IntConverter
      • Vector4Converter
      • VectorConverter
    • Xareus.Unity.TypeDescriptorContext
      • DictionaryDescriptorContext
      • SimpleTypeDescriptorContext<T>
      • UnityObjectDescriptorContext
  • Unity Relations
    • Xareus.Relations.Scenarios.Unity
      • TypeWithScenario
    • Xareus.Relations.Unity
      • BaseEditorDescriptorAttribute
      • GenerationMode
      • IRelationEngine
      • IdentifiableBehaviour
      • ObjectPatternAttribute
      • ObjectPatternDescriptorAttribute
      • ObjectQueryWithCallback
      • ParameterDescriptorAttribute
      • RealizationQueryWithCallback
      • RelationDescriptorAttribute
      • RelationEngine
      • RelationEngineKernel
      • RelationParameters
      • Serializer
      • TypeDescriptorAttribute
      • TypeMember
      • TypeParentAttribute
      • UniqueIDGenerator
      • XUObject
      • XUObject.XuObjectChanged
      • XUObjectPattern
      • XUObjectQueryParameters
      • XURealization
      • XURealizationQueryParameters
      • XURelation
      • XUType
      • XUTypeSearch
    • Xareus.Relations.Unity.Converters
      • XUObjectConverter
      • XURelationTypeConverter
      • XUTypeConverter
  • Unity Scenarios
      • ABaseScenarioElementUI
      • DecisionTreeUI
    • Xareus.Scenarios.Network.Unity
      • NetworkClient
      • NetworkManager
      • NetworkServer
      • UnityNetSocketTcpScenarioReceiver
      • UnityNetSocketTcpScenarioSender
    • Xareus.Scenarios.Unity
      • AInUnityStepSensor
      • AUnityContextInit
      • AUnityEffector
      • AUnitySensor
      • AUnityTokenAssign
      • AdditionalScenarioFile
      • AdvancedConfigurationParameterAttribute
      • Comment
      • DecisionTreeEvaluation
      • ExternalContextEntryAttribute
      • IScenarioEngine
      • ObsoleteFunctionAttribute
      • ObsoleteFunctionAttribute.ParameterConvesion
      • RuntimeScenarioFileRegistry
      • ScenarioEngine
      • ScenarioEngineKernel
      • ScenarioRunner
      • Section
    • Xareus.Scenarios.Unity.Edition
      • BusinessControl
      • Constants
      • ContextVariableManager
      • ContextVariableManager.SerializedContextVariables
      • IScenarioSerializer
      • IToolbarEntryData
      • Layer
      • Layer.UxmlFactory
      • Layer.UxmlTraits
      • LayerBar
      • LayerBar.UxmlFactory
      • LayerBar.UxmlTraits
      • LayerBarButton
      • LayerBarButton.UxmlFactory
      • LayerBarButton.UxmlTraits
      • ScenarioEditorExtendedInfoUpdater
      • ScenarioSerializer
      • ScenarioTabHandler
      • ScenarioTabHandler.LayerViewData
      • ScenarioTabHandler.LayerViewDataDictionary
      • ScenarioWrapper
      • ScenarioWrapper.ScenarioDataConsumers
      • SequenceType
      • SerializableScenario
      • Tab
      • Tab.UxmlFactory
      • Tab.UxmlTraits
      • ThemeManager
      • ThemeManager.ThemeChange
      • XmlUtils
    • Xareus.Scenarios.Unity.Edition.Events
      • ArcCreatedEvent
      • ArcDeletedEvent
      • ArcStartedEvent
      • CreateContextToFireEvent
      • DeselectedEventArgs
      • EventCallbackFunctor<EventType>
      • IEventCallbackFunctor
      • IScenarioEventHandler
      • IdChangeEvent
      • LabelChangeEvent
      • OpenExternalScenarioEventArgs
      • ScenarioDataChangedEventArgs
    • Xareus.Scenarios.Unity.Edition.UI
      • ABaseArcUI
      • AClickableElementUI
      • ADecisionArcPreviewUI
      • AMovableElementUI
      • AMovableElementUI.MovableElementUIMoved
      • ArcDirectionUI
      • ArcPreviewUI
      • ArcUI
      • ArrowToNodesDirectionUI
      • ArrowToNodesUI
      • BackgroundGrid
      • CanvasUI
      • CanvasUI.UxmlFactory
      • CanvasUI.UxmlTraits
      • CommentUI
      • ComplexSequenceUI
      • DecisionArcUI
      • DecisionNodeUI
      • DecisionUI
      • EffectorUI
      • ExternalScenarioUI
      • FalseDecisionArcPreviewUI
      • FalseDecisionArcUI
      • FalseOutUI
      • FinalUI
      • InitialUI
      • LayerUI
      • NodeUI
      • PartialTokenUI
      • PetriNetUI
      • PlaceUI
      • SMTransitionUI
      • SectionUI
      • SensorUI
      • SequenceUI
      • StateMachineUI
      • StateUI
      • TokenAssignUI
      • TokenMergeUI
      • TokenUI
      • TransitionUI
      • TrueDecisionArcPreviewUI
      • TrueDecisionArcUI
      • TrueOutUI
    • Xareus.Scenarios.Unity.MiddleVR
      • AUnityClusterEffector
      • VRCall
    • Xareus.Scenarios.Unity.Providers
      • IClassConstraintableExtension
      • IClassReceiverExtension
      • IConstraintable
      • IConstraintable<T>
      • IProvider
      • IProvider<T>
      • IReceiver
      • IReceiver<T>
      • ProvideConstraintAttribute
      • ProviderAttribute
      • ValueChangedEventArgs<T>
    • Xareus.Scenarios.Unity.VisualScripting
      • Constants
      • VisualScriptHolder
      • VisualScriptingEffector
      • VisualScriptingSensor
  • Unity Utils
    • Xareus.Unity
      • MethodParameters
    • Xareus.Unity.Utils
      • ClassTemplate
      • ClusterUtils
      • ColorUtils
      • FileUtils
      • StringUtils
      • UnityEditorUtils
      • UnityUtils
  • Unity Librairies
    • Xareus
      • StaticClassMemberValueSensor
    • Xareus.Relations.Scenarios
      • CheckTypeWithScenarioMemberValueSensor
      • InvokeTypeWithScenarioMethodEffector
      • SetTypeWithScenarioMemberValueEffector
    • Xareus.Scenarios.Input
      • KeyPressedSensor
    • Xareus.Scenarios.Relations
      • CheckXareusObjectTypeMemberValueSensor
      • CheckXareusTypeMemberValueSensor
      • CompareXareusTypesMembersValuesSensor
      • InvokeXareusObjectMethodEffector
      • RandomXareusObjectEffector
      • RandomXareusObjectEffector.Result
      • RandomXareusObjectWithTypeEffector
      • SelectXareusTypesFromListEffector
      • SetXareusTypeMemberValueEffector
    • Xareus.Scenarios.Relations.ParametersConverter
      • CheckXareusTypeMemberValueSensorConverter
      • CompareXareusTypesMembersValuesSensorConverter
      • TypeValueSensorParametersConverter
    • Xareus.Scenarios.Time.Unity
      • UnityTimeSensor
      • UnityTimeSensor.TimeType
    • Xareus.Scenarios.Unity
      • AInvokeMethodEffector
      • AnyInputSensor
      • ChangeColorEffector
      • ChangeParentEffector
      • ChangeTextEffector
      • CheckMemberValueSensor
      • CompareMembersValuesSensor
      • DistanceSensor
      • HasComponentOfTypeSensor
      • InvokeStaticMethodEffector
      • InvokeUnityObjectMethodEffector
      • LoadSceneEffector
      • LogEffector
      • ObjectClickedSensor
      • ObjectCollisionSensor
      • PlaySoundEffector
      • SceneLoadedSensor
      • ScreenFadeEffector
      • ScreenFadeEffector.FadeType
      • SelectChildObjects
      • SelectComponents
      • SetActiveEffector
      • SetEnabledEffector
      • SetMemberValueEffector
      • StartDisplaySpriteEffector
      • StartDisplayTextAssetEffector
      • StartDisplayVideoClipEffector
      • StopAudioSourceEffector
      • StopDisplaySpriteEffector
      • StopDisplayTextAssetEffector
      • StopDisplayVideoClipEffector
      • UnityEventSensor
      • UnityNumberSensor
    • Xareus.Scenarios.Unity.UI
      • ButtonClickedSensor
      • DropdownSensor
      • ToggleValueSensor
      • ToggleValueSensor.SelectMode
    • Xareus.Scenarios.Unity.Utils
      • CompareMembersValuesSensorUpdater
      • ObjectCollisionSensorUpdater
    • Xareus.Unity
      • CheckMethodReturnValueSensor
      • DefaultUnityContextInit
      • DefaultUnityTokenUpdate
      • ScreenFadeEffect
      • SetValueInContextEffector
      • UFEOtherTrigger

Class StateMachine

Inheritance
object
Extendable
Identifiable
ASequence
ComplexSequence
StateMachine
Inherited Members
ComplexSequence.initialSequences
ComplexSequence.tokenInits
ComplexSequence.finalSequences
ComplexSequence.TransitionTypeName
ComplexSequence.InitialSequences
ComplexSequence.FinalSequences
ComplexSequence.IsInitial(string)
ComplexSequence.IsFinal(string)
ComplexSequence.UnsetInitial(string)
ComplexSequence.RenameInitial(string, string)
ComplexSequence.SetFinal(string)
ComplexSequence.UnsetFinal(string)
ComplexSequence.RenameFinal(string, string)
ComplexSequence.RenameInTransitions(string, string)
ComplexSequence.SetTokenSplit(ATokenSplit)
ComplexSequence.SetFinalTokenMerge(AFinalTokenMerge)
ComplexSequence.HasToken()
ComplexSequence.CreateAndAddSequence(string, string)
ComplexSequence.AddSubSequence(ASequence)
ComplexSequence.RemoveSubSequence(ASequence)
ComplexSequence.GetAvailableSequenceId(string)
ComplexSequence.CreateAndAddTransition(string, string)
ComplexSequence.AddTransition(Transition)
ComplexSequence.RemoveTransition(Transition)
ComplexSequence.GetAvailableTransitionId(string)
ComplexSequence.CancelFiringTransitions()
ComplexSequence.StartFireTransition(Transition)
ComplexSequence.EndFireTransition(Transition)
ComplexSequence.sequence
ComplexSequence.transition
ComplexSequence.initialSequence
ComplexSequence.tokenSplit
ComplexSequence.finalSequence
ComplexSequence.tokenMerge
ComplexSequence.maxLoop
ASequence.externalContext
ASequence.scenarioContext
ASequence.Id
ASequence.InitialSequence
ASequence.State
ASequence.Scenario
ASequence.UpstreamTransitions
ASequence.DownstreamTransitions
ASequence.IsInitial()
ASequence.IsFinal()
ASequence.SetInitial(bool)
ASequence.SetFinal(bool)
Identifiable.Parent
Identifiable.Root
Identifiable.PathId
Identifiable.decoration
Identifiable.id
Identifiable.label
Extendable.extendedInfo
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Xareus.Scenarios
Assembly: Xareus.Scenarios.dll
Syntax
[Serializable]
[TypeConverter(typeof(StateMachineConverter))]
public class StateMachine : ComplexSequence

Constructors

StateMachine()

Constructor

Declaration
public StateMachine()

StateMachine(string, string)

Constructor

Declaration
public StateMachine(string id, string label = "")
Parameters
Type Name Description
string id

The Id must be unique

string label

The label (optional)

Properties

InitialSequenceParameter

Declaration
protected KeyValuePair<ASequence, Function> InitialSequenceParameter { get; }
Property Value
Type Description
KeyValuePair<ASequence, Function>

SequenceTypeName

Declaration
public override string SequenceTypeName { get; }
Property Value
Type Description
string
Overrides
ComplexSequence.SequenceTypeName

Methods

AddToken(IContext)

Declaration
public override void AddToken(IContext token)
Parameters
Type Name Description
IContext token
Overrides
ComplexSequence.AddToken(IContext)

CreateSubSequence(string, string)

Creates a new sub sequence with the given Id and label

Declaration
public override ASequence CreateSubSequence(string id, string label = "")
Parameters
Type Name Description
string id
string label
Returns
Type Description
ASequence
Overrides
ComplexSequence.CreateSubSequence(string, string)

CreateTransition(string, string)

Creates a new transition with the given Id and label

Declaration
public override Transition CreateTransition(string id, string label = "")
Parameters
Type Name Description
string id
string label
Returns
Type Description
Transition
Overrides
ComplexSequence.CreateTransition(string, string)

GetToken()

Get the token of the given state machine. The token is null if no final place of the state machine has a token The token returned is the token of the final place

Declaration
public override IContext GetToken()
Returns
Type Description
IContext
Overrides
ComplexSequence.GetToken()

HasReachedFinalState()

Declaration
public override bool HasReachedFinalState()
Returns
Type Description
bool
Overrides
ComplexSequence.HasReachedFinalState()

RemoveToken()

Declaration
public override void RemoveToken()
Overrides
ComplexSequence.RemoveToken()

SetInitial(string)

sets the sequence with the given Id as initial to the current state machine

Declaration
public override void SetInitial(string initialId)
Parameters
Type Name Description
string initialId
Overrides
ComplexSequence.SetInitial(string)

Extension Methods

ExtendedInfoHelper.AddExtendedInfoElementArrayValue<T>(Extendable, string, string, string, T)
ExtendedInfoHelper.GetExtendedInfoAttributeValue<T>(Extendable, string, string, string, T)
ExtendedInfoHelper.GetExtendedInfoElementArrayCount(Extendable, string, string, string)
ExtendedInfoHelper.GetExtendedInfoElementArray<T>(Extendable, string, string, string, int)
ExtendedInfoHelper.GetExtendedInfoRoot(Extendable, string)
ExtendedInfoHelper.GetExtendedInfoValue<T>(Extendable, string, string, T)
ExtendedInfoHelper.HasExtendedInfoElement(Extendable, string, string, string)
ExtendedInfoHelper.HasExtendedInfoRoot(Extendable, string)
ExtendedInfoHelper.RemoveExtendedInfoElement(Extendable, string, string, string)
ExtendedInfoHelper.RemoveExtendedInfoElementArrayValue(Extendable, string, string, string, int)
ExtendedInfoHelper.RemoveExtendedInfoRoot(Extendable, string)
ExtendedInfoHelper.RenameExtendedInfoRoot(Extendable, string, string)
ExtendedInfoHelper.SetExtendedInfoAttributeValue<T>(Extendable, string, string, string, T)
ExtendedInfoHelper.SetExtendedInfoAttributeValue<T>(Extendable, string, string, T)
ExtendedInfoHelper.SetExtendedInfoElementArrayValue<T>(Extendable, string, string, string, T, int)
ExtendedInfoHelper.SetExtendedInfoElementValue<T>(Extendable, string, string, string, T)
ExtendedInfoHelper.SetExtendedInfoElementValue<T>(Extendable, string, string, T)
INSA     IRISA     Inria     Ouest Valorisation Back to top