AcxEventCreate-Funktion (acxevents.h)
Die AcxEventCreate-Funktion erstellt ein ACX-Ereignis.
Syntax
NTSTATUS AcxEventCreate(
ACXOBJECT Object,
PWDF_OBJECT_ATTRIBUTES Attributes,
PACX_EVENT_CONFIG Config,
ACXEVENT *Event
);
Parameter
Object
Ein ACXOBJECT, das in Zusammenfassung von ACX-Objekten beschrieben wird.
Attributes
Zusätzliche Attribute, die mithilfe einer WDF_OBJECT_ATTRIBUTES definiert werden, die zum Festlegen der Werte des verschiedenen Objekts verwendet werden: Bereinigen und Zerstören von Rückrufen, Kontexttyp und angeben des übergeordneten Objekts.
Config
Eine ACX_EVENT_CONFIG-Struktur , die die ACX-Ereigniskonfiguration definiert.
Event
Das neu erstellte ACXEVENT-Objekt (beschrieben in Zusammenfassung der ACX-Objekte).
Rückgabewert
Gibt zurück STATUS_SUCCESS
, wenn der Aufruf erfolgreich war. Andernfalls wird ein entsprechender Fehlercode zurückgegeben. Weitere Informationen finden Sie unter Verwenden von NTSTATUS-Werten.
Hinweise
Ein ACXEVENT stellt eine asynchrone Benachrichtigung dar, die auf Treiberebene verfügbar ist. Ereignisse können ACXCIRCUITs, ACXSTREAMs, ACXELEMENTs und ACXPINs hinzugefügt werden. Intern werden sie als KS-Ereignisse auf oberen Ebenen verfügbar gemacht. Weitere Informationen zu KS-Ereignissen finden Sie unter KS-Ereignisse.
Beispiel
In diesem Beispiel wird gezeigt, wie ACX AcxEventCreate verwendet, um ein Audiobuchsenänderungsereignis zu erstellen.
NTSTATUS status = STATUS_SUCCESS;
PAGED_CODE();
ACX_EVENT_CALLBACKS eventCallbacks;
ACX_EVENT_CONFIG eventCfg;
AFX_PIN_EVENT_CONTEXT *eventCtx;
ACXEVENT jackEvent;
WDF_OBJECT_ATTRIBUTES attributes;
//
// Add jack info change event to this jack object
//
ACX_EVENT_CALLBACKS_INIT(&eventCallbacks);
eventCallbacks.EvtAcxEventEnable = &AfxPin::EvtJackEventEnableCallback;
eventCallbacks.EvtAcxEventDisable = &AfxPin::EvtJackEventDisableCallback;
ACX_EVENT_CONFIG_INIT(&eventCfg);
eventCfg.Set = &KSEVENTSETID_PinCapsChange;
eventCfg.Id = KSEVENT_PINCAPS_JACKINFOCHANGE;
eventCfg.Callbacks = &eventCallbacks;
WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&attributes, AFX_PIN_EVENT_CONTEXT);
attributes.ParentObject = GetObjectHandle();
status = AcxEventCreate(GetObjectHandle(), &attributes, &eventCfg, &jackEvent);
ACX-Anforderungen
AcX-Mindestversion: 1.0
Weitere Informationen zu ACX-Versionen finden Sie unter ACX-Versionsübersicht.
Anforderungen
Anforderung | Wert |
---|---|
Header | acxevents.h |
IRQL | PASSIVE_LEVEL |