// pep_x.h
typedef struct _PO_FX_CORE_DEVICE {
ULONG Version;
ULONG ComponentCount;
PPO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK ComponentActiveConditionCallback;
PPO_FX_COMPONENT_IDLE_CONDITION_CALLBACK ComponentIdleConditionCallback;
PPO_FX_COMPONENT_CRITICAL_TRANSITION_CALLBACK ComponentCriticalTransitionCallback;
PPO_FX_COMPONENT_IDLE_STATE_CALLBACK ComponentIdleStateCallback;
PVOID DeviceContext;
PO_FX_COMPONENT Components[ANYSIZE_ARRAY];
} PO_FX_CORE_DEVICE, *PPO_FX_CORE_DEVICE;
View the official Windows Driver Kit DDI reference// pepfx.h
typedef struct _PO_FX_CORE_DEVICE {
ULONG Version;
ULONG ComponentCount;
PPO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK ComponentActiveConditionCallback;
PPO_FX_COMPONENT_IDLE_CONDITION_CALLBACK ComponentIdleConditionCallback;
PPO_FX_COMPONENT_CRITICAL_TRANSITION_CALLBACK ComponentCriticalTransitionCallback;
PPO_FX_COMPONENT_IDLE_STATE_CALLBACK ComponentIdleStateCallback;
PVOID DeviceContext;
PO_FX_COMPONENT Components[ANYSIZE_ARRAY];
} PO_FX_CORE_DEVICE, *PPO_FX_CORE_DEVICE;
View the official Windows Driver Kit DDI referenceNo description available.
The PO_FX_CORE_DEVICE structure contains information about the power-state attributes of the components in a core system resource, and provides a software interface for power-managing these components.
VersionThe version number of this structure.
ComponentCountThe number of elements in the Components array at the end of this structure. This count includes all elements of the array, and includes both the first element, which is a member of this structure, and any additional elements that follow the end of this structure.
ComponentActiveConditionCallbackA pointer to a ComponentActiveConditionCallback callback routine. PoFx calls this routine to notify the driver that the specified component completed a transition from the idle condition to the active condition.
ComponentIdleConditionCallbackA pointer to a ComponentIdleConditionCallback callback routine. PoFx calls this routine to notify the driver that the specified component completed a transition from the active condition to the idle condition.
ComponentCriticalTransitionCallbackA pointer to a ComponentCriticalTransitionCallback callback routine. PoFx calls this routine to notify the driver that the specified component is about to make a transition between the idle condition and the active condition.
ComponentIdleStateCallbackA pointer to a ComponentIdleStateCallback callback routine. PoFx calls this routine to notify the driver of a pending change to the Fx power state of the specified component.
DeviceContextA pointer to a PEP-defined device context. PoFx supplies this pointer as the first parameter in calls to the ComponentActiveConditionCallback, ComponentIdleConditionCallback, ComponentCriticalTransitionCallback, and ComponentIdleStateCallback routines. This context is opaque to PoFx.
ComponentsThe first element in an array of PO_FX_COMPONENT structures. Each element in the array describes the power attributes of a component in the device. If the array contains more than one element, the additional elements immediately follow the end of the PO_FX_CORE_DEVICE structure. The number of elements in the array is specified in the ComponentCount member of the PO_FX_CORE_DEVICE structure.
This structure is used by the PoFxRegisterCoreDevice routine.
A core system resource is a hardware device, such as a timer or an interrupt controller, that is managed by the Windows hardware abstraction layer (HAL).
For more information about component transitions between the active condition and the idle condition, see Component-Level Power Management.
ComponentActiveConditionCallback
ComponentCriticalTransitionCallback
ComponentIdleConditionCallback
The PO_FX_CORE_DEVICE structure contains information about the power-state attributes of the components in a core system resource, and provides a software interface for power-managing these components.
VersionThe version number of this structure.
ComponentCountThe number of elements in the Components array at the end of this structure. This count includes all elements of the array, and includes both the first element, which is a member of this structure, and any additional elements that follow the end of this structure.
ComponentActiveConditionCallbackA pointer to a ComponentActiveConditionCallback callback routine. PoFx calls this routine to notify the driver that the specified component completed a transition from the idle condition to the active condition.
ComponentIdleConditionCallbackA pointer to a ComponentIdleConditionCallback callback routine. PoFx calls this routine to notify the driver that the specified component completed a transition from the active condition to the idle condition.
ComponentCriticalTransitionCallbackA pointer to a ComponentCriticalTransitionCallback callback routine. PoFx calls this routine to notify the driver that the specified component is about to make a transition between the idle condition and the active condition.
ComponentIdleStateCallbackA pointer to a ComponentIdleStateCallback callback routine. PoFx calls this routine to notify the driver of a pending change to the Fx power state of the specified component.
DeviceContextA pointer to a PEP-defined device context. PoFx supplies this pointer as the first parameter in calls to the ComponentActiveConditionCallback, ComponentIdleConditionCallback, ComponentCriticalTransitionCallback, and ComponentIdleStateCallback routines. This context is opaque to PoFx.
ComponentsThe first element in an array of PO_FX_COMPONENT structures. Each element in the array describes the power attributes of a component in the device. If the array contains more than one element, the additional elements immediately follow the end of the PO_FX_CORE_DEVICE structure. The number of elements in the array is specified in the ComponentCount member of the PO_FX_CORE_DEVICE structure.
This structure is used by the PoFxRegisterCoreDevice routine.
A core system resource is a hardware device, such as a timer or an interrupt controller, that is managed by the Windows hardware abstraction layer (HAL).
For more information about component transitions between the active condition and the idle condition, see Component-Level Power Management.
ComponentActiveConditionCallback
ComponentCriticalTransitionCallback
ComponentIdleConditionCallback