预订演示
前页 后页

用于可执行状态机的代码生成宏

此处列出的模板可通过代码模板编辑器获得(“开发 >源代码 > 选项 > 编辑代码模板”功能区选项);在“语言”字段中选择“STM_C++_Structured”。

模板的结构如下所示:

StmContextStateMachineEnum

StmStateMachineEnum

StmContextStateEnum

StmAllStateEnum

StmContextTransitionEnum

StmTransitionEnum

StmContextEntryEnum

StmAllEntryEnum

StmContextStateMachineStringToEnum

StmStateMachineStringToEnum

StmContextStateEnumToString

StmStateEnumToString

StmContextTransitionEnumToString

StmTransitionEnumToString

StmContextStateNameToGuid

StmStateNameToGuid

StmContextTransitionNameToGuid

StmTransitionNameToGuid

StmContextDefinition

StmStateMachineEnum

StmAllStateEnum

StmTransitionEnum

StmAllEntryEnum

StmAllRegionVariableInitialize

StmStateWithDeferredEvent

StmDeferredEvent

StmTransitionProcMapping

StmTransitionProc

StmTransitionExit

StmTransitionEntry

StmTargetOutgoingTransition

StmTargetParentSubmachineState

StmStateProcMapping

状态程序

状态条目

StmOutgoingTransition

StmConnectionPointReferenceEntry

StmParameterizedInitial

StmSubMachineInitial

StmRegionInitial

StmRegionDeactive

StmStateExitProc

状态转换

状态事件

StmStateTriggeredTransition

StmStateCompletionTransition

StmStateIncomingTransition

StmStateOutgoingTransition

StmSubmachineStateExitEvent

StmVertexOutgoingTransition

StmConnectionPointReferenceExitEvent

StmStateExitEvent

StmVertexOutgoingTransition

StmAllRegionVariable

StmStateMachineStringToEnum

StmStateMachineRun

StmStateInitialData

StmStateMachineEntry

StmOutgoingTransition

StmStateMachineRunInitial

StmStateMachineInitial

StmStateMachineRuns

StmContextManager

StmSimulationManager

StmContextInstanceDeclaration

StmContextInstance

StmContextVariableRunstate

StmContextInstanceAssociation

StmContextInstanceClear

StmEventProxy

StmSignalEnum

StmContextJoinEventEnum

StmJoinEventEnum

StmEventEnum

信号定义

StmSignalAttributeAssignment

StmSignalAttribute

StmSignalInitialize

StmEventStringToEnum

StmEventEnumToString

StmEventNameToGuid

控制台管理器

StmContextInstanceDeclaration

StmContextInstance

StmContextVariableRunstate

StmContextInstanceAssociation

StmContextInstanceClear

StmStateMachineStrongToEnum

StmInitialForTransition

StmVertextOutgoingTransition

发送事件

Stm广播事件

StmContextRef

信号与事件

宏名称

描述

stmEventEnum

事件名称,前缀为“ENUM_”,全部大写。

StmEventGuid

事件的GUID 。

stmEventName

删除了空格和星号的事件名称。

stmEvent变量

小写前缀“m_”的事件名称。

stmIsSignalEvent

如果元素是 SignalEvent,则为“ T ”。

stmSignalEnum

带有前缀“信号”的信号名称,全部大写。

stmSignalFirstEvent

事件名称,前缀为“ENUM_”,全部大写。

stmSignalGuid

信号的GUID 。

stmSignalName

已删除空格和星号的信号名称。

stm信号变量

带有前缀“m_”的小写信号的名称。

stmTriggerName

转移

属性:简单的触发器。

stmTriggerSpecification

转移

属性:简单的触发器。

stmTriggerType

转移

属性:简单的触发器。

语境

宏名称

描述

stmContextName

删除了空格和星号的类的名称。

stmContextQualName

为其生成代码的类的限定名称。

stmContextVariableName

stmContextFileName

正在为其生成代码的类的输出文件名。

写物件到状态机初始化

宏名称

描述

stmContextVariableRunstateName

stmContextVariableRunstateValue

stmContextHasStatemachine

如果当前上下文有一个或多个状态机,则为' T '。

stmHasHistoryPattern

