Вы задаете, какие свойства вашего устройства получения изображений вы хотите отсоединить пользователям тулбокса. Вы делаете это определение путем чтения документации 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)
Аргумент | Тип данных | Описание |
---|---|---|
| Обработайте к | Задает устройство получения изображений |
| Символьный вектор | Задает формат видео или путь к файлу конфигурации устройства |
| Обработайте к | Обеспечивает функции членства раньше создавали свойства |
| Обработайте к | Задает источники видеосигнала, доступные с этим устройством, описанным в Идентификации Источников видеосигнала |
| Обработайте к | Задает аппаратные триггеры. Тулбокс обрабатывает другие два триггерных типа (мгновенный и ручной) автоматически. |
Алгоритм для getDeviceAttributes()
обычно включает эти шаги:
Определите устройство, пользователь хочет установить связь с, заданный ID устройства.
Определите формат, который пользователь хочет использовать с устройством, заданным именем формата (или путь файла камеры). Чтобы получить данные о формате, получите IDeviceFormat
объект сопоставлен с форматом от IDeviceInfo
объект.
Создайте любые специфичные для устройства свойства. Вы создаете объект свойства, соответствующий типу данных свойства, и храните объект свойства в специфичном для устройства контейнере свойства — смотрите Свойства устройства Создания.
Найдите все триггерные настройки поддерживаемыми устройством и храните информацию в ITriggerInfo
объект — видит Аппаратные Триггеры Поддержки.
Существует несколько способов, которыми ваш адаптер может определить это свойство, источник, и инициировать информацию:
Путем запроса SDK устройства во времени выполнения
Путем чтения информаций из файла устройств обработки изображений (IMDF). Если вы знаете информацию об устройстве заранее, можно сохранить ее в файле IMDF с помощью основанного на XML языка разметки. В этом разделе описывается считать информации из файла IMDF. Чтобы изучить, как создать файл IMDF, смотрите Используя Язык разметки IMDF.
Смесь обоих методов.