Каждое событие имеет связанный с ним набор информации, генерируемый панелью инструментов и хранящийся в структуре события. Эта информация включает тип события, время возникновения события и другую специфичную для события информацию. Во время работы объекта ввода видео панель инструментов записывает информацию о событии в объект EventLog собственность. Также можно получить доступ к структуре события, связанной с событием, в функции обратного вызова.
Этот раздел
Определяет информацию в структуре событий для всех типов событий
Описывает, как получить информацию из EventLog собственность
Сведения о доступе к информации о событиях в функции обратного вызова см. в разделе Создание и выполнение функций обратного вызова.
Структура события содержит два поля: Type и Data. Например, это структура события для события триггера:
Type: 'Trigger' Data: [1x1 struct]
Type - это символьный вектор, указывающий тип события. Для события триггера это поле содержит символьный вектор 'Trigger'.
Data - это структура, содержащая информацию о событии. Состав этой структуры варьируется в зависимости от того, какой тип происходящего события. Дополнительные сведения об информации, связанной с определенными событиями, см. в следующих разделах:
Для событий запуска, остановки, получения кадров и запуска Data структура содержит эти поля.
Имя поля | Описание |
|---|---|
| Абсолютное время возникновения события, возвращенного в MATLAB
®
|
| Номер кадра относительно момента запуска объекта |
| Номер кадра относительно выполнения триггера |
| Триггер, с которым связано событие. Например, при запуске связанный триггер равен 0. При остановке он эквивалентен |
Для событий ошибки, Data структура содержит эти поля.
Имя поля | Описание |
|---|---|
| Абсолютное время возникновения события, возвращенного в MATLAB
|
| Текстовое сообщение, связанное с ошибкой |
| Идентификатор сообщения MATLAB, связанный с ошибкой |
Для событий таймера, Data структура содержит эти поля.
Имя поля | Описание |
|---|---|
| Абсолютное время возникновения события, возвращенного в MATLAB
|
Во время работы объекта ввода видео панель инструментов сохраняет информацию о событии в объекте EventLog собственность. Значение этого свойства представляет собой массив структур событий. Каждая структура представляет одно событие. Дополнительные сведения о структуре события для каждого типа события см. в разделе Структуры события.
Панель инструментов добавляет структуры событий к EventLog массив в порядке, в котором происходят события. Первая структура события отражает первое записанное событие, вторая структура события отражает второе записанное событие и так далее.
Примечание
Только события запуска, остановки, ошибки и триггера записываются в EventLog собственность. Полученные кадры события и события таймера не включены в EventLog. Структуры событий для этих событий (и всех других событий) доступны для функций обратного вызова. Дополнительные сведения см. в разделе Создание и выполнение функций обратного вызова.
Чтобы проиллюстрировать журнал событий, этот пример создает объект ввода видео, запускает его, а затем проверяет объект EventLog свойство:
Создать объект получения изображения - в этом примере создается объект ввода видео для устройства получения изображения Matrox ®. Для запуска этого примера в системе используйте imaqhwinfo чтобы получить конструктор объекта для устройства получения изображения и заменить этот синтаксис следующим кодом.
vid = videoinput('matrox',1);Запуск объекта получения изображения - запуск объекта получения изображения. По умолчанию объект выполняет немедленный триггер, получает 10 кадров данных и затем останавливается.
start(vid)
Просмотр журнала событий - доступ к EventLog свойство объекта ввода видео. Выполнение объекта ввода видео породило три события: запуск, триггер и остановка. Таким образом, значение EventLog свойство представляет собой массив структур событий 1x3.
events = vid.EventLog
events =
1x3 struct array with fields:
Type
DataСписок событий, записанных в EventLog , проверьте содержимое Type поле.
{events.Type}
ans =
'Start' 'Trigger' 'Stop'Чтобы получить информацию о конкретном событии, перейдите к Data поле в этой структуре события. В примере извлекается информация о событии триггера.
trigdata = events(2).Data
trigdata =
AbsTime: [2004 12 29 16 40 52.5990]
FrameNumber: 0
RelativeFrame: 0
TriggerIndex: 1Очистить - всегда удалять объекты сбора изображений из памяти и переменные, которые ссылаются на них, когда они больше не нужны.
delete(vid) clear vid