コード生成の型エディターを使用した入力の型の作成と編集
C/C++ ソース コードには、すべての変数について型宣言が含まれています。MATLAB® コードには、明示的な型宣言はありません。C/C++ コードの生成で特定の型を使用するには、MATLAB のエントリポイント関数に対するすべての入力変数のプロパティ (クラス、サイズ、実数/複素数) を C/C++ コードまたは MEX コードの生成時に指定しなければなりません。"エントリポイント関数" は、コードを生成する最上位の MATLAB 関数です。コード ジェネレーターは、それらの入力プロパティを使用して、生成コードに含まれるすべての変数のプロパティを決定します。入力の型の指定が異なっていると、同じ MATLAB コードから異なるバージョンの生成コードが生成されることがあります。
C/C++ または MEX コードをコマンド ラインで生成する場合、入力引数のプロパティを指定する方法の 1 つとして、引数のクラス、サイズ、実数/複素数 (および場合によってはその他のプロパティ) に関する情報を含む coder.Type オブジェクトの使用が挙げられます。coder.Type オブジェクトは、コマンド ラインを使用してプログラムにより、あるいはコード生成の型エディターを使用して対話形式で作成および編集できます。
コマンド ラインによる coder.Type オブジェクトの作成の詳細については、coder.typeof および coder.newtype を参照してください。
メモ
構造体や cell 配列などの複合型、あるいは embedded.fi などのカスタマイズ可能なパラメーターが多数ある型を作成および編集するには、コード生成の型エディターを使用します。このような型の例については、このトピックで後述します。
コード生成の型エディターを開く
コード生成の型エディターを開くには、次のいずれかを行います。
coderTypeEditorコマンドを使用して、空の型エディターを開きます。coderTypeEditor
次のように入力して、ワークスペース変数
var1、var2およびvar3に対応するcoder.Typeオブジェクトが事前に設定された型エディターを開きます。coderTypeEditor var1 var2 var3
ベース MATLAB ワークスペースに既に存在する
coder.TypeオブジェクトmyTypeを開きます。ワークスペース内の
myTypeをダブルクリックします。コマンド ラインで
myTypeを表示し、表示の最後に示される Edit Type Object リンクをクリックします。MATLAB コマンド ラインで次のコマンドを使用します。
open myType
一般的なエディター アクション
型エディターのツールストリップ ボタンを使用して、次のアクションを実行できます。
[新しい型] をクリックし、
coder.Typeオブジェクトの型、サイズ、実数/複素数およびその他のプロパティを指定して、新しい型を作成する。[変数から] をクリックし、ベース ワークスペースに既に存在する変数を指定して、既存の変数を型に変換する。
[例から] をクリックし、
coder.Typeオブジェクトに変換する MATLAB コードを入力して、例の値から新しい型を作成する。[すべて読み込み] をクリックして、ベース ワークスペースのすべての
coder.Typeオブジェクトを型エディターの [型ブラウザー] ペインに読み込む。[型ブラウザー] で既存の型を選択し、そのプロパティを変更して、既存の型を編集する。
[すべて保存] をクリックして、型エディターですべての
coder.Typeオブジェクトを保存する。[削除] をクリックして、[型ブラウザー] から選択した型を削除する。あるいは、[削除] 、 [すべて削除] をクリックして、[型ブラウザー] からすべての型を削除する。
coder.Typeオブジェクトを [型ブラウザー] から削除しても、そのオブジェクトはベース MATLAB ワークスペースからは削除されません。[共有] 、 [MATLAB スクリプト] をクリックして、すべての型を再作成するためのコードを含む MATLAB スクリプトをエクスポートする。または、[共有] 、 [MAT ファイル] をクリックして、すべての型を含む MAT ファイルを作成する。
ボタンを使用して、型エディターで直前に行ったアクションを元に戻したりやり直したりする。
コード生成の型エディターで実行できるアクションには他にも次のようなものがあります。
[型ブラウザー] ペインと [型のプロパティ] ペインの両方で、type オブジェクトをコピーして、新しい型または既存の構造体型のフィールドとして貼り付ける。既存の型のプロパティを別の既存の型にコピーすることも可能。
構造体型のフィールドの順序を変更する。プロパティ ペインに型を表示してドラッグ アンド ドロップ アクションを使用する。
[型ブラウザー] ペイン
[型ブラウザー] ペインには、型エディターに現在読み込まれている coder.Type オブジェクトの名前、クラス、サイズが表示されます。構造体、cell 配列、クラスなどの複合型の場合は、[型ブラウザー] ペインで code.Type オブジェクトの表示を展開できます。展開ビューには、複合型の個々のフィールドまたはプロパティの名前、クラス、実数/複素数が表示されます。

[型ブラウザー] の視覚的なインジケーター
| インジケーター | 説明 |
|---|---|
| 展開アイコン | 型には、展開アイコンをクリックすることで表示できるフィールドやプロパティがあります。 |
{:} | 同種 cell 配列 (すべての要素のプロパティは同じになります)。 |
{n} | 異種混合 cell 配列の n 番目の要素。 |
:n | 上限が n の可変サイズの次元。 |
:inf | 制限なしの可変サイズの次元。 |
[型のプロパティ] ペイン
[型のプロパティ] ペインには、[型ブラウザー] で現在選択されている coder.Type オブジェクトのクラス (データ型)、サイズ、その他のプロパティが表示されます。構造体やクラスなどの複合型の場合、このペインには、各構成フィールドまたはプロパティの名前、クラス、サイズも表示されます。

所定のフィールドの名前、クラス、サイズを編集するには、その項目をダブルクリックします。

あるいは、フィールドをクリックします。型エディター ペインのビューが変化して、そのフィールドのプロパティが表示されます。ペインで名前、クラス (データ型)、サイズ、その他のプロパティを編集します。

階層リンクには、[型のプロパティ] ペインで現在開いているフィールドへの入れ子になったパスが表示されます。階層リンク内のフィールドをクリックすると、ペインにそのフィールドが表示されます。階層リンクで型の名前を直接編集することもできます。

[MATLAB コード] ペイン
[MATLAB コード] ペインには、[型ブラウザー] で現在選択されている coder.Type オブジェクトを作成する MATLAB スクリプトが表示されます。この型の作成を自動化するには、このスクリプトをコピーしてビルド スクリプトに含めます。

参考
coderTypeEditor | coder | coder.typeof | coder.newtype