前页 | 后页 |
用于可执行状态机的代码生成宏
此处列出的模板可通过代码模板编辑器获得(“开发 >源代码 > 选项 > 编辑代码模板”功能区选项);在“语言”字段中选择“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 |