Получение информации о событии

Введение

Каждое событие связывает с ним набор информации, сгенерированный тулбоксом и сохраненный в структуре события. Эта информация включает тип события, время наступления события и другую специфическую для события информацию. Во время работы объекта входа видео, тулбокс записывает информацию о событии в EventLog объекта свойство. Вы также можете получить доступ к структуре события, связанной с событием, в функции обратного вызова.

Этот раздел

Для получения информации о доступе к информации о событии в функции обратного вызова, смотрите Создание и Выполнение функций обратного вызова.

Структуры событий

Структура события содержит два поля: Type и Data. Для примера это структура события для события триггера:

Type: 'Trigger'
Data: [1x1 struct]

The Type поле является вектором символов, которая задает тип события. Для события триггера это поле содержит вектор символов 'Trigger'.

The Data поле является структурой, которая содержит информацию о событии. Состав этой структуры изменяется в зависимости от типа произошедшего события. Для получения дополнительной информации об информации, связанной с конкретными событиями, смотрите следующие разделы:

Поля данных для запуска, остановки, Системы координат получения и Инициирования событий

Для запуска, остановки, полученных систем координат и триггерных событий, Data структура содержит эти поля.

Имя поля

Описание

AbsTime

Абсолютное время наступления события, возвращаемое в MATLAB® clock формат

[year month day hour minute seconds]

FrameNumber

Номер системы координат относительно момента запуска объекта

RelativeFrame

Номер системы координат относительно выполнения триггера

TriggerIndex

Инициируйте событие, с которым связано событие. Для примера при запуске связанный триггер равен 0. После остановки это эквивалентно TriggersExecuted свойство.

Поля данных для событий ошибок

Для событий ошибки, Data структура содержит эти поля.

Имя поля

Описание

AbsTime

Абсолютное время наступления события, возвращаемое в MATLAB clock формат

[year month day hour minute seconds]

Message

Текстовое сообщение, сопоставленное с ошибкой

MessageID

Идентификатор сообщения MATLAB, сопоставленный с ошибкой

Поля данных для событий таймера

Для событий таймера, Data структура содержит эти поля.

Имя поля

Описание

AbsTime

Абсолютное время наступления события, возвращаемое в MATLAB clock формат

[year month day hour minute seconds]

Доступ к данным в журнале событий

Во время работы объекта входа видео, тулбокс хранит информацию о событии в EventLog объекта свойство. Значение этого свойства является массивом структур событий. Каждая структура представляет одно событие. Для получения подробной информации о составе структуры события для каждого типа события, смотрите Структуры события.

Тулбокс добавляет структуры событий в EventLog массив в том порядке, в котором происходят события. Первая структура события отражает первое записанное событие, вторая структура события отражает второе записанное событие и так далее.

Примечание

В EventLog записываются только события запуска, остановки, ошибки и триггера свойство. События, полученные из кадров, и события таймера не включены в EventLog. Структуры событий для этих событий (и всех других событий) доступны для функций обратного вызова. Для получения дополнительной информации смотрите Создание и Выполнение функций обратного вызова.

Чтобы проиллюстрировать журнал событий, этот пример создает объект входа видео, запускает его, а затем исследует EventLog объекта свойство:

  1. Создайте объект сбора изображений - Этот пример создает объект входа видео для Matrox® устройство для сбора изображений. Чтобы запустить этот пример в своей системе, используйте imaqhwinfo функция, чтобы получить конструктор объектов для устройства сбора изображений и заменить этот синтаксис следующим кодом.

    vid = videoinput('matrox',1);
  2. Запустите объект сбора изображений - Запустите объект сбора изображений. По умолчанию объект выполняет немедленный триггер, получает 10 системы координат данных, а затем останавливается.

    start(vid)
  3. Просмотр журнала событий - Доступ к 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
  4. Очистка - Всегда удаляйте объекты сбора изображений из памяти, и переменные, которые ссылаются на них, когда они вам больше не нужны.

    delete(vid)
    clear vid