IMiniportMidi ::Init, méthode (portcls.h)
La Init
méthode initialise l’objet miniport MIDI.
Syntaxe
NTSTATUS Init(
[in] PUNKNOWN UnknownAdapter,
[in] PRESOURCELIST ResourceList,
[in] PPORTMIDI Port,
[out] PSERVICEGROUP *ServiceGroup
);
Paramètres
[in] UnknownAdapter
Pointeur vers l’interface IUnknown de l’objet adaptateur dont l’objet miniport est en cours d’initialisation. Ce paramètre est facultatif et peut être spécifié comme NULL. Pour plus d'informations, consultez la section Notes qui suit.
[in] ResourceList
Pointeur vers l’interface IResourceList de l’objet de liste de ressources qui doit être fourni au pilote miniport lors de l’initialisation. Après avoir passé cette référence au pilote miniport, le pilote de port est libre d’examiner le contenu de la liste de ressources, mais ne modifie pas le contenu de cette liste. Pour plus d'informations, consultez la section Notes qui suit.
[in] Port
Pointeur vers l’objet IPortMidi lié à cet objet miniport. L’appelant spécifie une valeur de pointeur non NULL valide pour ce paramètre.
[out] ServiceGroup
Pointeur de sortie pour le groupe de services. Ce paramètre pointe vers une variable de pointeur allouée à l’appelant dans laquelle la méthode écrit un pointeur vers l’interface IServiceGroup de l’objet groupe de services du pilote miniport. Il s’agit du groupe de services inscrit pour la notification d’interruption. L’appelant spécifie une valeur de pointeur non NULL valide pour ce paramètre.
Valeur retournée
Init
retourne STATUS_SUCCESS si l’appel a réussi. Sinon, la méthode retourne un code d’erreur approprié.
Remarques
Le paramètre UnknownAdapter est facultatif :
-
Si UnknownAdapter n’a pas la valeur NULL, la
Init
méthode interroge l’objet UnknownAdapter pour son interface IInterruptSync . -
Si UnknownAdapter a la valeur NULL, la
Init
méthode appelle PcNewInterruptSync pour créer un objet IInterruptSync . Dans ce cas, la liste de ressources que ResourceList pointe vers fournit la ressource d’interruption que le nouvel objet IInterruptSync utilise.
Init
méthode et appelle la méthode RegisterServiceRoutine sur l’objet IInterruptSync afin d’ajouter la routine de service d’interruption du pilote miniport (ISR) à la liste des routines de synchronisation d’interruption. Lorsque le pilote d’adaptateur libère ultérieurement l’objet port, celui-ci libère sa référence à l’objet IInterruptSync .
Les paramètres UnknownAdapter et ResourceList sont les mêmes valeurs de pointeur que le pilote d’adaptateur passé précédemment en tant que paramètres à la méthode Init de l’objet IPortMidi (voir IPort ::Init).
Les paramètres UnknownAdapter, ResourceList, Port et ServiceGroup suivent les conventions de comptage des références pour les objets COM.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | portcls.h (include Portcls.h) |
IRQL | PASSIVE_LEVEL |