typedef struct _PPM_PERF_STATES { unsigned long Count; unsigned long MaxFrequency; unsigned long PStateCap; unsigned long TStateCap; unsigned long MaxPerfState; unsigned long MinPerfState; unsigned long LowestPState; unsigned long IncreaseTime; unsigned long DecreaseTime; unsigned char BusyAdjThreshold; unsigned char Reserved; unsigned char ThrottleStatesOnly; unsigned char PolicyType; unsigned long TimerInterval; union { unsigned long AsULONG; struct { unsigned long IncreasePolicy : 2; unsigned long DecreasePolicy : 2; unsigned long Reserved : 28; }; } Flags; KAFFINITY_EX TargetProcessors; long (*PStateHandler)(unsigned __int64, unsigned __int64, unsigned __int64); unsigned __int64 PStateContext; long (*TStateHandler)(unsigned __int64, unsigned __int64, unsigned __int64); unsigned __int64 TStateContext; unsigned char (*FeedbackHandler)(unsigned long *, unsigned __int64, unsigned char); void (*GetFFHThrottleState)(unsigned __int64 *); PPM_PERF_STATE State[1]; } PPM_PERF_STATES, *PPPM_PERF_STATES;