Указание информации об устройстве

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

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

В следующем примере описывается, как использовать эти элементы для создания Device узлы. Слова курсивом представляют заданный вами текст.

<ImageAcquisitionInfo>
	<Device device=devicename>
		<VideoFormat name=formatname>
		</VideoFormat>
		
		<Property constraint=constraint_value
				 deviceSpecific=true_or_false
				 name=property_name
				 readOnly=always_never_or_whileRunning
				 type=cell_double_int_or_string
				 min=minimum_value
				 max=maximum_value
				 optional=on_or_off
				 default=default_value>
		</Property>

		<TriggerInfo>
			<TriggerSource id=ID name=string>
				<TriggerCondition id=ID name=string/>
			</TriggerSource>
		</TriggerInfo
	</Device>
	.
	.
	.
</ImageAcquisitionInfo>

В следующей таблице приведены элементы, которые могут быть дочерними элементами узла Device в том порядке, в котором они должны быть заданы. Например, см. Пример: Узел устройства.

Элемент

Описание

Признаки

<VideoFormat>

Задает информацию о формате видео. Это необязательный элемент. A Device узел может содержать несколько VideoFormat узлы.

name=formatname, где formatname является вектором символов, идентифицирующим конкретное устройство

<Include>

Включите Section узел в другом узле. Это необязательный элемент. A Device узел может содержать несколько Include узлы.

tag=sectionname, где sectionname является вектором символов, идентифицирующим конкретный Section узел

<Section>

Группирует набор узлов в Section узел. Это необязательный элемент. A Device узел может содержать несколько Section узлы.

name=sectionname, где sectionname является именем, которое необходимо присвоить группе узлов

<Property>

Описание свойств устройства. Это необязательный элемент. A Device узел может содержать несколько Property узлы.

См. «Определение Свойства информации».

<Source>

Определяет источник видео- данных. Это необязательный элемент.

Смотрите Указание Источников Видео

<TriggerInfo>

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

Примечание: A Device узел может содержать только один TriggerInfo узел.

См. раздел «Определение информации о аппаратных триггерах».

Пример: Узел устройства

Следующий пример создает Device узел, содержащий свойство и триггерную информацию. Для получения дополнительной информации о Property элемент см. «Задание информации о свойствах». Для получения дополнительной информации о TriggerInfo элемент раздел «Определение информации о аппаратных триггерах».

<Device name="PCVision">
   <Property optional="on"
             constraint="enum"
             deviceSpecific="true"
             name="SyncSource"
             readOnly="whileRunning" 
             type="string">
      <EnumConstraintValue id="1" name="strippedSync" />
      <EnumConstraintValue id="2" name="separateSync" />
      <EnumConstraintValue id="3" name="compositeSync" />
      <EnumConstraintValue id="4" name="variableScan" />
   </Property>

   <Property optional="on"
             constraint="enum"
             deviceSpecific="true"
             name="FieldStart"
             readOnly="whileRunning" 
             type="string">
      <EnumConstraintValue id="0" name="evenField" />
      <EnumConstraintValue id="1" name="oddField" />
   </Property>

   <TriggerInfo>
      <TriggerSource id="1" name="extTrig">
         <TriggerCondition id="0" name="risingEdge"/>
         <TriggerCondition id="1" name="fallingEdge"/>
      </TriggerSource>
   </TriggerInfo>
</Device>