Main Content

add_exec_event_listener

ブロック メソッド実行イベントに対するリスナーを登録

構文

h = add_exec_event_listener(blk,event,listener);

説明

h = add_exec_event_listener(blk,event,listener) は、ブロック メソッド実行イベントに対するリスナーを登録します。ここで、リスナーは、イベントが発生するときにブロックに対するランタイム データのログなど、何らかのタスクを実行する MATLAB® プログラムです (メソッド実行イベントのリスニングを参照してください)。Simulink® ソフトウェアは、モデルのシミュレーション中に指定したイベントが生じる場合は必ず登録したリスナーを呼び出します。バーチャル ブロックに対するリスナーの登録はできません。

メモ

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 より前に導入