外部実行のステートマシンのコード生成マクロ

<< 目次を表示 >>

ページ位置:  Enterprise Architectの拡張 > ソースコード生成のカスタマイズ > コード生成テンプレートフレームワーク > コード生成テンプレートの文法 > マクロ >

外部実行のステートマシンのコード生成マクロ

このテンプレートは、外部実行のステートマシンの機能を利用する際に生成されるソースコードをカスタマイズするために利用します。コード生成テンプレートエディタの「言語」欄において、「STM_」で始まる種類が該当します。

 

テンプレートの構造は次の通りです。

 

 

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

 

         StmStateProc

 

                   StmStateEntry

 

                             StmOutgoingTransition

 

                             StmConnectionPointReferenceEntry

 

                             StmParameterizedInitial

 

                   StmSubMachineInitial

 

                   StmRegionInitial

 

                   StmRegionDeactive

 

                             StmStateExitProc

 

         StmStateTransition

 

                   StmStateEvent

 

                             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

 

         StmSignalDefinition

 

                   StmSignalAttributeAssignment

 

                   StmSignalAttribute

 

         StmSignalInitialize

 

         StmEventStringToEnum

 

         StmEventEnumToString

 

         StmEventNameToGuid

 

StmConsoleManager

 

         StmContextInstanceDeclaration

 

         StmContextInstance

 

                   StmContextVariableRunstate

 

         StmContextInstanceAssociation

 

         StmContextInstanceClear

 

StmStateMachineStrongToEnum

 

StmInitialForTransition

 

StmVertextOutgoingTransition

 

StmSendEvent

 

StmBroadcastEvent

 

StmContextRef

 

 

シグナルとイベントに関するマクロ

マクロ名

説明

stmEventEnum

接頭辞 'ENUM_' つきのイベント名

StmEventGuid

イベント要素のGUID

stmEventName

空白やアスタリスクを削除したイベント名

stmEventVariable

接頭辞 'm_' つきのイベント名

stmIsSignalEvent

要素がシグナルやイベントであればT (True)

stmSignalEnum

接頭辞 'ENUM_' つきのシグナル名

stmSignalFirstEvent

接頭辞 'ENUM_' つきのイベント名

stmSignalGuid

シグナル要素のGUID

stmSignalName

空白やアスタリスクを削除したシグナル名

stmSignalVariable

接頭辞 'm_' つきのシグナル名

stmTriggerName

遷移のプロパティ: トリガ名

stmTriggerSpecification

遷移のプロパティ: トリガの仕様

stmTriggerType

遷移のプロパティ: トリガの種類

 

 

生成対象の要素(クラス)に関するマクロ

マクロ名

説明

stmContextName

空白やアスタリスクを削除したクラス名

stmContextQualName

名前空間などの情報を含むクラス名

stmContextVariableName

 

stmContextFileName

生成対象のファイル名

 

 

状態マシンの初期化のための実行状態を記録するためのマクロ

マクロ名

説明

stmContextVariableRunstateName

 

stmContextVariableRunstateValue

 

stmContextHasStatemachine

クラス要素が状態マシンを持っている場合にT (True)

stmHasHistoryPattern

状態マシンに履歴要素が含まれる場合にT (True)

stmHasTerminatePattern

状態マシンに停止要素が含まれる場合にT (True)

stmHasDeferredEventPattern

状態マシンに遅延イベントが含まれる場合にT (True)

stmHasSubmachinePattern

状態マシンにサブマシンが含まれる場合にT (True)

stmHasOrthogonalPattern

状態マシンに直交領域が含まれる場合にT (True)

 

 

状態マシンに関するマクロ

マクロ名

説明

stmStatemachineName

空白やアスタリスクを削除した状態マシン名

stmStatemachineEnum

接頭辞 'ENUM_' つきの状態マシン名

stmStatemachineGuid

状態マシン要素のGUID

stmStateCount

状態マシンに含まれる状態要素の数

stmSubmachineInitialCount

サブマシン状態に含まれる開始状態の数

stmStatemachineHasSubmachineState

状態マシンにサブマシンが含まれる場合にT (True)

stmStatemachineInitialCount

状態マシンに含まれる開始状態の数

 

 

領域の処理に関するマクロ

マクロ名

説明

stmRegionEnum

接頭辞 'ENUM_' つきの領域名

stmRegionFQName

名前空間などの情報を含む領域名

stmRegionName

空白やアスタリスクを削除した領域名

stmRegionVariable

接頭辞 'm_' つきの領域名

stmRegionFQVariable

名前空間などの情報を含む、接頭辞 'm_' つきの領域

stmRegionGuid

領域のGUID

stmRegionInitial

領域の開始要素のGUID

stmRegionIsOwnedByStateMachine

領域が状態マシンに含まれていればT (True)

 

 

遷移に関するマクロ

マクロ名

説明

stmTransitionEnum

接頭辞 'ENUM_' つきの遷移名

stmTransitionGuid

遷移の接続のGUID

stmTransitionName

空白やアスタリスクを削除した遷移名

stmTransitionSourceGuid

遷移の送信元側要素のGUID

stmTransitionTargetGuid

遷移の送信先側要素のGUID

stmTransitionVariable

接頭辞 'm_' つきの遷移名

stmTransitionSourceVariable

遷移の送信元側要素の変数名

stmTransitionTargetVariable

遷移の送信先側要素の変数名

stmTransitionFQVariable

遷移の変数名

stmSourceVertexEnum

接頭辞 'ENUM_' つきの遷移の送信元側の要素名

stmTargetVertexEnum

