グローバルなタイプ
生成されたグローバルなタイプの識別子をカスタマイズする
モデル コンフィギュレーション ペイン: [コード生成] / [識別子]
説明
生成されたグローバルなタイプの識別子をカスタマイズします。
依存関係
このパラメーターには次の特徴があります。
ERT ベースのターゲットの場合にのみ表示されます。
コード生成時に Embedded Coder® が必要です。
設定
$N$R$M_T
(既定値) | string生成される識別子に特定のテキストを含めるかどうかとその順序を指定するマクロを入力します。マクロには、次の書式トークンの組み合わせを含めることができます。
トークン | 説明 |
---|---|
$M | 名前の競合を回避するために必要な場合に名前マングリング テキストを挿入します。 必須。 |
$N | 識別子を生成する対象のオブジェクト (ブロック、信号または信号オブジェクト、状態、パラメーターまたはパラメーター オブジェクト) の名前を挿入します。 |
$R | ルート モデルの名前を識別子に挿入します。サポートされない文字はアンダースコア (_) 文字に置き換えられます。 モデル参照に必須。 |
$U |
|
ヒント
一般に名前の競合は避けるようにします。1 つの方法として、モデルに同じタイプのブロックが複数含まれる場合、既定のブロック名 (たとえば、
Gain1
、Gain2
など) を使用することは避けます。可能であれば、生成される識別子の長さに合わせて [識別子の最大の長さ] を増やします。少なくとも 3 文字は名前マングリング テキスト用に確保します。
各トークンが表すテキストの大文字小文字の区別を制御するには、
[U_]
などのデコレータをマクロに含めます。Control Case of Identifiers by Using Basic Token Decoratorsを参照してください。$R
を指定する場合は、[識別子の最大の長さ] に指定する値を$R
トークンと$M
トークンを展開した後の全体が収まる十分な大きさにしなければなりません。上位モデルのスコープ内の識別子と参照モデルのスコープ内の識別子の間で名前の競合が発生すると、コード ジェネレーターは参照モデルの識別子を保持します。名前マングリングが上位モデルの識別子に対して実行されます。
名前マングリング規則は、グローバル データ型に対して生成された型名 (つまり、
typedef
ステートメント) には適用されません。[識別子の最大の長さ] 設定は型定義には適用されません。$R
を指定した場合、コード ジェネレーターはtypedef
にモデル名を含めます。このオプションは、
Auto
以外のストレージ クラス (ImportedExtern
やExportedGlobal
など) をもつオブジェクト (信号やパラメーターなど) には影響しません。参照モデルについては、[グローバルなタイプ] パラメーターに
$R
トークン (参照モデルの名前を表す) が含まれていない場合、コード生成で識別子の書式の先頭に$R
トークンが付加されます。モデル アドバイザーを使用して、コード生成によってコンフィギュレーション パラメーター設定が変更されるモデルを、モデル参照階層において特定します。
[モデル化] タブで [モデル アドバイザー] を選択します。
[タスク別] を選択します。
[モデル参照に使用されているコード生成識別子の書式をチェック] チェックを実行します。
推奨設定
アプリケーション | 設定 |
---|---|
デバッグ | 影響なし |
トレーサビリティ | 既定値を使用 |
効率性 | 影響なし |
安全対策 | 推奨なし |
プログラムでの使用
パラメーター: CustomSymbolStrType |
型: 文字ベクトル |
値: 有効なトークンの組み合わせ |
既定の設定: $N$R$M_T |
バージョン履歴
R2006b で導入