Поделиться через


структура KSAUTOMATION_TABLE (ks.h)

Структура KSAUTOMATION_TABLE определяет структуру, которая объединяет таблицы для свойств, методов и событий.

Синтаксис

typedef struct KSAUTOMATION_TABLE_ {
  ULONG                PropertySetsCount;
  ULONG                PropertyItemSize;
  const KSPROPERTY_SET *PropertySets;
  ULONG                MethodSetsCount;
  ULONG                MethodItemSize;
  const KSMETHOD_SET   *MethodSets;
  ULONG                EventSetsCount;
  ULONG                EventItemSize;
  const KSEVENT_SET    *EventSets;
  PVOID                Alignment;
} KSAUTOMATION_TABLE, *PKSAUTOMATION_TABLE;

Члены

PropertySetsCount

Этот элемент задает количество наборов свойств в этой таблице автоматизации.

PropertyItemSize

Этот элемент задает размер в байтах элементов свойств в этой таблице.

PropertySets

Указатель на массив объектов KSPROPERTY_SET (PropertySetsCount длиной), определяющий наборы свойств в этой таблице автоматизации. Каждый набор содержит определенное количество элементов размера PropertyItemSize.

MethodSetsCount

Этот элемент задает количество наборов методов в этой таблице автоматизации.

MethodItemSize

Этот элемент задает размер в байтах элементов метода в этой таблице.

MethodSets

Массив объектов KSMETHOD_SET (MethodSetsCount длиной), определяющий наборы методов в этой таблице автоматизации. Каждый набор имеет определенное количество элементов в нем размера MethodItemSize.

EventSetsCount

Этот элемент задает количество наборов событий в этой таблице автоматизации.

EventItemSize

Этот элемент задает размер в байтах элементов событий в этой таблице.

EventSets

Массив объектов KSEVENT_SET (EventSetsCount длиной), определяющих наборы событий в этой таблице автоматизации. Каждый набор имеет определенное количество элементов в нем размера EventItemSize.

Alignment

Зарезервировано для внутреннего использования AVStream. Мини-drivers не должны управлять этим элементом.

Замечания

Обратите внимание, что каждый объект (закрепление, фильтр, узел топологии) должен определять таблицу автоматизации. Мини-drivers могут использовать макросы, определенные в Ks.h для определения таблиц автоматизации и содержащихся в них массивов:

  • DEFINE_KSAUTOMATION_TABLE

  • DEFINE_KSAUTOMATION_PROPERTIES

  • DEFINE_KSAUTOMATION_METHODS

  • DEFINE_KSAUTOMATION_EVENTS

Чтобы указать таблицу автоматизации, содержащую пустой массив свойств, массив событий или массив методов:

  • DEFINE_KSAUTOMATION_PROPERTIES_NULL

  • DEFINE_KSAUTOMATION_METHODS_NULL

  • DEFINE_KSAUTOMATION_EVENTS_NULL

Например:

DEFINE_KSAUTOMATION_TABLE (MyAutomationTable) {
    DEFINE_KSAUTOMATION_PROPERTIES (MyPropertyTable),
    DEFINE_KSAUTOMATION_METHODS (MyMethodTable),
    DEFINE_KSAUTOMATION_EVENTS (MyEventTable)
    };

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Операционных системах Microsoft Windows XP и более поздних версиях, а также в Microsoft DirectX 8.0 и более поздних версиях.
заголовка ks.h (include Ks.h)

См. также

KSEVENT_ITEM

KSEVENT_SET

KSMETHOD_ITEM

KSMETHOD_SET

KSPROPERTY_ITEM

KSPROPERTY_SET