Partager via


PEP_REQUEST_COMPONENT_PERF_STATE structure (pep_x.h)

La structure PEP_REQUEST_COMPONENT_PERF_STATE contient une liste des modifications de l’état des performances (P-state) demandées par l’infrastructure de gestion de l’alimentation Windows (PoFx), ainsi que des informations status sur la gestion de ces demandes par le plug-in d’extension de plateforme (PEP).

Syntaxe

typedef struct _PEP_REQUEST_COMPONENT_PERF_STATE {
  [in]  PEPHANDLE                         DeviceHandle;
  [in]  ULONG                             Component;
  [out] BOOLEAN                           Completed;
  [out] BOOLEAN                           Succeeded;
  [in]  ULONG                             PerfRequestsCount;
  [in]  PPEP_COMPONENT_PERF_STATE_REQUEST PerfRequests;
} PEP_REQUEST_COMPONENT_PERF_STATE, *PPEP_REQUEST_COMPONENT_PERF_STATE;

Membres

[in] DeviceHandle

Valeur PEPHANDLE qui identifie l’appareil. Le pep a fourni ce handle en réponse à une notification PEP_DPM_REGISTER_DEVICE précédente.

[in] Component

Index qui identifie le composant. Ce membre est un index dans le tableau Components de la structure PEP_DEVICE_REGISTER_V2 que le PEP a précédemment fournie en réponse à la notification PEP_DPM_REGISTER_DEVICE pour cet appareil. Si le tableau Components contient N éléments, les index de composant vont de 0 à N–1.

[out] Completed

Indique si le peps a effectué les modifications d’état P demandées. Définissez sur TRUE pour indiquer que les modifications de l’état P se sont terminées de manière synchrone. Définissez sur FALSE pour indiquer que les modifications d’état P demandées sont en attente et seront effectuées de manière asynchrone par un thread de travail PEP. Pour plus d'informations, consultez la section Notes.

[out] Succeeded

Indique si la modification de l’état P demandée s’est terminée avec succès. Définissez sur TRUE si le peps a effectué toutes les modifications d’état P demandées dans le tableau PerfRequests . Définissez sur FALSE si le pep n’a pas pu effectuer toutes les modifications d’état P demandées, auquel cas les états P dans le matériel n’ont pas été modifiés. Le membre Succeeded est utilisé uniquement pour les modifications synchrones de l’état P. Si le pep définit Completed sur FALSE, PoFx ignore la valeur dans le membre Succeeded .

[in] PerfRequestsCount

Nombre de modifications d’état P demandées dans le tableau pointé par le membre PerfRequests .

[in] PerfRequests

Pointeur vers un tableau de structures PEP_COMPONENT_PERF_STATE_REQUEST . Chaque élément du tableau spécifie un nouveau niveau de performances à affecter à un jeu d’états P. Le nombre d’éléments de tableau est spécifié par le membre PerfRequestsCount .

Remarques

Cette structure est utilisée par la notification PEP_DPM_REQUEST_COMPONENT_PERF_STATE . Les membres DeviceHandle, Component, PerfRequestsCount et PerfRequests de la structure contiennent des valeurs d’entrée qui sont fournies par PoFx lors de l’envoi de cette notification. Les membres Completed et Succeeded contiennent des valeurs de sortie que le PEP écrit dans la structure en réponse à la notification.

Le pep peut effectuer les modifications d’état P demandées de manière synchrone ou asynchrone. Le pep peut définir le membre Completed sur TRUE pour indiquer que toutes les demandes de la notification PEP_DPM_REQUEST_COMPONENT_PERF_STATE ont été effectuées de manière synchrone, c’est-à-dire avant le retour de la routine de rappel AcceptDeviceNotification du PEP. Ou, le PEP peut définir Terminé sur FALSE pour indiquer que les demandes seront effectuées de manière asynchrone. Pour effectuer les demandes de manière asynchrone, le pep doit appeler la routine RequestWorker pour informer PoFx que le PEP a une demande de travail à envoyer, et PoFx répondra en envoyant une notification PEP_DPM_WORK au PEP.

PoFx écrit les modifications d’état P demandées dans le tableau PerfRequests avant l’envoi de la notification PEP_DPM_REQUEST_COMPONENT_PERF_STATE . Si le pep gère les modifications d’état P demandées de manière synchrone, le contenu du tableau PerfRequests reste valide uniquement jusqu’au retour de la routine de rappel AcceptDeviceNotification . Si les demandes sont effectuées de manière asynchrone, le contenu du tableau reste valide jusqu’à ce que le pep appelle la routine CompleteWork pour informer PoFx que le pep a terminé les demandes en attente.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge à partir de Windows 10.
En-tête pep_x.h (include Pep_x.h)

Voir aussi

AcceptDeviceNotification

PEP_COMPONENT_PERF_STATE_REQUEST

PEP_DEVICE_REGISTER_V2

PEP_DPM_REGISTER_DEVICE

PEP_DPM_REQUEST_COMPONENT_PERF_STATE

PEP_DPM_WORK

RequestWorker