add_exec_event_listener
ブロック メソッド実行イベントに対するリスナーを登録
構文
h = add_exec_event_listener(blk
,event,listener);
説明
h = add_exec_event_listener(
は、ブロック メソッド実行イベントに対するリスナーを登録します。ここで、リスナーは、イベントが発生するときにブロックに対するランタイム データのログなど、何らかのタスクを実行する MATLAB® プログラムです (メソッド実行イベントのリスニングを参照してください)。Simulink® ソフトウェアは、モデルのシミュレーション中に指定したイベントが生じる場合は必ず登録したリスナーを呼び出します。バーチャル ブロックに対するリスナーの登録はできません。blk
,event
,listener
)
メモ
Simulink は、シミュレーションの実行中にのみ、リスナーを登録することができます。シミュレーションを実行していないときに、この関数を呼び出すと、エラー メッセージが表示されます。モデルのシミュレーションによりトリガーされるすべての関連イベントを、リスナーが確実にキャッチするためには、モデルのコールバック関数 StartFcn
にリスナーを登録しなければなりません (コールバックを使用したモデル動作のカスタマイズを参照してください)。
入力引数
blk
リスナーが取り扱おうとしているメソッド実行イベントをもつブロックを指定します。次のいずれかになります。
ブロックの絶対パス名
ブロック ハンドル
ブロック ランタイム オブジェクト (シミュレーション中のブロック データへのアクセスを参照)。
event
リスナーがリッスンするイベントのタイプを指定します。次のいずれかになります。
イベント
いつ発生するか
'PreDerivatives'
ブロックの Derivatives メソッド実行前
'PostDerivatives'
ブロックの Derivatives メソッド実行後
'PreOutputs'
ブロックの Outputs メソッドの実行前
'PostOutputs'
ブロックの Outputs メソッド実行後
'PreUpdate'
ブロックの Update メソッド実行前
'PostUpdate'
ブロックの Update メソッド実行後
listener
登録されるリスナーを指定します。これは、MATLAB の表現、たとえば
'disp(''here'')'
を指定する文字ベクトル、または、2 つの引数を受け取る MATLAB 関数に対するハンドルのいずれかになります。最初の引数は、イベントをトリガーするブロックの block ランタイム オブジェクトです。2 番目の引数は、ランタイム オブジェクトと発生したイベントの名前を指定するEventData
クラスのインスタンスです。
出力引数
add_exec_event_listener
は、登録していたリスナーのハンドルを返します。イベントのリスニングを停止するためには、MATLAB の clear
コマンドを使用して、リスナーが登録されたワークスペースからリスナー ハンドルをクリアしてください。
バージョン履歴
R2006a より前に導入