IMiniportMidi::Init-Methode (portcls.h)
Die Init
-Methode initialisiert das MIDI-Miniportobjekt.
Syntax
NTSTATUS Init(
[in] PUNKNOWN UnknownAdapter,
[in] PRESOURCELIST ResourceList,
[in] PPORTMIDI Port,
[out] PSERVICEGROUP *ServiceGroup
);
Parameter
[in] UnknownAdapter
Zeiger auf die IUnknown-Schnittstelle des Adapterobjekts, dessen Miniportobjekt initialisiert wird. Dieser Parameter ist optional und kann als NULL angegeben werden. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".
[in] ResourceList
Zeiger auf die IResourceList-Schnittstelle des Ressourcenlistenobjekts, das während der Initialisierung an den Miniporttreiber bereitgestellt werden soll. Nachdem dieser Verweis auf den Miniporttreiber übergeben wurde, kann der Porttreiber den Inhalt der Ressourcenliste untersuchen, ändert jedoch nicht den Inhalt dieser Liste. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".
[in] Port
Zeiger auf das IPortMidi-Objekt , das an dieses Miniportobjekt gebunden ist. Der Aufrufer gibt einen gültigen Zeigerwert ohne NULL für diesen Parameter an.
[out] ServiceGroup
Ausgabezeiger für die Dienstgruppe. Dieser Parameter verweist auf eine vom Aufrufer zugewiesene Zeigervariable, in die die -Methode einen Zeiger auf die IServiceGroup-Schnittstelle des Dienstgruppenobjekts des Miniporttreibers schreibt. Dies ist die Dienstgruppe, die für Unterbrechungsbenachrichtigungen registriert wird. Der Aufrufer gibt einen gültigen Zeigerwert ohne NULL für diesen Parameter an.
Rückgabewert
Init
gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich war. Andernfalls gibt die Methode einen entsprechenden Fehlercode zurück.
Hinweise
Der UnknownAdapter-Parameter ist optional:
-
Wenn UnknownAdapter nicht NULL ist, fragt die
Init
Methode das UnknownAdapter-Objekt nach seiner IInterruptSync-Schnittstelle ab. -
Wenn UnknownAdapterNULL ist, ruft die
Init
-Methode PcNewInterruptSync auf, um ein neues IInterruptSync-Objekt zu erstellen. In diesem Fall stellt die Ressourcenliste, auf die ResourceList verweist, die Interruptressource bereit, die das neue IInterruptSync-Objekt verwendet.
Init
Methode und die RegisterServiceRoutine-Methode für das IInterruptSync-Objekt auf, um die Interruptdienstroutine (ISR) des Miniporttreibers zur Liste der Interruptsynchronisierungsroutinen hinzuzufügen. Wenn der Adaptertreiber das Portobjekt später freigibt, gibt der Porttreiber seinen Verweis auf das IInterruptSync-Objekt frei.
Die Parameter UnknownAdapter und ResourceList sind dieselben Zeigerwerte, die der Adaptertreiber zuvor als Parameter an die Init-Methode des IPortMidi-Objekts übergeben hat (siehe IPort::Init).
Die Parameter UnknownAdapter, ResourceList, Port und ServiceGroup folgen den Referenzzählungskonventionen für COM-Objekte.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
Header | portcls.h (include Portcls.h) |
IRQL | PASSIVE_LEVEL |