如果状态机具有历史模式,则为“ T ”。

stmHasTerminate模式

如果状态机有终止模式,则为' T '。

stmHasDeferredEventPattern

如果状态机具有延迟事件模式,则为“ T ”。

stmHasSubmachine模式

如果状态机具有子机模式,则为“ T ”。

stmHasOrthogonalPattern

如果状态机具有正交模式,则为“ T ”。

状态机

宏名称

描述

stmStatemachineName

删除了星号和空格的状态机名称。

stmStatemachineEnum

状态机名称加“ENUM_”加状态机名称大写。

stmStatemachineGuid

状态机元素的GUID 。

stmStateCount

状态机中状态元素的数量。

stmSubmachineInitialCount

子机状态元素中初始元素的数量。

stmStatemachineHasSubmachineState

如果状态机至少有一个状态,则为“ T ”。

stmStatemachineInitialCount

状态机中 Initial 元素的数量。

区域

宏名称

描述

stmRegionEnum

状态名称加“状态”加状态区域名称区域。

stmRegionFQName

状态区域的完全限定名称。

stmRegionName

删除了空格和星号的状态区域的名称。

stm区域变量

状态区域的名称,前缀为“m_”,小写。

stmRegionFQ变量

状态区域的完全限定名称,前缀为“m_”,小写。

stmRegionGuid

区域的GUID 。

stmRegionInitial

stmRegionIsOwnedByStateMachine

如果区域为状态机所有,则为“ T ”。

转移

宏名称

描述

stmTransitionEnum

转移

的名字转移

带有前缀“ENUM_”,加上转移

的名称转移

大写。

stmTransitionGuid

转移

的GUID转移

.

stmTransitionName

转移

的名字转移

删除了空格和星号。

stmTransitionSourceGuid

转移

中源元素的GUID转移

.

stmTransitionTargetGuid

转移

中目标元素的GUID转移

.

stmTransitionVariable

转移

的名字转移

带有前缀“m_”的小写字母。

stmTransitionSourceVariable

stmTransitionTargetVariable

stmTransitionFQ变量

stmSourceVertexEnum

转移

的名字转移

's源顶点加上'_ENUM'加上转移

的名字转移

's源顶点大写。

stmTargetVertexEnum

转移

的名字转移

的目标顶点加上'_ENUM'加上转移

的名称转移

的目标顶点大写。

stmSourceIsInitial

如果转移

是' T '转移

's源是首字母。

stmSourceIsState

如果转移

是' T '转移

的源是一种状态。

stmSourceIsEntryPoint

如果转移

是' T '转移

的源是一个入口。

stmSourceIsExitPoint

如果转移

是' T '转移

'源是一个出口。

stmSourceIsFork

如果转移

是' T '转移

's源是一个分叉。

stmSourceIsJoin

如果转移

是' T '转移

'源是一个汇合元素。

stmTargetIsFinalState

如果转移

是' T '转移

的目标是终点状态元素。

stmTargetIsExitPoint

如果转移

是' T '转移

的目标是一个出口元素。

stmTargetIsState

如果转移

是' T '转移

的目标是状态元素。

stmTargetIsChoice

如果转移

是' T '转移

的目标是选择元素。

stmTargetIsJunction

如果转移

是' T '转移

的目标是一个结合点元素。

stmTargetIsEntryPoint

如果转移

是' T '转移

的目标是一个入口元素。

stmTargetIsConnectionPointReference

如果转移

是' T '转移

的目标是一个连接点参考元素。

stmTargetIsFork

如果转移

是' T '转移

的目标是一个分叉元素。

stmTargetIsJoin

如果转移

是' T '转移

的目标是汇合元素。

stmTransitionEffect

影响的转移

.

stmTransitionGuard

转移

的守卫条件转移

.

stmTransitionKind

转移

的类型或种类转移

.

stmTargetInitialTransition

stmTargetIsSubmachineState

如果转移

是' T '转移

的目标是一个子机状态。

stmSourceStateEnum

转移

的名字转移

's源状态,前缀'状态'大写。

stmTargetStateEnum

转移

的名字转移

的目标状态,前缀'状态'大写。

stmTargetVertexFQName

