コードの編成と形式のカスタマイズ
カスタム ファイル処理 (CFP) ツールで生成コードの編成と形式をカスタマイズできます。これらのツールでは次のことが可能です。
ソース (
.c
または.cpp
) ファイルまたはヘッダー (.h
) ファイルを生成する。モデルの [コード インターフェイスのパッケージ化] を[再利用可能な関数]
または[再利用できない関数]
([C++ クラス]
以外) に設定している場合、"カスタム ファイル処理テンプレート" を使用してコード ジェネレーターの次の処理を制御できます。標準の生成ファイル (
またはmodel
.c.cpp
と
) へのコードの出力model
.hモデル コードに依存しないファイルの生成
生成コードをセクション (インクルード、
typedef
、関数など) に編成する。CFP テンプレートでは、コード (関数など)、命令 (#define
ステートメントや#include
ステートメントなど)、またはコメントを各セクションに出力できます。生成コード ファイルの最初と最後にカスタムの "ファイル バナー" (コメント セクション)、生成コードの関数の前にカスタムの "関数バナー" を生成する。
やmodel
_initialize
などのモデル関数を呼び出すコードを生成する。model
_stepモデルの入力および出力の読み取りと書き込みを行うコードを生成する。
メイン プログラム モジュールを生成する。
モデルや生成ファイルに関する情報をモデルから取得する。
カスタム ファイル処理のコンポーネント
カスタム ファイル処理の機能は、相互に関連する次のコンポーネントに基づきます。
コード生成テンプレート (CGT) ファイル: CGT ファイルでは、生成コードの最上位の編成と形式を定義します。Code Generation Template (CGT) Filesを参照してください。
コード テンプレート API: 高水準の Target Language Compiler (TLC) API であり、生成されるソース ファイルとヘッダー ファイルの指定のセクションやサブセクションにコードを編成できる関数が用意されています。コード テンプレート API には、生成ファイルに関する情報を返したり、標準のモデル呼び出しを生成したり、他の関数を実行したりするユーティリティもあります。Code Template API Summaryを参照してください。
カスタム ファイル処理 (CFP) テンプレート: CFP テンプレートは、カスタム コード生成プロセスを管理する TLC ファイルです。CFP テンプレートでは、生成するコードをバッファー内に組み立てます。さらに、CFP テンプレートでは、生成されるソース ファイルとヘッダー ファイルの指定のセクションにバッファー コードを出力するコード テンプレート API も呼び出します。CFP テンプレートは CGT ファイルと連携し、生成コードの主要なセクションの順序を定義します。Custom File Processing (CFP) Templatesを参照してください。
CFP テンプレートを使用するには、TLC プログラミングの知識が必要です。詳細については、Target Language Compilerを参照してください。
カスタム ファイル処理の構成
生成コードをカスタマイズするには、[コード生成]、[テンプレート] ペインでコードとデータのテンプレートを指定します。
目的 | アクション |
---|---|
生成されるソース コード (.c または .cpp ) ファイルの最上位の編成と形式を定義するテンプレートを指定する | [ソース ファイル (*.c) テンプレート] パラメーターにコード生成テンプレート (CGT) ファイルを入力します。 |
生成されるヘッダー (.h ) ファイルの最上位の編成と形式を定義するテンプレートを指定する | [ヘッダー ファイル (*.h) テンプレート] パラメーターに CGT ファイルを入力します。このテンプレート ファイルは、[ソース ファイル テンプレート (*.c)] に指定するテンプレート ファイルと同じにすることもできます。同じテンプレート ファイルを使用すると、ソース ファイルとヘッダー ファイルに同一のバナーが含まれます。既定のテンプレートは です。 |
生成コードをセクション (インクルード、typedefs 、関数など) に編成するテンプレートを指定する | File customization templateパラメーターにカスタム ファイル処理 (CFP) テンプレート ファイルを入力します。CFP テンプレートでは、コード、命令、またはコメントを各セクションに出力できます。詳細については、Custom File Processing (CFP) Templatesを参照してください。 |
モデル固有のメイン プログラム モジュール例を生成する | [メイン プログラム例の生成] を選択します。詳細については、Generate Code for an Applicationを参照してください。 |
メモ
指定するテンプレート ファイルは MATLAB® パスに配置します。