Main Content

データ型置換のカスタマイズ

MATLAB® コードから C/C++ コードを生成する際、生成コードで組み込みの C データ型を使用するか MathWorks® の typedef を使用するかを [データ型置換] オプションで指定できます。コード生成では、doublesingleuint8uint16uint32uint64int8int16int32int64char、および logical の各データ型について、カスタム名への変更がサポートされます。

[データ型置換] オプションは、[コード生成] ウィンドウ ([詳細設定]) の [コード外観] タブにあります。次のオプションのいずれかを選択できます。

  • 生成されたコードで組み込みの C データ型を使用

  • 生成されたコードで MathWorks の typedef を使用

メモ

コード ジェネレーターは、生成されたコード内で可変サイズの文字配列を char* 型 string に置き換えません。

Embedded Coder® がインストールされている場合、生成される C/C++ コードで使用する MATLAB 組み込みデータ型のカスタム名を指定できます。たとえば、doubleCustom_Double にカスタマイズできます。

MATLAB Coder アプリを使用したカスタム データ型名の指定

MATLAB データ型のカスタム名を指定するには次のようにします。

  1. MATLAB Coder™ アプリを開きます。

  2. [コード生成] ステップに進みます。

  3. [詳細設定] をクリックします。

  4. [コード外観] タブで、[カスタム データ型の置換] にある [カスタム データ型の置換を有効化] を選択します。

  5. サポートされるデータ型の名前が表にリストされます。それらのデータ型のカスタム名を指定し、Enter キーを押します。生成コードの組み込みのデータ型名が指定したカスタム名に置き換わります。カスタム名を指定しない場合、コード ジェネレーターで既定の名前が使用されます。

コマンド ライン インターフェイスを使用したカスタム データ型名の指定

codegen を使用してコードを生成する場合は、Embedded Coder 構成オブジェクトで EnableCustomReplacementTypes プロパティと ReplacementTypes プロパティを使用します。

  1. コードを生成できる MATLAB 関数を記述します。この例では、入力の合計を返す関数 myAdd を使用します。

    function c = myAdd(a,b)
    c = a + b;
    end

  2. スタティック ライブラリ生成用のコード構成オブジェクトを作成します。

    cfg = coder.config('lib','ecoder',true);

  3. EnableCustomReplacementTypes プロパティを true に設定します。

    cfg.EnableCustomReplacementTypes = true;

  4. データ型のカスタム名を指定します。ここでは、組み込みのデータ型名 uint8Custom_Uint8 にカスタマイズします。

    cfg.ReplacementTypes.uint8 = "Custom_Uint8";

  5. codegen-config オプションを使用してコードを生成します。

    codegen myAdd.m -args {1,uint8(1)} -config cfg -report
    

参考

関数

オブジェクト

関連するトピック