ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Simulink.VariableUsage クラス

パッケージ: Simulink

ワークスペース変数とそれを使用するブロックについての情報を取得

ヒント

Simulink.VariableUsage コンストラクターのみが Simulink.VariableUsage オブジェクトの任意のプロパティ値を設定できます。それ以外の場合はプロパティは読み取り専用になります。

説明

Simulink.VariableUsage オブジェクトを作成して、ワークスペース変数の属性を取得し、変数を使用するブロックを特定します。

関数 Simulink.findVars を使用して、モデルで使用される変数および列挙データ型 (オプション) を記述する Simulink.VariableUsage オブジェクトを作成することもできます。

構築

vars = Simulink.VariableUsage(VarNames,SourceName) は、変数 VarNames を記述する Simulink.VariableUsage オブジェクトの配列を作成します。このコンストラクターは、各オブジェクトの Name プロパティを VarNames で指定されたいずれかの変数名に設定し、すべてのオブジェクトの Source プロパティを SourceName で指定されたソースに設定します。

VarNames は読み込まれたモデルで使用されていない変数で指定できます。

入力引数

すべて展開する

ターゲットの変数の名前。文字列または文字列のセル配列として指定します。このコンストラクターは、それぞれの変数名に対応する Simulink.VariableUsage オブジェクトを作成します。

例: 'k'

例: {'k','asdf','fuelFlow'}

データ型: char | cell

ターゲットの変数を定義するソースの名前。文字列として指定します。たとえば MATLAB ベース ワークスペースやデータ ディクショナリをソースとして指定できます。このコンストラクターは、返されるそれぞれの Simulink.VariableUsage オブジェクトの SourceType プロパティも特定して設定します。

例: 'base workspace'

例: 'myModel'

例: 'myDictionary.sldd'

データ型: char

プロパティ

すべて展開する

オブジェクトで記述された変数または列挙データ型の名前。文字列として返されます。

記述された変数を定義しているワークスペースまたはデータ ディクショナリの名前。文字列として返されます。次の表にいくつか例を示します。

Source の値意味
'base workspace'MATLAB® ベース ワークスペース
'MyModel'モデル MyModel のモデル ワークスペース
'MyModel/Mask1'モデル MyModel のマスク ブロック Mask1 のマスク ワークスペース
'sldemo_fuelsys_dd_controller.sldd''sldemo_fuelsys_dd_controller.sldd' という名前のデータ ディクショナリ

次の表に、関数 Simulink.findVars で列挙データ型を検索して Simulink.VariableUsage オブジェクトを作成する場合の例をいくつか示します。

Source の値意味
'BasicColors.m'MATLAB ファイル 'BasicColors.m' で列挙型が定義されています。
''列挙型が動的に定義され、ソースはありません。
'sldemo_fuelsys_dd_controller.sldd''sldemo_fuelsys_dd_controller.sldd' という名前のデータ ディクショナリで列挙型が定義されています。

変数を定義しているワークスペースのタイプ。文字列として返されます。可能な値は次のとおりです。

  • 'base workspace'

  • 'model workspace'

  • 'mask workspace'

  • 'data dictionary'

関数 Simulink.findVars で列挙データ型を検索して Simulink.VariableUsage オブジェクトを作成する場合は次の値を指定できます。

  • 'MATLAB file'

  • 'dynamic class'

  • 'data dictionary'

変数を使用するモデル ブロックまたは列挙型を使用するモデル。文字列のセル配列として返されます。各文字列が変数を使用するブロックまたは列挙型を使用するモデルの名前に対応します。このフィールドは関数 Simulink.findVars から取り込まれます。

メソッド

intersectSimulink.VariableUsage オブジェクトの 2 つの配列の共通部分
setdiffSimulink.VariableUsage オブジェクトの 2 つの配列の差分を返す

ベース ワークスペース内の変数 'k'Simulink.VariableUsage オブジェクトを返します。

var = Simulink.VariableUsage('k','base workspace');

whos コマンドから返される変数の Simulink.VariableUsage オブジェクト (変数ごとに 1 つ) の配列を返します。

vars = Simulink.VariableUsage(whos,'base workspace')

モデル ワークスペース内のすべての変数を記述する Simulink.VariableUsage オブジェクトの配列を返します。

hws = get_param('mymodel','ModelWorkspace');
vars = Simulink.VariableUsage(hws.whos,'MyModel')

マスク ワークスペース内のすべての変数を記述する Simulink.VariableUsage オブジェクトの配列を返します。

maskVars = get_param('mymodel/maskblock','MaskWSVariables');
vars = Simulink.VariableUsage(maskVars,'mymodel/maskblock');
この情報は役に立ちましたか?