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

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

Примечание

Property узлы, являющиеся дочерними узлами корневого узла, влияют на все устройства, доступные через адаптер. Property узлы, являющиеся дочерними узлами Device или VideoFormat узел влияния только это устройство или видео формата.

Вы используете атрибуты Property элемент для задания характеристик свойства, таких как имя, тип и ограничения. Для получения дополнительной информации о Property атрибуты, см. «Определение атрибутов элемента свойств».

В следующем примере описывается, как использовать эти элементы для задания информации о свойствах. Пример показывает Property узел как дочерний узел корневого узла, но вы используете его так же, как дочерний узел Device или VideoFormat узел. Слова курсивом представляют заданный вами текст.

<ImageAcquisitionInfo>
	<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>
	.
	.
	.
</ImageAcquisitionInfo>

Задание атрибутов элемента свойства

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

Признак

Описание

Необходимый

constraint

Задает ограничения на свойство - см. «Задание значений для атрибута ограничения».

Необходимый

default

Значение по умолчанию для свойства.

Дополнительный

deviceSpecific

Логическое значение. True если свойство является специфичным для поставщика; в противном случае false.

Необходимый

min

Минимальное допустимое значение

Дополнительный

max

Максимально допустимое значение

Дополнительный

name

Имя свойства

Необходимый

optional

Если установлено значение offсвойство создается автоматически и добавляется к объекту при обработке файла IMDF. Если onадаптер должен явно создать свойство. Значение по умолчанию является off.

Дополнительный

readOnly

Статус свойства только для чтения: always, never, или whileRunning.

Необходимый

type

Тип данных свойства: cell, double, int или character vector.

Необходимый

Определение значений для атрибута ограничения

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

constraint=positive

В следующей таблице перечислены все возможные значения для constraint атрибут в алфавитном порядке.

Значение ограничения

Описание

bounded

Свойство имеет как минимальное, так и максимальное значение. Если вы задаете constraint атрибут к bounded, вы должны назначить значения min и max атрибуты.

enum

Свойство является перечисленным значением. Если установлено, Property узел должен содержать одну или несколько EnumConstraintValue узлы. См. раздел «Определение перечисленных значений».

inforpositive

Значение должно быть положительным или бесконечным

none

Никаких ограничений

positive

Значение должно быть положительным

zeroinforpositive

Значение должно быть больше нуля или бесконечным

zeroorpositive

Значение должно быть больше нуля

Определение перечисленных значений

Если ваше свойство использует перечисленные значения, необходимо задать значение constraint атрибут к enum, атрибут type для character vector, и создавать EnumConstraintValue элементы для каждого перечисления. The EnumConstraintValue узлы являются дочерними узлами Property узел.

При создании узлов EnumConstraintValue задаются два атрибута:

  • Идентификатор значения

  • Имя значения

Этот пример задает свойство StrobeEnable. Атрибут ограничения установлен в enum. Атрибут имени EnumConstraintValue узлы определяют возможные значения этого перечисления: on и off.

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