Определение специфичных для устройства свойств

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

  • Имя

  • Тип данных

  • Область значений допустимых (дополнительных) значений

Средства записи адаптера обычно ожидают, чтобы задать свойства, пока они не смогут получить данные из устройства. Чтобы видеть эффект некоторых свойств, необходимо смочь получить данные.

Пользовательский сценарий

Свойства, которые вы задаете для своего устройства, появляются пользователям как свойства объекта источника видеосигнала, сопоставленного с объектом ввода видео. Тулбокс задает свойства объекта ввода видео, которые представляют общие свойства, которые характерны для всех устройств получения изображений.

Чтобы просмотреть специфичные для устройства свойства, вы задаете, добираетесь, указатель на источник видеосигнала возражают и используют get функция. Чтобы установить значение специфичных для устройства свойств, вы задаете, добираетесь, указатель на источник видеосигнала возражают и используют set функция. Например, этот код создает объект ввода видео и использует getselectedsource функция, чтобы получить указатель на в настоящее время выбранный объект источника видеосигнала. С этим указателем можно затем использовать get команда, чтобы просмотреть свойства объекта источника видеосигнала.

vid = videoinput('winvideo',1)
src = getselectedsource(vid);
get(src)
General Settings:
    Parent = [1x1 videoinput]
    Selected = on
    SourceName = input1
    Tag = 
    Type = videosource

  Device Specific Properties:
    Brightness = -10
    Contrast = 266
    Exposure = 1024
    ExposureMode = auto
    Hue = 0
    Saturation = 340
    Sharpness = 40

Предложенный алгоритм

Когда пользователь вызывает videoinput функция, механизм вызывает getDeviceAttributes() функционируйте, чтобы настроить любые специфичные для устройства свойства, которые вы задали для устройства. Механизм передает несколько аргументов getDeviceAttributes() вашего адаптера функция:

void getDeviceAttributes(const imaqkit::IDeviceInfo* deviceInfo,  
                                         const char* acqFormat, 
                              imaqkit::IPropFactory* devicePropFact, 
                          imaqkit::IVideoSourceInfo* sourceContainer, 
                              imaqkit::ITriggerInfo* hwTriggerInfo)

Аргумент

Тип данных

Описание

deviceInfo

Обработайте к IDeviceInfo объект

Задает устройство получения изображений

acqformat

Символьный вектор

Задает формат видео или путь к файлу конфигурации устройства

devicePropFact

Обработайте к IPropFactory объект

Обеспечивает функции членства раньше создавали свойства

sourceContainer

Обработайте к IVideoSourceInfo объект

Задает источники видеосигнала, доступные с этим устройством, описанным в Идентификации Источников видеосигнала

hwTriggerInfo

Обработайте к ITriggerInfo объект

Задает аппаратные триггеры. Тулбокс обрабатывает другие два триггерных типа (мгновенный и ручной) автоматически.

Алгоритм для getDeviceAttributes() обычно включает эти шаги:

  1. Определите устройство, пользователь хочет установить связь с, заданный ID устройства.

  2. Определите формат, который пользователь хочет использовать с устройством, заданным именем формата (или путь файла камеры). Чтобы получить данные о формате, получите IDeviceFormat объект сопоставлен с форматом от IDeviceInfo объект.

  3. Создайте любые специфичные для устройства свойства. Вы создаете объект свойства, соответствующий типу данных свойства, и храните объект свойства в специфичном для устройства контейнере свойства — смотрите Свойства устройства Создания.

  4. Найдите все триггерные настройки поддерживаемыми устройством и храните информацию в ITriggerInfo объект — видит Аппаратные Триггеры Поддержки.

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

  • Путем запроса SDK устройства во времени выполнения

  • Путем чтения информаций из файла устройств обработки изображений (IMDF). Если вы знаете информацию об устройстве заранее, можно сохранить ее в файле IMDF с помощью основанного на XML языка разметки. В этом разделе описывается считать информации из файла IMDF. Чтобы изучить, как создать файл IMDF, смотрите Используя Язык разметки IMDF.

  • Смесь обоих методов.