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'')')或接受两个参量的 MATLAB 函数的句柄。第一个参量是触发了事件的模块的模块运行时对象。第二个参量是一个EventData类实例,指定运行时对象以及刚发生的事件的名称。
输出参量
add_exec_event_listener 返回它注册的侦听程序的句柄。要停止侦听事件,请使用 MATLAB clear 命令从注册侦听程序的工作区中清除侦听程序句柄。
版本历史记录
在 R2006a 之前推出