hello all.
this is the struct of C++ from Microsoft documentation
typedef struct _SYSTEM_CPU_SET_INFORMATION {
DWORD Size;
CPU_SET_INFORMATION_TYPE Type;
union {
struct {
DWORD Id;
WORD Group;
BYTE LogicalProcessorIndex;
BYTE CoreIndex;
BYTE LastLevelCacheIndex;
BYTE NumaNodeIndex;
BYTE EfficiencyClass;
union {
BYTE AllFlags;
struct {
BYTE Parked : 1;
BYTE Allocated : 1;
BYTE AllocatedToTargetProcess : 1;
BYTE RealTime : 1;
BYTE ReservedFlags : 4;
} DUMMYSTRUCTNAME;
} DUMMYUNIONNAME2;
union {
DWORD Reserved;
BYTE SchedulingClass;
};
DWORD64 AllocationTag;
} CpuSet;
} DUMMYUNIONNAME;
} SYSTEM_CPU_SET_INFORMATIONthis is the struct of h2incx Transformation.
SYSTEM_CPU_SET_INFORMATION struct
Size_ DWORD ?
Type_ CPU_SET_INFORMATION_TYPE ?
union DUMMYUNIONNAME
struct CpuSet
Id DWORD ?
Group_ WORD ?
LogicalProcessorIndex BYTE ?
CoreIndex BYTE ?
LastLevelCacheIndex BYTE ?
NumaNodeIndex BYTE ?
EfficiencyClass BYTE ?
union DUMMYUNIONNAME2
AllFlags BYTE ?
struct DUMMYSTRUCTNAME
DUMMYSTRUCTNAME_R0 RECORD Parked:1,Allocated:1,AllocatedToTargetProcess:1,RealTime:1,ReservedFlags:4
DUMMYSTRUCTNAME_R0 <>
ends
ends
union
Reserved DWORD ?
SchedulingClass BYTE ?
ends
AllocationTag DWORD64 ?
ends
ends
SYSTEM_CPU_SET_INFORMATION endsI think it should be as following.
CPU_SET_INFORMATION_TYPE typedef DWORD
DUMMYSTRUCTNAME struct
Parked BYTE ?
Allocated BYTE ?
AllocatedToTargetProcess BYTE ?
RealTime BYTE ?
ReservedFlags BYTE ?
DUMMYSTRUCTNAME ends
CPUSET struct
Id DWORD ?
Group_ WORD ?
LogicalProcessorIndex BYTE ?
CoreIndex BYTE ?
LastLevelCacheIndex BYTE ?
NumaNodeIndex BYTE ?
EfficiencyClass BYTE ?
union
AllFlags BYTE ?
dummystructname_ DUMMYSTRUCTNAME<>
ends
union
Reserved DWORD ?
SchedulingClass BYTE ?
ends
AllocationTag DWORD64 ?
CPUSET ends
SYSTEM_CPU_SET_INFORMATION struct
_Size DWORD ?
_Type CPU_SET_INFORMATION_TYPE ?
union
CpuSet_ CPUSET<?>
ends
SYSTEM_CPU_SET_INFORMATION endsis it right?