Freigeben über


KSAUTOMATION_TABLE-Struktur (ks.h)

Die KSAUTOMATION_TABLE-Struktur definiert eine Struktur, die Tabellen für Eigenschaften, Methoden und Ereignisse kombiniert.

Syntax

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;

Member

PropertySetsCount

Dieser Member gibt die Anzahl der Eigenschaftensätze in dieser Automatisierungstabelle an.

PropertyItemSize

Dieser Member gibt die Größe der Eigenschaftselemente in dieser Tabelle in Byte an.

PropertySets

Ein Zeiger auf ein Array von KSPROPERTY_SET-Objekten (PropertySetsCount in length), die die Eigenschaftensätze in dieser Automatisierungstabelle definieren. Jeder Satz enthält eine bestimmte Anzahl von Elementen der Größe PropertyItemSize.

MethodSetsCount

Dieser Member gibt die Anzahl der Methodensätze in dieser Automatisierungstabelle an.

MethodItemSize

Dieser Member gibt die Größe der Methodenelemente in dieser Tabelle in Byte an.

MethodSets

Ein Array von KSMETHOD_SET -Objekten (MethodSetsCount in length), die die Methodensätze in dieser Automatisierungstabelle definieren. Jeder Satz enthält eine bestimmte Anzahl von Elementen der Größe MethodItemSize.

EventSetsCount

Dieser Member gibt die Anzahl der Ereignissätze in dieser Automatisierungstabelle an.

EventItemSize

Dieser Member gibt die Größe der Ereigniselemente in dieser Tabelle in Byte an.

EventSets

Ein Array von KSEVENT_SET -Objekten (EventSetsCount in der Länge), die die Ereignissätze in dieser Automatisierungstabelle definieren. Jeder Satz enthält eine bestimmte Anzahl von Elementen der Größe EventItemSize.

Alignment

Reserviert für die interne Verwendung durch AVStream. Minidriver sollten diesen Member nicht bearbeiten.

Hinweise

Beachten Sie, dass jedes Objekt (Pin, Filter, Topologieknoten) eine Automatisierungstabelle definieren sollte. Minidriver können in Ks.h definierte Makros verwenden, um Automatisierungstabellen und die darin enthaltenen Arrays zu definieren:

  • DEFINE_KSAUTOMATION_TABLE

  • DEFINE_KSAUTOMATION_PROPERTIES

  • DEFINE_KSAUTOMATION_METHODS

  • DEFINE_KSAUTOMATION_EVENTS

So geben Sie eine Automatisierungstabelle an, die ein leeres Eigenschaftenarray, Ereignisarray oder Methodenarray enthält:

  • DEFINE_KSAUTOMATION_PROPERTIES_NULL

  • DEFINE_KSAUTOMATION_METHODS_NULL

  • DEFINE_KSAUTOMATION_EVENTS_NULL

Beispiel:

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

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Microsoft Windows XP und höheren Betriebssystemen sowie in Microsoft DirectX 8.0 und höheren Versionen.
Kopfzeile ks.h (ks.h einschließen)

Weitere Informationen

KSEVENT_ITEM

KSEVENT_SET

KSMETHOD_ITEM

KSMETHOD_SET

KSPROPERTY_ITEM

KSPROPERTY_SET