转移

的完全限定名称转移

的目标顶点。

stmTargetIsDeepHistory

如果转移

是' T '转移

的目标是深度历史状态。

stmTargetIsShallowHistory

如果转移

是' T '转移

的目标是一个浅历史状态。

stmTargetIsTerminate

如果转移

是' T '转移

的目标是元素终止

stmParentIsStateMachine

如果顶点是入口或出口,或者容器是状态机,则为' T '。

stmSourceParentStateEnum

stmTargetParentStateEnum

stmTargetSubmachineEnum

stmTargetRegionIndex

stmIsSelfTransition

如果转移

是' T '转移

'源与它的目标相同。

stmHistoryOwningRegionInitialTransition

stmDefaultHistoryTransition

顶点和状态

宏名称

描述

stmVertexName

顶点的名称。

状态名称

状态的状态。

stmVertexGuid

顶点的GUID 。

stmVertexFQName

顶点的完全限定名称。

stmStateFQName

状态的完全限定状态。

stmVertexType

顶点的类型; “状态”、“FinalState”、“伪状态”、“ConnectionPointReference”或“”之一(空)。

stmPseudostateKind

伪状态的种类; “initial”、“deepHistory”、“shallowHistory”、“join”、“fork”、“junction”、“choice”、“entryPoint”、“exitPoint”或“terminate”之一。

stmPseudostateName

伪状态的名称。

stm伪状态变量

带有前缀“m_”的伪状态的名称,小写。

stmPseudostateStateMachineName

伪状态机的名称。

stmPseudostateStateMachineVariable

小写前缀“m_”的伪状态机的名称。

stmVertexVariable

带有前缀“m_”的顶点的名称,小写。

stmVertexEnum

顶点名称加上“_ENUM”加上大写的顶点名称。

stmStateEnum

状态名称加“状态”加状态名称大写。

stmConnectionPointReferenceStateName

连接点的名称参考。

stmConnectionPointReferenceStateVariable

连接点的名称参考带有前缀“m_”的小写字母。

stmConnectionPointReferenceEntryCount

stmParameterizedInitialCount

stmInitialCountForTransition

状态变量

状态名称,前缀为“m_”,小写。

stmStateEntryBehavior

为状态的“入口”行动操作定义的状态(元素特征窗口上“入口”行动操作的“行为”选项卡上的文本)。

stmStateEntryCode

为状态的“进入”行动操作定义的初始代码(行为的“代码”选项卡上的“进入”行动操作的文本)。

stmStateDoBehavior

为状态的“do”行动定义的行为(元素的特征窗口上“do”行动操作的“行为”选项卡上的文本)。

stmStateDoCode

为状态的“do”行动操作定义的初始代码(行为的“代码”选项卡上的“do”行动操作的文本)。

stmStateExitBehavior

为状态的“退出”行动操作定义的状态(元素特征窗口上“退出”行动操作的“行为”选项卡上的文本)。

stmStateExitCode

为状态的“退出”行动操作定义的初始代码(行为的“代码”选项卡上的“退出”行动操作的文本)。

stmStateSubmachineName

子机之名。

stmStateSubmachine变量

子机名称,前缀为“m_”,小写。

stmStateIsFinal

如果状态是 FinalState,则为 ' T '。

stmStateIsSubmachineState

如果状态是子机状态('属性'页面|高级|'状态'属性),则为' T '。

stmSubMachineEnum

子机名称后跟“_ENUM”加子机名称大写。

stmStateHasChildrenToJoin

stmStateIsTransitionTarget

stmThisIsSource

stmThisIsSourceState

stmStateParentIsSubmachine

如果状态的容器是状态机,则为“ T ”。

stmStateContainerMatchTransitionContainer

stmVertexRegionIndex

stmStateRegionCount

状态中的区域数。

stmStateInitialCount

状态机中 Initial 元素的数量。

stmVertexContainerVariable

stmVertexParentEnum

stmStateHasUnGuardedCompletionTransition

stmStateEventHasUnGuardedTransition

stmInitialTransition

实例关联

宏名称

描述

stmSourceInstanceName

stmTargetInstanceName

stmSourceRoleName

stmTargetRoleName