接頭辞 'ENUM_' つきの遷移の送信先側の要素名

stmSourceIsInitial

送信元要素が開始状態であればT (True)

stmSourceIsState

送信元要素が通常の状態要素であればT (True)

stmSourceIsEntryPoint

送信元要素が入場点であればT (True)

stmSourceIsExitPoint

送信元要素が退場点であればT (True)

stmSourceIsFork

送信元要素がフォーク要素であればT (True)

stmSourceIsJoin

送信元要素がジョイン要素であればT (True)

stmTargetIsFinalState

送信先要素が終了状態であればT (True)

stmTargetIsExitPoint

送信先要素が退場点であればT (True)

stmTargetIsState

送信先要素が通常の状態要素であればT (True)

stmTargetIsChoice

送信先要素が選択点であればT (True)

stmTargetIsJunction

送信先要素が連結点であればT (True)

stmTargetIsEntryPoint

送信先要素が入場点であればT (True)

stmTargetIsConnectionPointReference

送信先要素が接続点の参照であればT (True)

stmTargetIsFork

送信先要素がフォーク要素であればT (True)

stmTargetIsJoin

送信先要素がジョイン要素であればT (True)

stmTransitionEffect

遷移の効果

stmTransitionGuard

遷移のガード条件

stmTransitionKind

遷移の種類

stmTargetInitialTransition

送信先要素の内部の開始状態

stmTargetIsSubmachineState

送信先要素がサブマシン状態であればT (True)

stmSourceStateEnum

接頭辞 'ENUM_' つきの遷移の送信元側の状態名

stmTargetStateEnum

接頭辞 'ENUM_' つきの遷移の送信先側の状態名

stmTargetVertexFQName

名前空間などの情報を含む遷移先の要素名

stmTargetIsDeepHistory

送信先要素が深い履歴要素であればT (True)

stmTargetIsShallowHistory

送信先要素が(浅い)履歴要素であればT (True)

stmTargetIsTerminate

送信先要素が停止要素であればT (True)

stmParentIsStateMachine

要素が状態マシン要素に含まれているか、入場点・退場点であればT (True)

stmSourceParentStateEnum

 

stmTargetParentStateEnum

 

stmTargetSubmachineEnum

 

stmTargetRegionIndex

 

stmIsSelfTransition

遷移の送信元と送信先が同じ要素であればT (True)

stmHistoryOwningRegionInitialTransition

 

stmDefaultHistoryTransition

 

 

 

状態などの要素に関するマクロ

マクロ名

説明

stmVertexName

要素の名前

stmStateName

状態の名前

stmVertexGuid

要素のGUID

stmVertexFQName

名前空間などの情報を含む要素名

stmStateFQName

名前空間などの情報を含む状態名

stmVertexType

要素の種類: 'State', 'FinalState', 'Pseudostate', 'ConnectionPointReference', ' ' (空)'のいずれか.

stmPseudostateKind

疑似状態の場合の種類:  'initial', 'deepHistory', 'shallowHistory', 'join', 'fork', 'junction', 'choice', 'entryPoint', 'exitPoint', 'terminate'のいずれか

stmPseudostateName

疑似状態の名前

stmPseudostateVariable

接頭辞 'm_' つきの疑似状態名

stmPseudostateStateMachineName

疑似状態の状態マシン名

stmPseudostateStateMachineVariable

接頭辞 'm_' つきの疑似状態の状態マシン名

stmVertexVariable

接頭辞 'm_' つきの要素名

stmVertexEnum

接頭辞 'ENUM_' つきの要素名

stmStateEnum

接頭辞 'ENUM_' つきの状態名

stmConnectionPointReferenceStateName

接続点の参照の名前

stmConnectionPointReferenceStateVariable

接頭辞 'm_' つきの接続点の参照の名前

stmConnectionPointReferenceEntryCount

 

stmParameterizedInitialCount

 

stmInitialCountForTransition

 

stmStateVariable

接頭辞 'm_' つきの状態の名前

stmStateEntryBehavior

状態に定義されたentryアクションの振る舞いの内容

stmStateEntryCode

状態に定義されたentryアクションの「既定のソースコード」の内容

stmStateDoBehavior

状態に定義されたdoアクションの振る舞いの内容

stmStateDoCode

状態に定義されたdoアクションの「既定のソースコード」の内容

stmStateExitBehavior

状態に定義されたexitアクションの振る舞いの内容

stmStateExitCode

状態に定義されたexitアクションの「既定のソースコード」の内容

stmStateSubmachineName

サブマシン状態の名前

stmStateSubmachineVariable

接頭辞 'm_' つきのサブマシン状態の名前

stmStateIsFinal

要素が終了状態であればT (True)

stmStateIsSubmachineState

状態要素がサブマシン状態であればT (True) (プロパティの追加設定にある 'isSubmachineState' の値で判断)

stmSubMachineEnum

接頭辞 'ENUM_' つきのサブマシン状態名

stmStateHasChildrenToJoin

 

stmStateIsTransitionTarget

 

stmThisIsSource

 

stmThisIsSourceState

 

stmStateParentIsSubmachine

状態が状態マシン要素に含まれていればT (True)

stmStateContainerMatchTransitionContainer

 

stmVertexRegionIndex

 

stmStateRegionCount

状態内の領域の数

stmStateInitialCount

状態マシン内の初期状態の数

stmVertexContainerVariable

 

stmVertexParentEnum

 

stmStateHasUnGuardedCompletionTransition

 

stmStateEventHasUnGuardedTransition

 

stmInitialTransition