掲示板一覧   -   トピック一覧
   EA ソースコード生成・コード生成テンプレート
     StmContextDefinitionImplについて


スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
nakapon
投稿日時: 2022-5-25 11:29
EA Administrator
投稿: 427

StmContextDefinitionImplについて

サポート宛てにいただきましたご質問の要約です。

○ご質問

C++のコード生成テンプレートで、class body Implテンプレートにある
下記について教えてください。

%if genOptStmCPPUseNewTemplate == "T" and stmContextHasStatemachine == "T"%
/* Begin - EA generated code for StateMachine */
\n
%StmContextDefinitionImpl%
\n
/* End - EA generated code for StateMachine */
%endIf%

上記の数行前に以下があり、上記との関係も教えてください。
%StateMachine("Impl")%


○回答

ご質問の箇所につきましては
外部実行の状態マシンの機能を利用する場合に
コード生成するものになります。

当該機能につきましては
ヘルプより、シミュレーション > 外部実行の状態マシン
をご確認いただけますでしょうか。

当該機能を利用する場合、
当該機能用の「拡張テンプレート」を利用する必要があり、
下記ヘルプに記載の「ステートマシンのコード生成に関する設定」
で設定をします。

〇ヘルプ
 ソースコードの生成と読み込み > ソースコードの生成と読み込みに関する設定
 > 言語ごとのオプション > C++ - ユーザーごとのオプション

〇ヘルプ(参考)
 ソースコードの生成と読み込み > 振る舞いモデルからのソースコード生成
 > ステートマシン図からのソースコード生成

上記の設定内容は、class body Implテンプレートの50~62行目の
2つのif文の条件で利用されている genOptStmCPPUseNewTemplate
になります。

2つのif文の条件にありますように
genOptStmCPPUseNewTemplate の値により
両方のif文のコード生成をすることはございません。
(%StateMachine("Impl")% と %StmContextDefinitionImpl%)

StmContextDefinitionImpl などテンプレートの文法につきましては
標準サポートで公開可能な範囲はヘルプに記載しており、
大変申し訳ございませんが、追加でお伝えできる情報はございません。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