estructura PO_FX_DEVICE_V2 (wdm.h)
La estructura PO_FX_DEVICE describe los atributos de energía de un dispositivo en el marco de administración de energía (PoFx).
Sintaxis
typedef struct _PO_FX_DEVICE_V2 {
ULONG Version;
ULONGLONG Flags;
PPO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK ComponentActiveConditionCallback;
PPO_FX_COMPONENT_IDLE_CONDITION_CALLBACK ComponentIdleConditionCallback;
PPO_FX_COMPONENT_IDLE_STATE_CALLBACK ComponentIdleStateCallback;
PPO_FX_DEVICE_POWER_REQUIRED_CALLBACK DevicePowerRequiredCallback;
PPO_FX_DEVICE_POWER_NOT_REQUIRED_CALLBACK DevicePowerNotRequiredCallback;
PPO_FX_POWER_CONTROL_CALLBACK PowerControlCallback;
PVOID DeviceContext;
ULONG ComponentCount;
PO_FX_COMPONENT_V2 Components[ANYSIZE_ARRAY];
} PO_FX_DEVICE_V2, *PPO_FX_DEVICE_V2;
Miembros
Version
Número de versión de esta estructura. Si el controlador se registrará para admitir el estado de rendimiento con PoFx, establezca este miembro en PO_FX_VERSION_V2. De lo contrario, establezca este miembro en PO_FX_VERSION_V1.
Flags
Establezca en 0. Actualmente, no se definen marcas para este miembro.
ComponentActiveConditionCallback
Puntero a la rutina de devolución de llamada ComponentActiveConditionCallback que implementa el controlador de dispositivo.
ComponentIdleConditionCallback
Puntero al ComponentIdleConditionCallback rutina de devolución de llamada implementada por el controlador de dispositivo.
ComponentIdleStateCallback
Puntero a la ComponentIdleStateCallback rutina de devolución de llamada implementada por el controlador de dispositivo.
DevicePowerRequiredCallback
Puntero a la DevicePowerRequiredCallback rutina de devolución de llamada implementada por el controlador del dispositivo.
DevicePowerNotRequiredCallback
Puntero al DevicePowerNotRequiredCallback rutina de devolución de llamada implementada por el controlador de dispositivo.
PowerControlCallback
Puntero a la PowerControlCallback rutina de devolución de llamada implementada por el controlador de dispositivo.
DeviceContext
Puntero a un contexto de dispositivo asignado por el autor de la llamada. Este puntero se pasa como parámetro a cada función de devolución de llamada implementada por el controlador a la que apunta esta estructura. El controlador de dispositivo usa este contexto para almacenar información sobre el estado de energía actual del dispositivo. Este contexto es opaco para PoFx.
ComponentCount
Número de elementos de la matriz Componentes de. Además, este miembro especifica el número de componentes del dispositivo.
Components[ANYSIZE_ARRAY]
Este miembro es el primer elemento de una matriz de uno o varios elementos PO_FX_COMPONENT. Si la matriz contiene más de un elemento, los elementos adicionales siguen inmediatamente la estructura PO_FX_DEVICE. La matriz contiene un elemento para cada componente del dispositivo. El estado de potencia fx de cada componente se puede controlar independientemente de los estados de potencia fx de los demás componentes del dispositivo. La constante ANYSIZE_ARRAY se define como 1 en el archivo de encabezado Ntdef.h.
Observaciones
Para registrar un dispositivo con PoFx, un controlador llama al PoFxRegisterDevice rutina y proporciona, como parámetro, un puntero a una estructura de PO_FX_DEVICE que describe el dispositivo.
Cada elemento de Components matriz describe los atributos de estado de energía de un componente del dispositivo. Cada componente del dispositivo se identifica mediante su Componentes índice de matriz. Rutinas como poFxActivateComponent y PoFxCompleIdleCondition usar el índice de matriz de un componente para identificar el componente.
No se requiere un controlador de dispositivo para implementar las seis rutinas de devolución de llamada. El controlador puede establecer un puntero de función en la estructura PO_FX_DEVICE en NULL si el controlador no implementa la rutina de devolución de llamada correspondiente. Sin embargo, se deben implementar ciertas rutinas de devolución de llamada. En concreto, si uno o varios componentes de un dispositivo tienen más de un estado Fx, el controlador debe implementar ComponentIdleStateCallback, ComponentActiveConditionCallbacky ComponentIdleConditionCallback rutinas. De lo contrario, se produce un error en el registro del dispositivo y poFxRegisterDevice devuelve STATUS_INVALID_PARAMETER.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Se admite a partir de Windows 8. |
encabezado de | wdm.h (incluya Wudfwdm.h) |
Consulte también
ComponentActiveConditionCallback
ComponentIdleConditionCallback