HW_EVENT_DESCRIPTOR structure (strmini.h)

When the class driver calls one of the minidriver's StrMiniEvent routines, it passes a pointer to an HW_EVENT_DESCRIPTOR structure to describe the event as enabled or disabled.

Syntax

typedef struct _HW_EVENT_DESCRIPTOR {
  BOOLEAN        Enable;
  PKSEVENT_ENTRY EventEntry;
  PKSEVENTDATA   EventData;
  union {
#if ...
    _HW_STREAM_OBJECT           *StreamObject;
#else
    struct _HW_STREAM_OBJECT    *StreamObject;
#endif
#if ...
    _HW_DEVICE_EXTENSION        *DeviceExtension;
#else
    struct _HW_DEVICE_EXTENSION *DeviceExtension;
#endif
  };
  ULONG          EnableEventSetIndex;
  PVOID          HwInstanceExtension;
#if ...
  ULONG          Reserved;
#else
  ULONG          Reserved[2];
#endif
} HW_EVENT_DESCRIPTOR, *PHW_EVENT_DESCRIPTOR;

Members

Enable

This is set to TRUE for an enabled event, and FALSE for a disabled event.

EventEntry

Points to the KSEVENT_ENTRY structure that describes this event.

EventData

Points to the KSEVENTDATA structure that describes this instance of the event.

StreamObject

Points to the HW_STREAM_OBJECT for the stream that owns the event that the class driver is enabling/disabling, or NULL if the event belongs to the driver as a whole.

DeviceExtension

Points to the minidriver's device extension.

EnableEventSetIndex

For stream events, this specifies the index of the event set within the StreamEventsArray member of the stream's HW_STREAM_INFORMATION structure.

For device events, this specifies the index of the event set within the DeviceEventsArray member of the minidriver's HW_STREAM_HEADER structure.

HwInstanceExtension

Pointer to the minidriver's instance extension. The minidriver may use this buffer to record private information global to this instance of the minidriver. The minidriver sets the size of this buffer in the HW_INITIALIZATION_DATA structure it passes when it registers itself via StreamClassRegisterMinidriver.

Reserved

Reserved for system use. Do not use.

Reserved[2]

Reserved for system use. Do not use.

Requirements

Requirement Value
Header strmini.h (include Strmini.h)