estructura de PEP_REQUEST_COMPONENT_PERF_STATE (pep_x.h)
La estructura de PEP_REQUEST_COMPONENT_PERF_STATE contiene una lista de cambios de estado de rendimiento (P-state) solicitados por el marco de administración de energía de Windows (PoFx), además de información de estado sobre el control de estas solicitudes por el complemento de extensión de plataforma (PEP).
Sintaxis
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;
Miembros
[in] DeviceHandle
Valor PEPHANDLE que identifica el dispositivo. El PEP proporcionó este identificador en respuesta a una notificación de PEP_DPM_REGISTER_DEVICE anterior.
[in] Component
Índice que identifica el componente. Este miembro es un índice en la matriz Components de la estructura PEP_DEVICE_REGISTER_V2 que el PEP proporcionó anteriormente en respuesta a la notificación de PEP_DPM_REGISTER_DEVICE para este dispositivo. Si la matriz Components contiene N elementos, los índices de componente oscilan entre 0 y N-1.
[out] Completed
Si el PEP ha completado los cambios de estado P solicitados. Establézcalo en TRUE para indicar que los cambios de estado P se completaron de forma sincrónica. Establézcalo en FALSE para indicar que los cambios de estado P solicitados están pendientes y se completarán de forma asincrónica mediante un subproceso de trabajo pep. Para obtener más información, vea la sección Comentarios.
[out] Succeeded
Si el estado P solicitado cambia correctamente. Se establece en TRUE si el PEP completó correctamente todos los cambios de estado P solicitados en la matriz PerfRequests . Se establece en FALSE si el PEP no pudo realizar todos los cambios de estado P solicitados, en cuyo caso los estados P del hardware no se modificaron. El miembro Succeeded solo se usa para los cambios de estado P sincrónicos . Si el PEP establece Completed en FALSE, PoFx omite el valor del miembro Succeeded .
[in] PerfRequestsCount
Número de cambios de estado P solicitados en la matriz a la que apunta el miembro PerfRequests .
[in] PerfRequests
Puntero a una matriz de estructuras de PEP_COMPONENT_PERF_STATE_REQUEST . Cada elemento de la matriz especifica un nuevo nivel de rendimiento que se asignará a un conjunto de estados P. El miembro PerfRequestsCount especifica el número de elementos de matriz.
Comentarios
La notificación PEP_DPM_REQUEST_COMPONENT_PERF_STATE usa esta estructura. Los miembros DeviceHandle, Component, PerfRequestsCount y PerfRequests de la estructura contienen valores de entrada proporcionados por PoFx cuando se envía esta notificación. Los miembros Completed y Succeeded contienen valores de salida que el PEP escribe en la estructura en respuesta a la notificación.
El PEP puede completar los cambios de estado P solicitados de forma sincrónica o asincrónica. El PEP puede establecer el miembro Completed en TRUE para indicar que todas las solicitudes de la notificación PEP_DPM_REQUEST_COMPONENT_PERF_STATE se han completado sincrónicamente, es decir, antes de la devolución de la rutina de devolución de llamada AcceptDeviceNotification del PEP. O bien, el PEP puede establecer Completado en FALSE para indicar que las solicitudes se completarán de forma asincrónica. Para completar las solicitudes de forma asincrónica, el PEP debe llamar a la rutina RequestWorker para informar a PoFx de que el PEP tiene una solicitud de trabajo que enviar y PoFx responderá enviando una notificación de PEP_DPM_WORK al PEP.
PoFx escribe los cambios de estado P solicitados en la matriz PerfRequests antes de enviar la notificación de PEP_DPM_REQUEST_COMPONENT_PERF_STATE . Si el PEP controla los cambios de estado P solicitados de forma sincrónica, el contenido de la matriz PerfRequests permanece válido solo hasta que el retorno de la rutina de devolución de llamada AcceptDeviceNotification . Si las solicitudes se completan de forma asincrónica, el contenido de la matriz permanece válido hasta que el PEP llama a la rutina CompleteWork para notificar a PoFx que el PEP ha completado las solicitudes pendientes.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Se admite a partir de Windows 10. |
Encabezado | pep_x.h (incluya Pep_x.h) |
Consulte también
PEP_COMPONENT_PERF_STATE_REQUEST