Condividi tramite


struttura PEP_REQUEST_COMPONENT_PERF_STATE (pepfx.h)

La struttura PEP_REQUEST_COMPONENT_PERF_STATE contiene un elenco di modifiche dello stato delle prestazioni (P-state) richieste dal framework di risparmio energia di Windows (PoFx), oltre a informazioni sullo stato sulla gestione di queste richieste dal plug-in dell'estensione della piattaforma (PEP).

Sintassi

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;

Membri

[in] DeviceHandle

Valore PEPHANDLE che identifica il dispositivo. Il PEP ha fornito questo handle in risposta a una notifica di PEP_DPM_REGISTER_DEVICE precedente.

[in] Component

Indice che identifica il componente. Questo membro è un indice nella matrice componenti nella struttura PEP_DEVICE_REGISTER_V2 fornita in precedenza da PEP in risposta alla notifica di PEP_DPM_REGISTER_DEVICE per questo dispositivo. Se la matrice Components contiene N elementi, gli indici dei componenti sono compresi tra 0 e N-1.

[out] Completed

Indica se il PEP ha completato le modifiche dello stato P richieste. Impostare su TRUE per indicare che lo stato P cambia in modo sincrono. Impostare su FALSE per indicare che le modifiche dello stato P richieste sono in sospeso e verranno completate in modo asincrono da un thread di lavoro PEP. Per altre informazioni, vedere Osservazioni.

[out] Succeeded

Indica se lo stato P richiesto è stato completato correttamente. Impostare su TRUE se il PEP ha completato correttamente tutte le modifiche dello stato P richieste nella matrice PerfRequests. Impostare su FALSE se il PEP non è riuscito a eseguire tutte le modifiche dello stato P richieste, nel qual caso gli stati P nell'hardware sono rimasti invariati. Il membro Succeeded viene usato solo per modifiche sincrone stato P. Se il PEP imposta Completed su FALSE, PoFx ignora il valore nel membro Succeeded.

[in] PerfRequestsCount

Numero di modifiche dello stato P richieste nella matrice a cui punta il membro PerfRequests.

[in] PerfRequests

Puntatore a una matrice di strutture PEP_COMPONENT_PERF_STATE_REQUEST. Ogni elemento nella matrice specifica un nuovo livello di prestazioni da assegnare a un set di stati P. Il numero di elementi della matrice viene specificato dal membro PerfRequestsCount.

Osservazioni

Questa struttura viene utilizzata dalla notifica di PEP_DPM_REQUEST_COMPONENT_PERF_STATE. Il DeviceHandle, Component, PerfRequestsCounte PerfRequests membri della struttura contengono valori di input forniti da PoFx quando questa notifica viene inviata. I membri Completed e Succeeded contengono valori di output scritti dal PEP nella struttura in risposta alla notifica.

Il PEP può completare le modifiche dello stato P richieste in modo sincrono o asincrono. Il PEP può impostare il membro Completato su TRUE per indicare che tutte le richieste nella notifica PEP_DPM_REQUEST_COMPONENT_PERF_STATE sono state completate in modo sincrono, ovvero prima del ritorno dalla routine di callback acceptDeviceNot ification di PEP. In alternativa, il PEP può impostare Completato su FALSE per indicare che le richieste verranno completate in modo asincrono. Per completare le richieste in modo asincrono, il PEP deve chiamare la routine RequestWorker per informare PoFx che il PEP ha una richiesta di lavoro da inviare e PoFx risponde inviando una notifica PEP_DPM_WORK al PEP.

PoFx scrive le modifiche dello stato P richieste nella matrice PerfRequests prima dell'invio della notifica di PEP_DPM_REQUEST_COMPONENT_PERF_STATE. Se il PEP gestisce le modifiche dello stato P richieste in modo sincrono, il contenuto della matrice di PerfRequests rimane valido solo fino alla restituzione dal AcceptDeviceNotification routine di callback. Se le richieste vengono completate in modo asincrono, il contenuto della matrice rimane valido fino a quando il PEP non chiama la [routine CompleteWork per notificare a PoFx che il PEP ha completato le richieste in sospeso.

Fabbisogno

Requisito Valore
client minimo supportato Supportato a partire da Windows 10.
intestazione pepfx.h (include Pep_x.h)

Vedere anche

AcceptDeviceNotification

PEP_COMPONENT_PERF_STATE_REQUEST

PEP_DEVICE_REGISTER_V2

PEP_DPM_REGISTER_DEVICE

PEP_DPM_REQUEST_COMPONENT_PERF_STATE

PEP_DPM_WORK

RequestWorker