Main Content

setInternalDataPackaging

AUTOSAR コンポーネント モデルに対する内部データの既定パッケージ化の設定

説明

setInternalDataPackaging(slMap,pkgSetting) は、AUTOSAR コンポーネント モデルに生成されたコードで、内部データ ストア、信号、および状態に使用される既定のデータ パッケージ化を設定します。有効な設定値は次のとおりです。

  • Default — ソフトウェアによって提供されている既定の内部データ パッケージ化の受け入れ。AUTOSAR コンポーネント モデルから参照されるマルチインスタンス モデルおよびサブモデルに Default を使用します。

  • PrivateGlobalstruct を使用しない内部変数データのパッケージ化およびプライベート化 (model.c からのみ参照可能)。

  • PrivateStructurestruct への内部変数データのパッケージ化およびプライベート化 (model.c からのみ参照可能)。

  • PublicGlobalstruct を使用しない内部変数データのパッケージ化および公開 (model.hextern 宣言)。

  • PublicStructurestruct への内部変数データのパッケージ化および公開 (model.hextern 宣言)。

データ パッケージ化が PrivateGlobal または PrivateStructure に設定されている場合、モデル コンフィギュレーション パラメーター [ファイル パッケージ化形式] (Embedded Coder)[コンパクト] に設定されていても、モデルをビルドするとヘッダー ファイル model_private.h が生成されます。

モデル コンフィギュレーション オプション [エントリポイント関数ごとに個別の内部データを生成] (Embedded Coder) が AUTOSAR モデルに対して設定されている場合、タスクベースの内部データ グループ化が AUTOSAR の内部データ パッケージ化の設定をオーバーライドします。ただし、AUTOSAR の設定によって、タスクベースの生成された内部データ グループの可視性 (パブリックまたはプライベート) が決まります。

すべて折りたたむ

AUTOSAR コンポーネント モデルに生成されたコードで、内部変数に使用されるデータ パッケージ化の既定の設定を返し、変更します。内部変数データを struct にパッケージ化し、プライベート化することを指定します。

hModel = 'autosar_swc';
addpath(fullfile(matlabroot,'/examples/autosarblockset/main'));
open_system(hModel);
slMap = autosar.api.getSimulinkMapping(hModel);
pkgSetting1 = getInternalDataPackaging(slMap)
setInternalDataPackaging(slMap,'PrivateStructure')
pkgSetting2 = getInternalDataPackaging(slMap)
pkgSetting1 =
    'Default'

pkgSetting2 =
    'PrivateStructure'

入力引数

すべて折りたたむ

以前に slMap = autosar.api.getSimulinkMapping(model) によって返されたモデルの Simulink から AUTOSAR へのマッピング情報。model は、モデル名を表すハンドル、文字ベクトル、または string スカラーです。

例: slMap

AUTOSAR コンポーネント モデルに生成されたコードで、内部変数に使用されるデータ パッケージ化の既定の設定を指定する値です。有効な設定値は、DefaultPrivateGlobalPrivateStructurePublicGlobal および PublicStructure です。

例: 'PrivateStructure'

バージョン履歴

R2021a で導入