Estrutura KSEVENT

A estrutura KSEVENT especifica um único evento de streaming de kernel em um conjunto de eventos de streaming de kernel.

As estruturas KSEVENT, KSMETHOD e KSPROPERTY são aliases para a estrutura KSIDENTIFIER . Dessa forma, suas definições são idênticas.

Sintaxe

struct KSEVENT {
  GUID Set;
  ULONG Id;
  ULONG Flags;
};

Membros

Set

Especifica um GUID que identifica um conjunto de eventos de streaming de kernel.

Para obter mais informações sobre GUIDs do conjunto de eventos, consulte a seção Comentários abaixo.

Id

Especifica o membro do conjunto de eventos.

Flags

Especifica o tipo de solicitação.

Esse sinalizador deve ser um dos valores listados na tabela a seguir.

Valor Descrição
KSEVENT_TYPE_ENABLE Habilita a notificação de evento para esse tipo de evento. O driver continua a notificação de eventos até que o cliente a desabilite explicitamente.
KSEVENT_TYPE_ONESHOT Habilita a notificação de evento somente para a próxima ocorrência desse evento. O cliente não precisa (e não deve) desabilitar o evento depois que ele ocorreu.
KSEVENT_TYPE_SETSUPPORT Consultas para a lista de conjuntos de eventos ou para dar suporte a um conjunto de eventos específico.
KSEVENT_TYPE_BASICSUPPORT Consultas para obter suporte a um tipo de evento específico.
KSEVENT_TYPE_ENABLEBUFFERED Em vez de notificar o cliente, o driver enfileira notificações de evento. Em seguida, o cliente emite uma segunda solicitação IOCTL_KS_ENABLE_EVENT com o KSEVENT_TYPE_QUERYBUFFER para receber as notificações de evento na fila.
KSEVENT_TYPE_TOPOLOGY Indica que o evento passado é do tipo KSE_NODE, em que NodeId indica a ID numérica do nó de topologia. Não defina esse sinalizador por conta própria; em vez disso, OU com outros sinalizadores desta lista.
KSEVENT_TYPE_QUERYBUFFER Recupera a próxima notificação de evento em buffer.

Comentários

A Microsoft fornece vários GUIDs de conjunto de eventos definidos pelo sistema. Os minidrivers especificam um desses GUIDs no membro Set . Os conjuntos de eventos de streaming de kernel normalmente começam com um prefixo KSEVENTSETID . Os conjuntos de eventos de streaming de kernel são definidos em ks.h, ksmedia.h, bdamedia.h e possivelmente em outros arquivos de cabeçalho.

Para obter mais informações sobre eventos de streaming de kernel, consulte Propriedades, eventos e métodos do KS.

Requisitos

Cabeçalho: ks.h (inclua Ks.h)

Confira também

KSE_NODE

KSIDENTIFIER

KSMETHOD

KSPROPERTY