Main Content

setFunction

モデル関数のコード マッピング情報の設定

    説明

    setFunction(myCodeMappingObj,function,Name,Value) は、指定されたモデル関数のコード マッピング情報を設定します。この関数を使用して、モデル関数の関数カスタマイズ テンプレート、メモリ セクション、または関数名を設定します。シングルタスクの周期関数および Simulink® 関数については、この関数を使用して引数名、型修飾子、引数の順序などの引数仕様を設定できます。

    すべて折りたたむ

    モデル myConfigModel に対するモデル コード マッピングで、生成された C 初期化関数の名前を myInitFunction として設定します。

    cm = coder.mapping.api.get('myConfigModel');
    setFunction(cm,'Initialize','FunctionName','myInitFunction');
    

    モデル myInitFunction に対するモデル コード マッピングで、周期的なシングルタスク関数のメモリ セクションを None として設定します。

    cm = coder.mapping.api.get('myInitFunction');
    setFunction(cm,'Periodic','MemorySection','None');
    

    モデル myInitFunction に対するモデル コード マッピングで、サンプル時間 D2 の周期的なマルチタスク関数に対して関数カスタマイズ テンプレートを FastFcn として設定します。

    cm = coder.mapping.api.get('myInitFunction');
    setFunction(cm,'Periodic:D2','FunctionCustomizationTemplate','FastFcn');
    

    モデル myInitFunction に対するモデル コード マッピングで、Simulink 関数 mySLFunc の引数仕様を y=(u1, const *u2) として設定します。

    cm = coder.mapping.api.get('myInitFunction');
    setFunction(cm,'mySLFunc','Arguments','y=(u1, const *u2)');
    

    入力引数

    すべて折りたたむ

    関数 coder.mapping.api.get の呼び出しによって返されるコード マッピング オブジェクト (モデル コード マッピング)。

    例: myCM

    コード マッピング プロパティ値を返す対象となるモデル関数です。次の表に示されているいずれかの値を指定します。モデル コンフィギュレーション パラメーター [1 つの出力/更新関数] がオフの場合、分割更新関数、周期的なマルチタスク関数、または周期的なシングルタスク関数を指定できます。

    モデル関数のタイプ
    エクスポート関数ExportedFunction:slIdentifier。ここで、slIdentifier はモデル内の関数呼び出し Inport ブロックの名前です。
    初期化関数Initialize
    分割関数Partition:slIdentifier。ここで、slIdentifier はモデル内のブロックから明示的に作成され、Simulink スケジュール エディターに表示される分割 (P1 など)、または [同時実行] ダイアログのタスク名です。
    分割更新関数 PartitionUpdate:slIdentifier。これはモデル内のブロックから明示的に作成され、Simulink スケジュール エディターに表示される分割 (P1 など)、または [同時実行] ダイアログのタスク名です。
    周期的なマルチタスク関数Periodic:slIdentifier。ここで、slIdentifier はマルチタスク モデルの周期レートまたは連続レートに対するサンプル時間の周期に対応する注釈 (D1 など) です。
    周期的なマルチタスク更新関数PeriodicUpdate:slIdentifier。ここで、slIdentifier はマルチタスク モデルの周期レートまたは連続レートに対するサンプル時間の周期に対応する注釈 (D1 など) です。
    周期的なシングルタスク関数Periodic
    周期的なシングルタスク更新関数PeriodicUpdate
    リセット関数Reset:slIdentifier。ここで slIdentifier はモデル内のリセット関数の名前です。
    Simulink 関数SimulinkFunction:slIdentifier。ここで slIdentifier はモデル内の Simulink 関数の名前です。
    終了関数Terminate

    モデル分割の詳細については、分割の作成を参照してください。

    例: 'Periodic:D1'

    名前と値の引数

    例: 'FunctionCustomizationTemplate' 'exFastFunction'

    コンマ区切りされた Name,Value の引数ペアを指定します。ここで、Name は引数名、Value は対応する値です。Name は引用符で囲まなければなりません。Name1,Value1,…,NameN,ValueN のように、複数の名前と値のペアの引数を指定できます。名前と値のペアの引数の順序は重要ではありません。

    モデルに関連付けられた Embedded Coder ディクショナリで定義されている関数カスタマイズ テンプレートの名前。文字ベクトルまたは string スカラーとして指定します。関数のあるカテゴリの既定の関数カスタマイズ テンプレートを Default に設定した場合、そのカテゴリの関数のメモリ セクションを指定することができます。

    データ型: char | string

    モデルに関連付けられた Embedded Coder ディクショナリで定義されているメモリ セクションの名前。文字ベクトルまたは string スカラーとして指定します。

    データ型: char | string

    生成された C コードのエントリポイント関数の名前。文字ベクトルまたは string スカラーとして指定します。

    データ型: char | string

    生成された C コードのエントリポイント関数の引数仕様。文字ベクトルまたは string スカラーとして指定します。仕様は、引数名、型修飾子、および引数の順序を示す関数プロトタイプです (例: y=(u1, const *u2))。

    データ型: char | string

    バージョン履歴

    R2020b で導入