コード生成の型エディターを使用した入力の型の作成と編集
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