IMXF::SetState-Methode (dmusicks.h)
Die SetState-Methode wird verwendet, um den Zustand der MIDI-Transformationsschnittstelle festzulegen.
Syntax
NTSTATUS SetState(
KSSTATE State
);
Parameter
State
Gibt den Zustand an, auf den das Filterdiagramm festgelegt werden soll. Dieser Parameter ist ein KSSTATE-Enumerationswert. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".
Rückgabewert
Diese Methode gibt NTSTATUS zurück, die STATUS_SUCCESS enthält, wenn der Aufruf erfolgreich war. Andernfalls gibt die Methode einen geeigneten Fehlercode zurück.
Bemerkungen
Für ein Audiofilterdiagramm werden die vier KSSTATE-Enumerationswerte wie folgt interpretiert:
Wert | Zustand |
---|---|
KSSTATE_RUN | Alles läuft und funktioniert normal. In diesem Zustand ist die IMXF-Schnittstelle aktiv und übergibt Nachrichten wie gewohnt. |
KSSTATE_ACQUIRE | Dies ist ein Übergangszustand, der hilft, den Übergang zwischen KSSTATE_RUN und KSSTATE_STOP zu verwalten. In diesem Zustand können Nachrichten nicht nachgelagert im Filterdiagramm übergeben werden. |
KSSTATE_PAUSE | Dies ist ein Übergangszustand, der hilft, den Übergang zwischen KSSTATE_RUN und KSSTATE_STOP zu verwalten. |
KSSTATE_STOP | Alles wird im aktuellen Filterdiagramm beendet. |
Das Verhalten des Miniporttreibers hängt vom Status des Filterdiagramms ab. Dieses Verhalten unterscheidet sich für das Rendern (Ausgabe) und die Erfassung (Eingabe).
Wenn der aktuelle Zustand auf der Ausgabeseite etwas anderes als KSSTATE_RUN ist, sollte die IMXF-Schnittstelle die Daten halten und nicht an die Hardware übergeben werden. Wenn der aktuelle Zustand KSTATE_STOP ist, sollte der Miniporttreiber alle Daten verwerfen, die er erhält, indem er diese Daten an den Allocator übergibt.
Wenn sich der Eingabedatenstrom auf der Eingabeseite entweder in KSSTATE_RUN oder KSSTATE_PAUSE befindet, ist es für den Miniporttreiber zulässig, Nachrichten vom Allocator abzurufen und sie vor der Aufnahmesenke zu senden. Wenn der Zustand KSSTATE_STOP oder KSSTATE_ACQUIRE ist und die Hardware versucht, Daten zu erzeugen, sollten diese Daten weggeworfen werden.
Anforderungen
Anforderung | Wert |
---|---|
Header- | dmusicks.h |
IRQL- | PASSIVE_LEVEL |