File size: 2,378 Bytes
c19ca42
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
import ctypes as C


class _ADLPMActivity(C.Structure):
    __slot__ = [
        'iActivityPercent',
        'iCurrentBusLanes',
        'iCurrentBusSpeed',
        'iCurrentPerformanceLevel',
        'iEngineClock',
        'iMaximumBusLanes',
        'iMemoryClock',
        'iReserved',
        'iSize',
        'iVddc',
    ]
_ADLPMActivity._fields_ = [ # pylint: disable=protected-access
    ('iActivityPercent', C.c_int),
    ('iCurrentBusLanes', C.c_int),
    ('iCurrentBusSpeed', C.c_int),
    ('iCurrentPerformanceLevel', C.c_int),
    ('iEngineClock', C.c_int),
    ('iMaximumBusLanes', C.c_int),
    ('iMemoryClock', C.c_int),
    ('iReserved', C.c_int),
    ('iSize', C.c_int),
    ('iVddc', C.c_int),
]
ADLPMActivity = _ADLPMActivity


class _ADLMemoryInfo2(C.Structure):
    __slot__ = [
        'iHyperMemorySize',
        'iInvisibleMemorySize',
        'iMemoryBandwidth',
        'iMemorySize',
        'iVisibleMemorySize',
        'strMemoryType'
    ]
_ADLMemoryInfo2._fields_ = [ # pylint: disable=protected-access
    ('iHyperMemorySize', C.c_longlong),
    ('iInvisibleMemorySize', C.c_longlong),
    ('iMemoryBandwidth', C.c_longlong),
    ('iMemorySize', C.c_longlong),
    ('iVisibleMemorySize', C.c_longlong),
    ('strMemoryType', C.c_char * 256)
]
ADLMemoryInfo2 = _ADLMemoryInfo2


class _AdapterInfo(C.Structure):
    __slot__ = [
        'iSize',
        'iAdapterIndex',
        'strUDID',
        'iBusNumber',
        'iDeviceNumber',
        'iFunctionNumber',
        'iVendorID',
        'strAdapterName',
        'strDisplayName',
        'iPresent',
        'iExist',
        'strDriverPath',
        'strDriverPathExt',
        'strPNPString',
        'iOSDisplayIndex',
    ]
_AdapterInfo._fields_ = [ # pylint: disable=protected-access
    ('iSize', C.c_int),
    ('iAdapterIndex', C.c_int),
    ('strUDID', C.c_char * 256),
    ('iBusNumber', C.c_int),
    ('iDeviceNumber', C.c_int),
    ('iFunctionNumber', C.c_int),
    ('iVendorID', C.c_int),
    ('strAdapterName', C.c_char * 256),
    ('strDisplayName', C.c_char * 256),
    ('iPresent', C.c_int),
    ('iExist', C.c_int),
    ('strDriverPath', C.c_char * 256),
    ('strDriverPathExt', C.c_char * 256),
    ('strPNPString', C.c_char * 256),
    ('iOSDisplayIndex', C.c_int)
]
AdapterInfo = _AdapterInfo
LPAdapterInfo = C.POINTER(_AdapterInfo)

ADL_CONTEXT_HANDLE = C.c_void_p