RIMB 実装コード構成は、内部振る舞いタグ「SupportMultipleInstamtiation」によって決まります。 タグ「SupportMultipleInstantiation」が「False」であれば、RIMB は、コンテキスト・ポインター (「me」、「self」) を使用しません。例えば、RIMB を singleton またはファイルとして生成することが、struct を生成することにはならず、「me」、「self」ポインターも持ちません。
RIMB の C 構造でデータをカプセル化
ActiveOperation 以外のすべての操作で、「me」引数を持つ
次の操作で、「Rte_Instance self」パラメーターを持つ
ユーザー・モデル操作
ステートチャートの dispatchEvent 操作および takeEvent 操作
トリガー操作
アクティブ操作
Rte_PIM API の呼び出しによって、 それぞれのアクティブ操作の先頭に、「Rte_Instance self」パラメーターから「me」ポインターが抽出されるコードが追加されます。
ARBMT アクセサー・ヘルパー操作
mxf RiCReactive 操作: RiCReactive_consumeEvent、RiCReactive_takeEvent、RiCReactive_takeTrigger、runToCompletion
RIMBO データ/インスタンス宣言なし
RIMB_Init 操作なし
インテグレーターは、<RIMB-class>_Init, <RIMB-class>_startBehavior を呼び出す必要がある
InternalBehavior の下に RIMB PIM の ARXML 定義を作成
生成されたコードの中に、関連する typedef を作成
コードは、「RTE の仕様」の指定結果として、タイプに対して循環の依存関係を持つことがあります。これらは、「インテグレーター」によって手動で処理される必要があります。
「Rte_Instance self」パラメーターは、ステートチャート「entDef」操作に追加されません。
最適化されたステートチャートはサポートされません。
すべての実行可能エンティティーは、「排他的領域で実行」モードになければなりません。
C_CG::Operation::OSContextName
C_CG::Operation::OSContextDeclType
C_CG::Operation::ActiveOperationExtractMeCall