Compartilhar via


estrutura PEP_REQUEST_COMPONENT_PERF_STATE (pepfx.h)

A estrutura PEP_REQUEST_COMPONENT_PERF_STATE contém uma lista de alterações de estado de desempenho (estado P) solicitadas pela PoFx (estrutura de gerenciamento de energia) do Windows, além de informações de status sobre o tratamento dessas solicitações pelo PEP (plug-in de extensão de plataforma).

Sintaxe

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;

Membros

[in] DeviceHandle

Um valor PEPHANDLE que identifica o dispositivo. O PEP forneceu esse identificador em resposta a uma notificação de PEP_DPM_REGISTER_DEVICE anterior.

[in] Component

O índice que identifica o componente. Esse membro é um índice na matriz Components na estrutura PEP_DEVICE_REGISTER_V2 que o PEP forneceu anteriormente em resposta à notificação de PEP_DPM_REGISTER_DEVICE para este dispositivo. Se a matriz Componentes contiver N elementos, os índices de componentes variam de 0 a N-1.

[out] Completed

Se o PEP concluiu as alterações de estado P solicitadas. Defina como TRUE para indicar que as alterações de estado P foram concluídas de forma síncrona. Defina como FALSE para indicar que as alterações de estado P solicitadas estão pendentes e serão concluídas de forma assíncrona por um thread de trabalho PEP. Para obter mais informações, consulte Comentários.

[out] Succeeded

Se o estado P solicitado foi concluído com êxito. Defina como TRUE se o PEP tiver concluído com êxito todas as alterações de estado P solicitadas na matriz PerfRequests . Defina como FALSE se o PEP não puder executar todas as alterações de estado P solicitadas, nesse caso, os estados P no hardware permaneceram inalterados. O membro Êxito é usado apenas para alterações síncronas de estado P. Se o PEP definir Concluído como FALSE, PoFx ignorará o valor no membro Succeeded .

[in] PerfRequestsCount

O número de alterações de estado P solicitadas na matriz apontada pelo membro PerfRequests .

[in] PerfRequests

Um ponteiro para uma matriz de estruturas de PEP_COMPONENT_PERF_STATE_REQUEST . Cada elemento na matriz especifica um novo nível de desempenho a ser atribuído a um conjunto de estado P. O número de elementos de matriz é especificado pelo membro PerfRequestsCount .

Comentários

Essa estrutura é usada pela notificação de PEP_DPM_REQUEST_COMPONENT_PERF_STATE . Os membros DeviceHandle, Component, PerfRequestsCount e PerfRequests da estrutura contêm valores de entrada fornecidos pelo PoFx quando essa notificação é enviada. Os membros Completed e Succeeded contêm valores de saída que o PEP grava na estrutura em resposta à notificação.

O PEP pode concluir as alterações de estado P solicitadas de forma síncrona ou assíncrona. O PEP pode definir o membro Concluído como TRUE para indicar que todas as solicitações no PEP_DPM_REQUEST_COMPONENT_PERF_STATE notificação foram concluídas de forma síncrona, ou seja, antes do retorno da rotina de retorno de chamada AcceptDeviceNotification do PEP. Ou, o PEP pode definir Concluído como FALSE para indicar que as solicitações serão concluídas de forma assíncrona. Para concluir as solicitações de forma assíncrona, o PEP deve chamar a rotina RequestWorker para informar à PoFx que o PEP tem uma solicitação de trabalho a ser enviada e a PoFx responderá enviando uma notificação de PEP_DPM_WORK para o PEP.

O PoFx grava as alterações de estado P solicitadas na matriz PerfRequests antes que a notificação de PEP_DPM_REQUEST_COMPONENT_PERF_STATE seja enviada. Se o PEP manipular as alterações de estado P solicitadas de forma síncrona, o conteúdo da matriz PerfRequests permanecerá válido somente até o retorno da rotina de retorno de chamada AcceptDeviceNotification . Se as solicitações forem concluídas de forma assíncrona, o conteúdo da matriz permanecerá válido até que o PEP chame a [rotina CompleteWork para notificar o PoFx de que o PEP concluiu as solicitações pendentes.

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte começando com Windows 10.
Cabeçalho pepfx.h (inclua Pep_x.h)

Confira também

AcceptDeviceNotification

PEP_COMPONENT_PERF_STATE_REQUEST

PEP_DEVICE_REGISTER_V2

PEP_DPM_REGISTER_DEVICE

PEP_DPM_REQUEST_COMPONENT_PERF_STATE

PEP_DPM_WORK

RequestWorker