このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
コード構成の関数
LibAddSourceFileCustomSection
(file, builtInSection, newSection)
ソース ファイルにカスタム セクションを追加します。カスタム セクションはいずれかの組み込みセクションに関連付けなければなりません。Includes、Defines、Types、Enums、Definitions、Declarations、Functions、Documentation のいずれかです。セクションが既に存在する場合は何も起きませんが、組み込みセクションの関連付けに矛盾がある場合はエラーが報告されます。LibAddSourceFileCustomSection は Embedded Coder® 製品でのみ使用できます。
Arguments
file — ソース ファイルの参照
builtInSection — 関連付けられる組み込みセクションの名前
newSection — 新しい (カスタム) セクションの名前
codetemplatelib.tlc の LibAddSourceFileCustomSection を参照してください。
LibAddToCommonIncludes(incFileName)
#include /package の指定項目のリストに項目を追加します。リストのメンバーはそれぞれ一意です。重複するメンバーを追加しようとした場合は何も起こりません。
での model.h#include ステートメントの生成を指定するには、ブロックの TLC メソッドから LibAddToCommonIncludes を呼び出す必要があります。インクルード パスにあるファイルの名前は山かっこで囲んで指定します (例: <sysinclude.h>)。ローカル ファイルの名前は山かっこなしで指定します (例: myinclude.h)。LibAddToCommonIncludes の各呼び出しで、指定したファイルがまだ存在していなければリストに追加されます。山かっこで囲んだ名前と囲んでいないファイル名 (例: <math.h> と math.h) は別のものと見なされます。#include ステートメントは の内部に配置されます。model.h
例
LibAddToCommonIncludes("tpu332lib.h")cachelib.tlc の LibAddToCommonIncludes を参照してください。
LibAddToModelSources(newFile)
LibAddToModelSources は 2 つの目的に使用します。
指定したソース ファイルでビルドする必要があることをビルド プロセスに通知します。
生成コード内の
SOURCES: file1.c file2.c ...のコメントを更新します。
インライン化 S-Function については、一般に BlockTypeSetup から LibAddToModelSources が呼び出されます。LibAddToModelSources は、このモデルのビルドに使用するソースのリストにファイル名を追加します。LibAddToModelSources は、渡されたファイル名が重複している (つまりソースのリストに既に存在している) 場合は 1、重複していない場合は 0 を返します。
関数 LibAddToModelSources は、S-Function を記述することに加え、TLC で他の目的にも使用できます。独自の S-Function を記述する場合は、LibAddToModelSources の代わりに SFunctionModules ブロック パラメーターを使用します。utils_api.tlc の LibAddToModelSources を参照してください。
LibCacheDefine(buffer)
LibCacheDefine の各呼び出しで、既存のキャッシュ バッファーにバッファーが追加されます。ブロックについては、一般に BlockTypeSetup から LibCacheDefine が呼び出されます。
LibCacheDefine は、 または model_private.h に含めるために model.c#define ステートメントをキャッシュします。#define ステートメントをキャッシュするには、BlockTypeSetup の内部から LibCacheDefine を呼び出します。LibCacheDefine の各呼び出しで、既存のキャッシュ バッファーにバッファーが追加されます。#define ステートメントは または model_private.h の内部に配置されます。model.c
例
%openfile buffer #define INTERP(x,x1,x2,y1,y2) ( y1+((y2 - y1)/(x2 - x1))*(x-x1)) #define this that %closefile buffer %<LibCacheDefine(buffer)>
codecache_api.tlc の LibCacheDefine を参照してください。
LibCacheExtern(buffer)
extern ステートメントをキャッシュするには、BlockTypeSetup の内部から LibCacheExtern を呼び出す必要があります。LibCacheExtern の各呼び出しで、既存のキャッシュ バッファーにバッファーが追加されます。extern ステートメントは の内部に配置されます。model_private.h
例
%openfile buffer extern real_T mydata; %closefile buffer %<LibCacheExtern(buffer)>
codecache_api.tlc の LibCacheExtern を参照してください。
LibCacheFunctionPrototype(buffer)
関数プロトタイプをキャッシュするには、BlockTypeSetup の内部から LibCacheFunctionPrototype を呼び出す必要があります。LibCacheFunctionPrototype の各呼び出しで、既存のキャッシュ バッファーにバッファーが追加されます。プロトタイプは の内部に配置されます。model_private.h
例
%openfile buffer extern int_T fun1(real_T x); extern real_T fun2(real_T y, int_T i); %closefile buffer %<LibCacheFunctionPrototype(buffer)>
codecache_api.tlc の LibCacheFunctionPrototype を参照してください。
LibCacheTypedefs(buffer)
typedef 宣言をキャッシュするには、BlockTypeSetup の内部から LibCacheTypedefs を呼び出す必要があります。LibCacheTypedefs の各呼び出しで、既存のキャッシュ バッファーにバッファーが追加されます。typedef ステートメントは (または model.h) の内部に配置されます。model_common.h
例
%openfile buffer typedef foo bar; %closefile buffer %<LibCacheTypedefs(buffer)>
codecache_api.tlc の LibCacheTypedefs を参照してください。
LibCallModelInitialize()
モデルの初期化関数を呼び出すコードを返します (ERT でのみ有効)。
の codetemplatelib.tlcLibCallModelInitialize を参照してください。
LibCallModelStep(tid)
モデルのステップ関数を呼び出すコードを返します (ERT でのみ有効)。
codetemplatelib.tlc の LibCallModelStep を参照してください。
LibCallModelTerminate()
モデルの終了関数を呼び出すコードを返します (ERT でのみ有効)。
codetemplatelib.tlc の LibCallModelTerminate を参照してください。
LibCallSetEventForThisBaseStep(buffername)
モデルの設定イベント関数を呼び出すコードを返します (ERT でのみ有効)。
引数
buffername — イベントのバッファーに使用する変数の名前。これは、ert_main.c の例では eventFlags です。
codetemplatelib.tlc の LibCallSetEventForThisBaseStep を参照してください。
LibClearFileSectionContents(fileIdx, attrib)
ファイルをディスクに書き込む前に、カスタム値を含むファイルのセクションをクリアします。
Arguments
fileIdx (スコープまたは数値) — ファイルのインデックス
attrib (文字列) — モデルの属性の名前
codetemplatelib.tlc の LibGetSourceFileAttribute を参照してください。
LibCreateSourceFile(type, creator, name)
新しい C または C++ ファイルを作成し、その参照を返します。ファイルが既に存在する場合、LibCreateSourceFile は既存のファイルの参照を返します。
構文
%assign fileH = LibCreateSourceFile
("Source", "Custom", "foofile")Arguments
type (文字列) — 有効な値は、.c ファイルの場合は "Source"、.h ファイルの場合は "Header" です。
creator (文字列) — ファイルの作成者。別の作成者が同じファイルを作成しようとするとエラーが報告されます。
name (文字列) — ファイルのベース名 (つまり拡張子は除く)。ファイルが空の場合はディスクに書き込まれないことに注意してください。
戻り値
モデル ファイルの参照 (スコープ)。
codetemplatelib.tlc の LibCreateSourceFile を参照してください。
LibGetFileRecordName(file)
モデル ファイルのファイル拡張子を除く名前 (パスを含む) を返します。ファイル拡張子を含むファイル名 (パスを含む) を取得するには、LibGetSourceFileSection を使用します。
Arguments
file — ソース ファイルの参照
codetemplatelib.tlc の LibGetFileRecordName を参照してください。
LibGetMdlPrvHdrBaseName()
モデルのプライベート ヘッダー ファイル (例: ) のベース名を返します。model_private.h
codetemplatelib.tlc の LibGetMdlPrvHdrBaseName を参照してください。
LibGetMdlPubHdrBaseName()
モデルのパブリック ヘッダー ファイル (例: ) のベース名を返します。model.h
codetemplatelib.tlc の LibGetMdlPubHdrBaseName を参照してください。
LibGetMdlSrcBaseName()
モデルのメイン ソース ファイル (例: ) のベース名を返します。model.c
codetemplatelib.tlc の LibGetMdlSrcBaseName を参照してください。
LibGetMdlDataSrcBaseName()
モデルのデータ ファイル (例: ) のベース名を返します。model_data.c
codetemplatelib.tlc の LibGetMdlDataSrcBaseName を参照してください。
LibGetMdlTypesHdrBaseName()
モデルの型ファイル (例: ) のベース名を返します。model_types.h
codetemplatelib.tlc の LibGetMdlTypesHdrBaseName を参照してください。
LibGetMdlCapiHdrBaseName()
モデルの capi ヘッダー ファイル (例: ) のベース名を返します。model_capi.h
codetemplatelib.tlc の LibGetMdlCapiHdrBaseName を参照してください。
LibGetMdlCapiSrcBaseName()
モデルの capi ソース ファイル (例: ) のベース名を返します。model_capi.c
codetemplatelib.tlc の LibGetMdlCapiSrcBaseName を参照してください。
LibGetMdlCapiHostHdrBaseName()
モデルの capi ホスト ヘッダー ファイル (例: ) のベース名を返します。model_host_capi.h
codetemplatelib.tlc の LibGetMdlCapiHostHdrBaseName を参照してください。
LibGetMdlTestIfHdrBaseName()
モデルの testinterface ヘッダー ファイル (例: ) のベース名を返します。model_testinterface.h
codetemplatelib.tlc の LibGetMdlTestIfHdrBaseName を参照してください。
LibGetMdlTestIfSrcBaseName()
モデルの testinterface ソース ファイル (例: ) のベース名を返します。model_testinterface.c
codetemplatelib.tlc の LibGetMdlTestIfSrcBaseName を参照してください。
LibGetDataTypeTransHdrBaseName()
データ型変換ファイル (例: コード生成の Real-Time および Embedded-C コード形式用の ) のベース名を返します。model_dt.h
codetemplatelib.tlc の LibGetDataTypeTransHdrBaseName を参照してください。
LibGetModelDotCFile()
または model.c.cpp ソース ファイルの参照を返します。その後、LibSetSourceFileSection を使用して追加のコードをキャッシュできます。
構文
%assign srcFile = LibGetModelDotCFile() %<LibSetSourceFileSection(srcFile, "Functions", mybuf)>
戻り値
または model.c.cpp ソース ファイルの参照を返します。
codetemplatelib.tlc の LibGetModelDotCFile を参照してください。
LibGetModelDotHFile()
ソース ファイルの参照を返します。その後、model.hLibSetSourceFileSection を使用して追加のコードをキャッシュできます。
構文
%assign hdrFile = LibGetModelDotHFile() %<LibSetSourceFileSection(hdrFile, "Functions", mybuf)>
戻り値
ソース ファイルの参照を返します。model.h
codetemplatelib.tlc の LibGetModelDotHFile を参照してください。
LibGetModelName()
モデルの名前 (拡張子は除く) を返します。
codetemplatelib.tlc の LibGetModelName を参照してください。
LibGetNumSourceFiles()
作成されているソース ファイル (.c または .cpp と .h) の数を返します。
構文
%assign numFiles = LibGetNumSourceFiles()
戻り値
ファイルの数 (数値) を返します。
codetemplatelib.tlc の LibGetNumSourceFiles を参照してください。
LibGetRTModelErrorStatus()
モデルのエラー ステータスを取得するために必要なコードを返します。
構文
%<LibGetRTModelErrorStatus()>;
codetemplatelib.tlc の LibGetRTModelErrorStatus を参照してください。
LibGetSourceFileAttribute(fileIdx, attrib)
ファイルの指定された属性を返します。次の表に有効な属性を示します。
| 属性 | |||
|---|---|---|---|
| Name (ファイル拡張子を含む) | SystemsInFile | IsEmpty | SharedType |
| BaseName | RequiredIncludes | Indent | CodeTemplate |
| Type | UtilityIncludes | WrittenToDisk | OutputDirectory |
| Creator | Filter | Shared | Group |
Arguments
fileIdx (スコープまたは数値) — ファイルのインデックス
attrib (文字列) — モデルの属性の名前
codetemplatelib.tlc の LibGetSourceFileAttribute を参照してください。
LibGetSourceFileFromIdx(fileIdx)
モデル ファイルの参照をインデックスに基づいて返します。この参照は、すべてのファイルの先頭のファイル バナーを設定するなど、すべてのファイルに対する共通の操作を行う場合に役立ちます。
構文
%assign fileH = LibGetSourceFileFromIdx(fileIdx)
引数
fileIdx (数値) — モデル ファイルのインデックス
戻り値
モデル ファイルの参照 (スコープ)。
の codetemplatelib.tlcLibGetSourceFileFromIdx を参照してください。
LibGetSourceFileSection(fileIdx, section)
ファイルの内容を返します。有効なセクションの一覧については、LibSetSourceFileSection(fileH, section, value)を参照してください。
Arguments
fileIdx (スコープまたは数値) — ファイルのインデックス
section (文字列) — 目的のファイルのセクション
codetemplatelib.tlc の LibGetSourceFileSection を参照してください。
LibGetSourceFileTag(fileIdx)
ヘッダー ファイルの場合は 、ソース ファイルの場合は fileName_h を返します。ここで、fileName_c はモデル ファイルの名前です。fileName
構文
%assign tag = LibGetSourceFileTag(fileIdx)
引数
fileIndex (数値) — ファイルのインデックス
戻り値
タグ (文字列) を返します。
の codetemplatelib.tlcLibGetSourceFileTag を参照してください。
LibMdlRegCustomCode(buffer, location)
関数 の内部に宣言ステートメントと実行可能コードを配置します。model_initialize
Arguments
buffer — 内部のキャッシュ バッファーに追加するテキストを含む文字列バッファー。
location — バッファーの内容を配置する位置を指定する文字列。可能な値は以下のとおりです。
"header"— 関数の最上部にバッファーを配置"declaration"— 関数の最上部にバッファーを配置"execution"— 関数の最上部のヘッダーの後にバッファーを配置"trailer"— 関数の最下部にバッファーを配置
戻り値
なし
hookslib.tlc の LibMdlRegCustomCode を参照してください。
LibMdlStartCustomCode(buffer, location)
開始関数の内部に宣言ステートメントと実行可能コードを配置します。開始コードはモデルの初期化フェーズで 1 回実行されます。
構文
LibMdlStartCustomCode(buffer, location)
Arguments
buffer — 内部のキャッシュ バッファーに追加するテキストを含む文字列バッファー。
location — バッファーの内容を配置する位置を指定する文字列。可能な値は以下のとおりです。
"header"— 関数の最上部にバッファーを配置"declaration"— 関数の最上部にバッファーを配置"execution"— 関数の最上部のヘッダーの後にバッファーを配置"trailer"— 関数の最下部にバッファーを配置
戻り値
なし
説明
LibMdlStartCustomCode は、開始関数の内部に宣言ステートメントと実行可能コードを配置します。このコードは、TLC 変数 CodeFormat の現在の値に応じて次の関数に出力されます。
| 関数名 | TLC 変数 CodeFormat の値 |
|---|---|
|
|
|
|
|
|
|
|
LibMdlStartCustomCode の各呼び出しで、内部のキャッシュ バッファーにバッファーが追加されます。
hookslib.tlc の LibMdlStartCustomCode を参照してください。
LibMdlTerminateCustomCode(buffer, location)
目的
終了関数の内部に宣言ステートメントと実行可能コードを配置します。
構文
LibMdlTerminateCustomCode(buffer, location)
Arguments
buffer — 内部のキャッシュ バッファーに追加するテキストを含む文字列バッファー。
location — バッファーの内容を配置する位置を指定する文字列。可能な値は以下のとおりです。
"header"— 関数の最上部にバッファーを配置"declaration"— 関数の最上部にバッファーを配置"execution"— 関数の最上部のヘッダーの後にバッファーを配置"trailer"— 関数の最下部にバッファーを配置
戻り値
なし
説明
LibMdlTerminateCustomCode は、終了関数の内部に宣言ステートメントと実行可能コードを配置します。このコードは、TLC 変数 CodeFormat の現在の値に応じて次の関数に出力されます。
| 関数名 | TLC 変数 CodeFormat の値 |
|---|---|
|
|
|
|
|
|
LibMdlTerminateCustomCode の各呼び出しで、内部のキャッシュ バッファーにバッファーが追加されます。
メモ
カスタム ストレージ クラスの TLC コードの "case 'content' " セクションの外側で LibMdlTerminateCustomCode を使用しないでください。
hookslib.tlc の LibMdlTerminateCustomCode を参照してください。
LibNotifySymbolExportedFromFile
コード生成インフラストラクチャに、シンボルがファイルからエクスポートされることを通知します。
この関数は、変数、型、マクロ、関数の宣言などのカスタム ユーザー シンボルに推奨されます。関数はコード生成インフラストラクチャに、渡されたシンボルが自動生成ファイルで使用される場合に該当するヘッダーをインクルードするように通知します。
Arguments
symbol — マクロ、変数、型、または関数名。string として指定します。
fileNameWithExtension — ファイル名と言語拡張子。string として指定します。例: <modelName>.h。
例
%openfile myFcnDecl
extern real_T myCustomFcn(void);
%closefile myFcnDecl
%<LibCacheFunctionPrototype(myFcnDecl)>
%assign modelPrivateFile = "%<LibGetMdlPrvHdrBaseName()>.h
%<LibNotifySymbolExportedFromFile("myCustomFcn",modelPrivateFile)>
LibNotifySymbolUsedByFile
コード生成インフラストラクチャに、シンボルがファイルで使用されることを通知します。
この関数は、変数、型、マクロ、関数の宣言などのカスタム ユーザー シンボルに推奨されます。関数はコード生成インフラストラクチャに、関数に渡されたシンボルに関するヘッダーをインクルードするように通知します。
Arguments
symbol — マクロ、変数、型、または関数名。string として指定します。
fileNameWithExtension — ファイル名と言語拡張子。string として指定します。例: <modelName>.h。
例
%% The following line is expanded and placed in <model>.c
%<y> = myCustomFcn();
%assign modelSrcFile = LibGetModelDotCFile()
%<LibNotifySymbolUsedByFile("myCustomFcn",modelSrcFile)>LibSetRTModelErrorStatus(str)
モデルのエラー ステータスを設定するために必要なコードを返します。
構文
LibSetRTModelErrorStatus("\"Overrun\"")引数
str (文字列) — C の文字列に対する char *
の codetemplatelib.tlcLibSetRTModelErrorStatus を参照してください。
LibSetSourceFileCodeTemplate(opFile, name)
既定では、*.c ファイルと *.h ファイルは、[コンフィギュレーション パラメーター] ダイアログ ボックスの [コード生成]、[テンプレート] ペインで指定されたコード テンプレートを使用して生成されます。LibSetSourceFileCodeTemplate を使用して、ファイルのテンプレートを変更できます。
メモ
カスタム テンプレートは Embedded Coder 製品の機能です。
構文
%assign tag = LibSetSourceFileCodeTemplate(opFile,name)
Arguments
opFile (スコープ) — ファイルの参照
name (文字列) — 目的のテンプレートの名前
戻り値
なし
の codetemplatelib.tlcLibSetSourceFileCodeTemplate を参照してください。
LibSetSourceFileCustomSection(file, attrib, value)
前に LibAddSourceFileCustomSection で作成したカスタム セクションに内容を追加します。Embedded Coder ソフトウェアでのみ使用できます。
Arguments
file (スコープまたは数値) — ソース ファイルの参照またはインデックス
attrib (文字列) — カスタム セクションの名前
value (文字列) — セクションに追加する値
codetemplatelib.tlc の LibSetSourceFileCustomSection を参照してください。
LibSetSourceFileOutputDirectory(opFile, name)
既定では、*.c ファイルと *.h ファイルは、現在の場所のビルド フォルダーに生成されます。LibSetSourceFileOutputDirectory を使用して、指定したソース ファイルを生成するフォルダーを変更できます。呼び出し側で有効なフォルダーを指定する必要があることに注意してください。
構文
%assign tag = LibSetSourceFileOutputDirectory(opFile,dirName)
Arguments
opFile (スコープ) — ファイルの参照
dirName (文字列) — 目的の出力フォルダーの名前
戻り値
なし
codetemplatelib.tlc の LibSetSourceFileOutputDirectory を参照してください。
LibSetSourceFileSection(fileH, section, value)
指定したファイル内の指定したセクションに内容を追加します。有効なファイルのセクションは次のとおりです。
ファイルのセクション | 説明 |
|---|---|
| ファイルの最上部のファイル バナー (コメント) を設定します。 |
|
|
|
|
| 固有型の |
| プリミティブ型の |
| User Top セクションに追加します。 |
|
|
| 列挙型のセクションに追加します。 |
| データ定義のセクションに追加します。 |
| (予備) コード ジェネレーターの |
| (予備) コード ジェネレーターの |
| (予備) コード ジェネレーターの関数プロトタイプ。 |
| データ宣言のセクションに追加します。 |
| C 関数のセクションに追加します。 |
|
|
|
|
| ドキュメンテーション (コメント) のセクションに追加します。 |
| User Bottom セクションに追加します。 |
コード ジェネレーターでは、上記の順序でコードを並べ替えます。
構文
例 (ファイルを反復処理):
%openfile tmpBuf
whatever
%closefile tmpBuf
%foreach fileIdx = LibGetNumSourceFiles()
%assign fileH = LibGetSourceFileFromIdx(fileIdx)
%<LibSetSourceFileSection(fileH,"SectionOfInterest",tmpBuf)>
%endforeach
%assign fileH = LibCreateSourceFile("Header","Custom","foofile")
%<LibSetSourceFileSection(fileH,"Defines","#define FOO 5.0\n")>Arguments
fileH (スコープまたは数値) — ファイルの参照またはインデックス
section (文字列) — 目的のファイルのセクション
value (文字列) — 値
codetemplatelib.tlc の LibSetSourceFileSection を参照してください。
LibSystemDerivativeCustomCode
(system, buffer, location)
目的
サブシステムの導関数の内部に宣言ステートメントと実行可能コードを配置します。
構文
LibSystemDerivativeCustomCode(system, buffer, location)
Arguments
system — 導関数を変更するサブシステムの参照。
buffer — 内部のキャッシュ バッファーに追加するテキストを含む文字列バッファー。
location — バッファーの内容を配置する位置を指定する文字列。可能な値は以下のとおりです。
"header"— 関数の最上部にバッファーを配置"declaration"— 関数の最上部にバッファーを配置"execution"— 関数の最上部のヘッダーの後にバッファーを配置"trailer"— 関数の最下部にバッファーを配置
戻り値
なし
説明
LibSystemDerivativeCustomCode は、system で指定されたサブシステムの導関数の内部に宣言ステートメントと実行可能コードを配置します。このコードは、TLC 変数 CodeFormat の現在の値に応じて次の関数に出力されます。
| 関数名 | TLC 変数 CodeFormat の値 |
|---|---|
|
|
|
|
LibSystemDerivativeCustomCode は、TLC 変数 CodeFormat の値が Embedded-C の場合は意味をもちません。連続状態をもつブロックは使用できないためです。
LibSystemDerivativeCustomCode の各呼び出しで、内部のキャッシュ バッファーにバッファーが追加されます。連続状態がないサブシステムにコードを追加しようとするとエラーが生成されます。
hookslib.tlc の LibSystemDerivativeCustomCode を参照してください。
メモ
シミュレーションとコード生成の結果の間で不一致が生じる可能性を回避するために、グローバル Simulink データ (信号、状態、およびブロック パラメーター) の読み取りと書き込みには LibSystemDerivativeCustomCode を使用しないでください。代わりに、適切なモデル化パターン (たとえば、Data Store Read、Data Store Write、State Reader および State Writer ブロック) を使用します。
LibSystemDisableCustomCode
(system, buffer, location)
目的
サブシステムの無効化関数の内部に宣言ステートメントと実行可能コードを配置します。
構文
LibSystemDisableCustomCode(system, buffer, location)
Arguments
system — 無効化関数を変更するサブシステムの参照。
buffer — 内部のキャッシュ バッファーに追加するテキストを含む文字列バッファー。
location — バッファーの内容を配置する位置を指定する文字列。可能な値は以下のとおりです。
"header"— 関数の最上部にバッファーを配置"declaration"— 関数の最上部にバッファーを配置"execution"— 関数の最上部のヘッダーの後にバッファーを配置"trailer"— 関数の最下部にバッファーを配置
戻り値
なし
説明
LibSystemDisableCustomCode は、system で指定されたサブシステムの無効化関数の内部に宣言ステートメントと実行可能コードを配置します。LibSystemDisableCustomCode の各呼び出しで、内部のキャッシュ バッファーにバッファーが追加されます。
無効化関数がないサブシステムにコードを追加しようとするとエラーが生成されます。
hookslib.tlc の LibSystemDisableCustomCode を参照してください。
メモ
シミュレーションとコード生成の結果の間で不一致が生じる可能性を回避するために、グローバル Simulink データ (信号、状態、およびブロック パラメーター) の読み取りと書き込みには LibSystemDisableCustomCode を使用しないでください。代わりに、適切なモデル化パターン (たとえば、Data Store Read、Data Store Write、State Reader および State Writer ブロック) を使用します。
LibSystemEnableCustomCode
(system, buffer, location)
目的
サブシステムの有効化関数の内部に宣言ステートメントと実行可能コードを配置します。
構文
LibSystemEnableCustomCode(system, buffer, location)
Arguments
system — 有効化関数を変更するサブシステムの参照。
buffer — 内部のキャッシュ バッファーに追加するテキストを含む文字列バッファー。
location — バッファーの内容を配置する位置を指定する文字列。可能な値は以下のとおりです。
"header"— 関数の最上部にバッファーを配置"declaration"— 関数の最上部にバッファーを配置"execution"— 関数の最上部のヘッダーの後にバッファーを配置"trailer"— 関数の最下部にバッファーを配置
戻り値
なし
説明
LibSystemEnableCustomCode は、system で指定されたサブシステムの有効化関数の内部に宣言ステートメントと実行可能コードを配置します。LibSystemEnableCustomCode の各呼び出しで、内部のキャッシュ バッファーにバッファーが追加されます。
有効化関数がないサブシステムにコードを追加しようとするとエラーが生成されます。
hookslib.tlc の LibSystemEnableCustomCode を参照してください。
メモ
シミュレーションとコード生成の結果の間で不一致が生じる可能性を回避するために、グローバル Simulink データ (信号、状態、およびブロック パラメーター) の読み取りと書き込みには LibSystemEnableCustomCode を使用しないでください。代わりに、適切なモデル化パターン (たとえば、Data Store Read、Data Store Write、State Reader および State Writer ブロック) を使用します。
LibSystemInitializeCustomCode
(system, buffer, location)
目的
サブシステムの初期化関数の内部に宣言ステートメントと実行可能コードを配置します。
構文
LibSystemInitializeCustomCode(system, buffer, location)
Arguments
system — 初期化関数を変更するサブシステムの参照。
buffer — 内部のキャッシュ バッファーに追加するテキストを含む文字列バッファー。
location — バッファーの内容を配置する位置を指定する文字列。可能な値は以下のとおりです。
"header"— 関数の最上部にバッファーを配置"declaration"— 関数の最上部にバッファーを配置"execution"— 関数の最上部のヘッダーの後にバッファーを配置"trailer"— 関数の最下部にバッファーを配置
戻り値
なし
説明
LibSystemInitializeCustomCode は、system で指定されたサブシステムの初期化関数の内部に宣言ステートメントと実行可能コードを配置します。このコードは、TLC 変数 CodeFormat の現在の値に応じて次の関数に出力されます。
| 関数名 | TLC 変数 CodeFormat の値 |
|---|---|
|
|
|
|
|
|
サブシステムのコードは、サブシステムの初期化関数に出力されます。LibSystemInitializeCustomCode の各呼び出しで、内部のキャッシュ バッファーにバッファーが追加されます。
メモ
有効になったときにリセットするように構成されていない Enable システムは MdlStart にインライン化されます。この場合、サブシステムのカスタム コードは、Enable Subsystem の初期化コードの上下の MdlStart にあります。
hookslib.tlc の LibSystemInitializeCustomCode を参照してください。
メモ
シミュレーションとコード生成の結果の間で不一致が生じる可能性を回避するために、グローバル Simulink データ (信号、状態、およびブロック パラメーター) の読み取りと書き込みには LibSystemInitializeCustomCode を使用しないでください。代わりに、適切なモデル化パターン (たとえば、Data Store Read、Data Store Write、State Reader および State Writer ブロック) を使用します。
LibSystemOutputCustomCode
(system, buffer, location)
目的
サブシステムの出力関数の内部に宣言ステートメントと実行可能コードを配置します。
構文
LibSystemOutputCustomCode(system, buffer, location)
Arguments
system — 出力関数を変更するサブシステムの参照。
buffer — 内部のキャッシュ バッファーに追加するテキストを含む文字列バッファー。
location — バッファーの内容を配置する位置を指定する文字列。可能な値は以下のとおりです。
"header"— 関数の最上部にバッファーを配置"declaration"— 関数の最上部にバッファーを配置"execution"— 関数の最上部のヘッダーの後にバッファーを配置"trailer"— 関数の最下部にバッファーを配置
戻り値
なし
説明
LibSystemOutputCustomCode は、system で指定されたサブシステムの出力関数の内部に宣言ステートメントと実行可能コードを配置します。このコードは、TLC 変数 CodeFormat の現在の値に応じて次の関数に出力されます。
| 関数名 | TLC 変数 CodeFormat の値 |
|---|---|
|
|
|
|
|
|
|
|
LibSystemOutputCustomCode の各呼び出しで、内部のキャッシュ バッファーにバッファーが追加されます。
の hookslib.tlcLibSystemOutputCustomCode を参照してください。
メモ
シミュレーションとコード生成の結果の間で不一致が生じる可能性を回避するために、グローバル Simulink データ (信号、状態、およびブロック パラメーター) の読み取りと書き込みには LibSystemOutputCustomCode を使用しないでください。代わりに、適切なモデル化パターン (たとえば、Data Store Read、Data Store Write、State Reader および State Writer ブロック) を使用します。
LibSystemUpdateCustomCode
(system, buffer, location)
目的
サブシステムの更新関数の内部にコードを配置します。
構文
LibSystemUpdateCustomCode(system, buffer, location)
Arguments
system — 更新関数を変更するサブシステムの参照。
buffer — 内部のキャッシュ バッファーに追加するテキストを含む文字列バッファー。
location — バッファーの内容を配置する位置を指定する文字列。可能な値は以下のとおりです。
"header"— 関数の最上部にバッファーを配置"declaration"— 関数の最上部にバッファーを配置"execution"— 関数の最上部のヘッダーの後にバッファーを配置"trailer"— 関数の最下部にバッファーを配置
戻り値
なし
説明
LibSystemUpdateCustomCode は、system で指定されたサブシステムの更新関数の内部に宣言ステートメントと実行可能コードを配置します。このコードは、TLC 変数 CodeFormat の現在の値に応じて次の関数に出力されます。
| 関数名 | TLC 変数 CodeFormat の値 |
|---|---|
|
|
| Embedded-C ( |
|
|
| RealTime |
LibSystemUpdateCustomCode の各呼び出しで、内部のキャッシュ バッファーにバッファーが追加されます。
hookslib.tlc の LibSystemUpdateCustomCode を参照してください。
メモ
シミュレーションとコード生成の結果の間で不一致が生じる可能性を回避するために、グローバル Simulink データ (信号、状態、およびブロック パラメーター) の読み取りと書き込みには LibSystemUpdateCustomCode を使用しないでください。代わりに、適切なモデル化パターン (たとえば、Data Store Read、Data Store Write、State Reader および State Writer ブロック) を使用します。
LibWriteModelData()
モデルのデータを返します (ERT でのみ有効)。
codetemplatelib.tlc の LibWriteModelData を参照してください。
LibWriteModelInput(tid, rollThreshold)
指定されたルート入力 (つまりモデルの Inport ブロック) に書き込むコードを返します。この関数は ERT のみで有効であり、参照モデルに対しては有効ではありません。
Arguments
tid (数値) — タスク識別子 (0 が最も速いレートで n が最も遅い)
rollThreshold — for ループでラップする前の信号の幅。
codetemplatelib.tlc の LibWriteModelInput を参照してください。
LibWriteModelInputs()
すべてのルート入力 (つまりモデルの Inport ブロック) に書き込むコードを返します。この関数は ERT のみで有効であり、参照モデルに対しては有効ではありません。
codetemplatelib.tlc の LibWriteModelInputs を参照してください。
LibWriteModelOutput(tid, rollThreshold)
指定されたルート出力 (つまりモデルの Outport ブロック) に書き込むコードを返します。この関数は ERT のみで有効であり、参照モデルに対しては有効ではありません。
Arguments
tid (数値) — タスク識別子 (0 が最も速いレートで n が最も遅い)
rollThreshold — for ループでラップする前の信号の幅。
codetemplatelib.tlc の LibWriteModelOutput を参照してください。
LibWriteModelOutputs()
すべてのルート出力 (つまりモデルの Outport ブロック) に書き込むコードを返します。この関数は ERT のみで有効であり、参照モデルに対しては有効ではありません。
codetemplatelib.tlc の LibWriteModelOutputs を参照してください。