1 /*
2  * Copyright (C) 2021 Intel Corporation
3  *
4  * SPDX-License-Identifier: MIT
5  *
6  */
7 
8 // This is a generated file - please don't modify directly
9 #pragma once
10 #include "wsl_compute_helper_types_tokens.h"
11 
12 // Token layout
13 struct TOKSTR_GT_SUBSLICE_INFO {
14     TokenVariableLength base;
15 
16     TOKSTR_GT_SUBSLICE_INFO(uint16_t tokenId, uint32_t elementId = 0)
17         : base(tokenId, elementId, offsetof(TOKSTR_GT_SUBSLICE_INFO, EuEnabledMask) + sizeof(EuEnabledMask) - offsetof(TOKSTR_GT_SUBSLICE_INFO, Enabled), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
18 
TOKSTR_GT_SUBSLICE_INFOTOKSTR_GT_SUBSLICE_INFO19     TOKSTR_GT_SUBSLICE_INFO()
20         : base(TOK_S_GT_SUBSLICE_INFO, 0, sizeof(*this) - sizeof(base)) {}
21 
22     TokenBool Enabled = {TOK_FBB_GT_SUBSLICE_INFO__ENABLED};
23     TokenDword EuEnabledCount = {TOK_FBD_GT_SUBSLICE_INFO__EU_ENABLED_COUNT};
24     TokenDword EuEnabledMask = {TOK_FBD_GT_SUBSLICE_INFO__EU_ENABLED_MASK};
25 };
26 static_assert(std::is_standard_layout_v<TOKSTR_GT_SUBSLICE_INFO>, "");
27 static_assert(sizeof(TOKSTR_GT_SUBSLICE_INFO) % sizeof(uint32_t) == 0, "");
28 
29 struct TOKSTR_GT_DUALSUBSLICE_INFO {
30     TokenVariableLength base;
31 
32     TOKSTR_GT_DUALSUBSLICE_INFO(uint16_t tokenId, uint32_t elementId = 0)
33         : base(tokenId, elementId, offsetof(TOKSTR_GT_DUALSUBSLICE_INFO, SubSlice) + sizeof(SubSlice) - offsetof(TOKSTR_GT_DUALSUBSLICE_INFO, Enabled), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
34 
TOKSTR_GT_DUALSUBSLICE_INFOTOKSTR_GT_DUALSUBSLICE_INFO35     TOKSTR_GT_DUALSUBSLICE_INFO()
36         : base(TOK_S_GT_DUALSUBSLICE_INFO, 0, sizeof(*this) - sizeof(base)) {}
37 
38     TokenBool Enabled = {TOK_FBB_GT_DUALSUBSLICE_INFO__ENABLED};
39     TOKSTR_GT_SUBSLICE_INFO SubSlice[2] = {{TOK_FS_GT_DUALSUBSLICE_INFO__SUB_SLICE, 0}, {TOK_FS_GT_DUALSUBSLICE_INFO__SUB_SLICE, 1}};
40 };
41 static_assert(std::is_standard_layout_v<TOKSTR_GT_DUALSUBSLICE_INFO>, "");
42 static_assert(sizeof(TOKSTR_GT_DUALSUBSLICE_INFO) % sizeof(uint32_t) == 0, "");
43 
44 struct TOKSTR_GT_SLICE_INFO {
45     TokenVariableLength base;
46 
47     TOKSTR_GT_SLICE_INFO(uint16_t tokenId, uint32_t elementId = 0)
48         : base(tokenId, elementId, offsetof(TOKSTR_GT_SLICE_INFO, DualSubSliceEnabledCount) + sizeof(DualSubSliceEnabledCount) - offsetof(TOKSTR_GT_SLICE_INFO, Enabled), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
49 
TOKSTR_GT_SLICE_INFOTOKSTR_GT_SLICE_INFO50     TOKSTR_GT_SLICE_INFO()
51         : base(TOK_S_GT_SLICE_INFO, 0, sizeof(*this) - sizeof(base)) {}
52 
53     TokenBool Enabled = {TOK_FBB_GT_SLICE_INFO__ENABLED};
54     TOKSTR_GT_SUBSLICE_INFO SubSliceInfo[8] = {{TOK_FS_GT_SLICE_INFO__SUB_SLICE_INFO, 0}, {TOK_FS_GT_SLICE_INFO__SUB_SLICE_INFO, 1}, {TOK_FS_GT_SLICE_INFO__SUB_SLICE_INFO, 2}, {TOK_FS_GT_SLICE_INFO__SUB_SLICE_INFO, 3}, {TOK_FS_GT_SLICE_INFO__SUB_SLICE_INFO, 4}, {TOK_FS_GT_SLICE_INFO__SUB_SLICE_INFO, 5}, {TOK_FS_GT_SLICE_INFO__SUB_SLICE_INFO, 6}, {TOK_FS_GT_SLICE_INFO__SUB_SLICE_INFO, 7}};
55     TOKSTR_GT_DUALSUBSLICE_INFO DSSInfo[6] = {{TOK_FS_GT_SLICE_INFO__DSSINFO, 0}, {TOK_FS_GT_SLICE_INFO__DSSINFO, 1}, {TOK_FS_GT_SLICE_INFO__DSSINFO, 2}, {TOK_FS_GT_SLICE_INFO__DSSINFO, 3}, {TOK_FS_GT_SLICE_INFO__DSSINFO, 4}, {TOK_FS_GT_SLICE_INFO__DSSINFO, 5}};
56     TokenDword SubSliceEnabledCount = {TOK_FBD_GT_SLICE_INFO__SUB_SLICE_ENABLED_COUNT};
57     TokenDword DualSubSliceEnabledCount = {TOK_FBD_GT_SLICE_INFO__DUAL_SUB_SLICE_ENABLED_COUNT};
58 };
59 static_assert(std::is_standard_layout_v<TOKSTR_GT_SLICE_INFO>, "");
60 static_assert(sizeof(TOKSTR_GT_SLICE_INFO) % sizeof(uint32_t) == 0, "");
61 
62 struct TOKSTR_GT_VEBOX_INFO {
63     TokenVariableLength base;
64 
65     TOKSTR_GT_VEBOX_INFO(uint16_t tokenId, uint32_t elementId = 0)
66         : base(tokenId, elementId, offsetof(TOKSTR_GT_VEBOX_INFO, IsValid) + sizeof(IsValid) - offsetof(TOKSTR_GT_VEBOX_INFO, Instances), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
67 
TOKSTR_GT_VEBOX_INFOTOKSTR_GT_VEBOX_INFO68     TOKSTR_GT_VEBOX_INFO()
69         : base(TOK_S_GT_VEBOX_INFO, 0, sizeof(*this) - sizeof(base)) {}
70 
71     struct TOKSTR_VEBoxInstances {
72         TokenVariableLength base;
73 
74         TOKSTR_VEBoxInstances(uint16_t tokenId, uint32_t elementId = 0)
75             : base(tokenId, elementId, offsetof(TOKSTR_VEBoxInstances, VEBoxEnableMask) + sizeof(VEBoxEnableMask) - offsetof(TOKSTR_VEBoxInstances, Bits), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
76 
TOKSTR_VEBoxInstancesTOKSTR_GT_VEBOX_INFO::TOKSTR_VEBoxInstances77         TOKSTR_VEBoxInstances()
78             : base(TOK_S_GT_VEBOX_INFO__VEBOX_INSTANCES, 0, sizeof(*this) - sizeof(base)) {}
79 
80         struct TOKSTR_VEBitStruct {
81             TokenVariableLength base;
82 
83             TOKSTR_VEBitStruct(uint16_t tokenId, uint32_t elementId = 0)
84                 : base(tokenId, elementId, offsetof(TOKSTR_VEBitStruct, VEBox3Enabled) + sizeof(VEBox3Enabled) - offsetof(TOKSTR_VEBitStruct, VEBox0Enabled), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
85 
TOKSTR_VEBitStructTOKSTR_GT_VEBOX_INFO::TOKSTR_VEBoxInstances::TOKSTR_VEBitStruct86             TOKSTR_VEBitStruct()
87                 : base(TOK_S_GT_VEBOX_INFO__VEBOX_INSTANCES__VEBIT_STRUCT, 0, sizeof(*this) - sizeof(base)) {}
88 
89             TokenDword VEBox0Enabled = {TOK_FBD_GT_VEBOX_INFO__VEBOX_INSTANCES__VEBIT_STRUCT__VEBOX0ENABLED};
90             TokenDword VEBox1Enabled = {TOK_FBD_GT_VEBOX_INFO__VEBOX_INSTANCES__VEBIT_STRUCT__VEBOX1ENABLED};
91             TokenDword VEBox2Enabled = {TOK_FBD_GT_VEBOX_INFO__VEBOX_INSTANCES__VEBIT_STRUCT__VEBOX2ENABLED};
92             TokenDword VEBox3Enabled = {TOK_FBD_GT_VEBOX_INFO__VEBOX_INSTANCES__VEBIT_STRUCT__VEBOX3ENABLED};
93         };
94         static_assert(std::is_standard_layout_v<TOKSTR_VEBitStruct>, "");
95         static_assert(sizeof(TOKSTR_VEBitStruct) % sizeof(uint32_t) == 0, "");
96 
97         TOKSTR_VEBitStruct Bits = {TOK_FS_GT_VEBOX_INFO__VEBOX_INSTANCES__BITS};
98         TokenDword VEBoxEnableMask = {TOK_FBD_GT_VEBOX_INFO__VEBOX_INSTANCES__VEBOX_ENABLE_MASK};
99     };
100     static_assert(std::is_standard_layout_v<TOKSTR_VEBoxInstances>, "");
101     static_assert(sizeof(TOKSTR_VEBoxInstances) % sizeof(uint32_t) == 0, "");
102 
103     struct TOKSTR_ANONYMOUS3862 {
104         TokenVariableLength base;
105 
106         TOKSTR_ANONYMOUS3862(uint16_t tokenId, uint32_t elementId = 0)
107             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS3862, Value) + sizeof(Value) - offsetof(TOKSTR_ANONYMOUS3862, SfcSupportedBits), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
108 
TOKSTR_ANONYMOUS3862TOKSTR_GT_VEBOX_INFO::TOKSTR_ANONYMOUS3862109         TOKSTR_ANONYMOUS3862()
110             : base(TOK_S_GT_VEBOX_INFO__ANONYMOUS3862, 0, sizeof(*this) - sizeof(base)) {}
111 
112         struct TOKSTR_ANONYMOUS3882 {
113             TokenVariableLength base;
114 
115             TOKSTR_ANONYMOUS3882(uint16_t tokenId, uint32_t elementId = 0)
116                 : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS3882, VEBox3) + sizeof(VEBox3) - offsetof(TOKSTR_ANONYMOUS3882, VEBox0), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
117 
TOKSTR_ANONYMOUS3882TOKSTR_GT_VEBOX_INFO::TOKSTR_ANONYMOUS3862::TOKSTR_ANONYMOUS3882118             TOKSTR_ANONYMOUS3882()
119                 : base(TOK_S_GT_VEBOX_INFO__ANONYMOUS3862__ANONYMOUS3882, 0, sizeof(*this) - sizeof(base)) {}
120 
121             TokenDword VEBox0 = {TOK_FBD_GT_VEBOX_INFO__ANONYMOUS3862__ANONYMOUS3882__VEBOX0};
122             TokenDword VEBox1 = {TOK_FBD_GT_VEBOX_INFO__ANONYMOUS3862__ANONYMOUS3882__VEBOX1};
123             TokenDword VEBox2 = {TOK_FBD_GT_VEBOX_INFO__ANONYMOUS3862__ANONYMOUS3882__VEBOX2};
124             TokenDword VEBox3 = {TOK_FBD_GT_VEBOX_INFO__ANONYMOUS3862__ANONYMOUS3882__VEBOX3};
125         };
126         static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS3882>, "");
127         static_assert(sizeof(TOKSTR_ANONYMOUS3882) % sizeof(uint32_t) == 0, "");
128 
129         TOKSTR_ANONYMOUS3882 SfcSupportedBits = {TOK_FS_GT_VEBOX_INFO__ANONYMOUS3862__SFC_SUPPORTED_BITS};
130         TokenDword Value = {TOK_FBD_GT_VEBOX_INFO__ANONYMOUS3862__VALUE};
131     };
132     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS3862>, "");
133     static_assert(sizeof(TOKSTR_ANONYMOUS3862) % sizeof(uint32_t) == 0, "");
134 
135     TOKSTR_VEBoxInstances Instances = {TOK_FS_GT_VEBOX_INFO__INSTANCES};
136     TOKSTR_ANONYMOUS3862 SFCSupport = {TOK_FS_GT_VEBOX_INFO__SFCSUPPORT};
137     TokenDword NumberOfVEBoxEnabled = {TOK_FBD_GT_VEBOX_INFO__NUMBER_OF_VEBOX_ENABLED};
138     TokenBool IsValid = {TOK_FBB_GT_VEBOX_INFO__IS_VALID};
139 };
140 static_assert(std::is_standard_layout_v<TOKSTR_GT_VEBOX_INFO>, "");
141 static_assert(sizeof(TOKSTR_GT_VEBOX_INFO) % sizeof(uint32_t) == 0, "");
142 
143 struct TOKSTR_GT_VDBOX_INFO {
144     TokenVariableLength base;
145 
146     TOKSTR_GT_VDBOX_INFO(uint16_t tokenId, uint32_t elementId = 0)
147         : base(tokenId, elementId, offsetof(TOKSTR_GT_VDBOX_INFO, IsValid) + sizeof(IsValid) - offsetof(TOKSTR_GT_VDBOX_INFO, Instances), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
148 
TOKSTR_GT_VDBOX_INFOTOKSTR_GT_VDBOX_INFO149     TOKSTR_GT_VDBOX_INFO()
150         : base(TOK_S_GT_VDBOX_INFO, 0, sizeof(*this) - sizeof(base)) {}
151 
152     struct TOKSTR_VDBoxInstances {
153         TokenVariableLength base;
154 
155         TOKSTR_VDBoxInstances(uint16_t tokenId, uint32_t elementId = 0)
156             : base(tokenId, elementId, offsetof(TOKSTR_VDBoxInstances, VDBoxEnableMask) + sizeof(VDBoxEnableMask) - offsetof(TOKSTR_VDBoxInstances, Bits), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
157 
TOKSTR_VDBoxInstancesTOKSTR_GT_VDBOX_INFO::TOKSTR_VDBoxInstances158         TOKSTR_VDBoxInstances()
159             : base(TOK_S_GT_VDBOX_INFO__VDBOX_INSTANCES, 0, sizeof(*this) - sizeof(base)) {}
160 
161         struct TOKSTR_VDBitStruct {
162             TokenVariableLength base;
163 
164             TOKSTR_VDBitStruct(uint16_t tokenId, uint32_t elementId = 0)
165                 : base(tokenId, elementId, offsetof(TOKSTR_VDBitStruct, VDBox7Enabled) + sizeof(VDBox7Enabled) - offsetof(TOKSTR_VDBitStruct, VDBox0Enabled), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
166 
TOKSTR_VDBitStructTOKSTR_GT_VDBOX_INFO::TOKSTR_VDBoxInstances::TOKSTR_VDBitStruct167             TOKSTR_VDBitStruct()
168                 : base(TOK_S_GT_VDBOX_INFO__VDBOX_INSTANCES__VDBIT_STRUCT, 0, sizeof(*this) - sizeof(base)) {}
169 
170             TokenDword VDBox0Enabled = {TOK_FBD_GT_VDBOX_INFO__VDBOX_INSTANCES__VDBIT_STRUCT__VDBOX0ENABLED};
171             TokenDword VDBox1Enabled = {TOK_FBD_GT_VDBOX_INFO__VDBOX_INSTANCES__VDBIT_STRUCT__VDBOX1ENABLED};
172             TokenDword VDBox2Enabled = {TOK_FBD_GT_VDBOX_INFO__VDBOX_INSTANCES__VDBIT_STRUCT__VDBOX2ENABLED};
173             TokenDword VDBox3Enabled = {TOK_FBD_GT_VDBOX_INFO__VDBOX_INSTANCES__VDBIT_STRUCT__VDBOX3ENABLED};
174             TokenDword VDBox4Enabled = {TOK_FBD_GT_VDBOX_INFO__VDBOX_INSTANCES__VDBIT_STRUCT__VDBOX4ENABLED};
175             TokenDword VDBox5Enabled = {TOK_FBD_GT_VDBOX_INFO__VDBOX_INSTANCES__VDBIT_STRUCT__VDBOX5ENABLED};
176             TokenDword VDBox6Enabled = {TOK_FBD_GT_VDBOX_INFO__VDBOX_INSTANCES__VDBIT_STRUCT__VDBOX6ENABLED};
177             TokenDword VDBox7Enabled = {TOK_FBD_GT_VDBOX_INFO__VDBOX_INSTANCES__VDBIT_STRUCT__VDBOX7ENABLED};
178         };
179         static_assert(std::is_standard_layout_v<TOKSTR_VDBitStruct>, "");
180         static_assert(sizeof(TOKSTR_VDBitStruct) % sizeof(uint32_t) == 0, "");
181 
182         TOKSTR_VDBitStruct Bits = {TOK_FS_GT_VDBOX_INFO__VDBOX_INSTANCES__BITS};
183         TokenDword VDBoxEnableMask = {TOK_FBD_GT_VDBOX_INFO__VDBOX_INSTANCES__VDBOX_ENABLE_MASK};
184     };
185     static_assert(std::is_standard_layout_v<TOKSTR_VDBoxInstances>, "");
186     static_assert(sizeof(TOKSTR_VDBoxInstances) % sizeof(uint32_t) == 0, "");
187 
188     struct TOKSTR_ANONYMOUS5662 {
189         TokenVariableLength base;
190 
191         TOKSTR_ANONYMOUS5662(uint16_t tokenId, uint32_t elementId = 0)
192             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS5662, Value) + sizeof(Value) - offsetof(TOKSTR_ANONYMOUS5662, SfcSupportedBits), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
193 
TOKSTR_ANONYMOUS5662TOKSTR_GT_VDBOX_INFO::TOKSTR_ANONYMOUS5662194         TOKSTR_ANONYMOUS5662()
195             : base(TOK_S_GT_VDBOX_INFO__ANONYMOUS5662, 0, sizeof(*this) - sizeof(base)) {}
196 
197         struct TOKSTR_ANONYMOUS5682 {
198             TokenVariableLength base;
199 
200             TOKSTR_ANONYMOUS5682(uint16_t tokenId, uint32_t elementId = 0)
201                 : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS5682, VDBox7) + sizeof(VDBox7) - offsetof(TOKSTR_ANONYMOUS5682, VDBox0), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
202 
TOKSTR_ANONYMOUS5682TOKSTR_GT_VDBOX_INFO::TOKSTR_ANONYMOUS5662::TOKSTR_ANONYMOUS5682203             TOKSTR_ANONYMOUS5682()
204                 : base(TOK_S_GT_VDBOX_INFO__ANONYMOUS5662__ANONYMOUS5682, 0, sizeof(*this) - sizeof(base)) {}
205 
206             TokenDword VDBox0 = {TOK_FBD_GT_VDBOX_INFO__ANONYMOUS5662__ANONYMOUS5682__VDBOX0};
207             TokenDword VDBox1 = {TOK_FBD_GT_VDBOX_INFO__ANONYMOUS5662__ANONYMOUS5682__VDBOX1};
208             TokenDword VDBox2 = {TOK_FBD_GT_VDBOX_INFO__ANONYMOUS5662__ANONYMOUS5682__VDBOX2};
209             TokenDword VDBox3 = {TOK_FBD_GT_VDBOX_INFO__ANONYMOUS5662__ANONYMOUS5682__VDBOX3};
210             TokenDword VDBox4 = {TOK_FBD_GT_VDBOX_INFO__ANONYMOUS5662__ANONYMOUS5682__VDBOX4};
211             TokenDword VDBox5 = {TOK_FBD_GT_VDBOX_INFO__ANONYMOUS5662__ANONYMOUS5682__VDBOX5};
212             TokenDword VDBox6 = {TOK_FBD_GT_VDBOX_INFO__ANONYMOUS5662__ANONYMOUS5682__VDBOX6};
213             TokenDword VDBox7 = {TOK_FBD_GT_VDBOX_INFO__ANONYMOUS5662__ANONYMOUS5682__VDBOX7};
214         };
215         static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS5682>, "");
216         static_assert(sizeof(TOKSTR_ANONYMOUS5682) % sizeof(uint32_t) == 0, "");
217 
218         TOKSTR_ANONYMOUS5682 SfcSupportedBits = {TOK_FS_GT_VDBOX_INFO__ANONYMOUS5662__SFC_SUPPORTED_BITS};
219         TokenDword Value = {TOK_FBD_GT_VDBOX_INFO__ANONYMOUS5662__VALUE};
220     };
221     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS5662>, "");
222     static_assert(sizeof(TOKSTR_ANONYMOUS5662) % sizeof(uint32_t) == 0, "");
223 
224     TOKSTR_VDBoxInstances Instances = {TOK_FS_GT_VDBOX_INFO__INSTANCES};
225     TOKSTR_ANONYMOUS5662 SFCSupport = {TOK_FS_GT_VDBOX_INFO__SFCSUPPORT};
226     TokenDword NumberOfVDBoxEnabled = {TOK_FBD_GT_VDBOX_INFO__NUMBER_OF_VDBOX_ENABLED};
227     TokenBool IsValid = {TOK_FBB_GT_VDBOX_INFO__IS_VALID};
228 };
229 static_assert(std::is_standard_layout_v<TOKSTR_GT_VDBOX_INFO>, "");
230 static_assert(sizeof(TOKSTR_GT_VDBOX_INFO) % sizeof(uint32_t) == 0, "");
231 
232 struct TOKSTR_GT_CCS_INFO {
233     TokenVariableLength base;
234 
235     TOKSTR_GT_CCS_INFO(uint16_t tokenId, uint32_t elementId = 0)
236         : base(tokenId, elementId, offsetof(TOKSTR_GT_CCS_INFO, IsValid) + sizeof(IsValid) - offsetof(TOKSTR_GT_CCS_INFO, Instances), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
237 
TOKSTR_GT_CCS_INFOTOKSTR_GT_CCS_INFO238     TOKSTR_GT_CCS_INFO()
239         : base(TOK_S_GT_CCS_INFO, 0, sizeof(*this) - sizeof(base)) {}
240 
241     struct TOKSTR_CCSInstances {
242         TokenVariableLength base;
243 
244         TOKSTR_CCSInstances(uint16_t tokenId, uint32_t elementId = 0)
245             : base(tokenId, elementId, offsetof(TOKSTR_CCSInstances, CCSEnableMask) + sizeof(CCSEnableMask) - offsetof(TOKSTR_CCSInstances, Bits), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
246 
TOKSTR_CCSInstancesTOKSTR_GT_CCS_INFO::TOKSTR_CCSInstances247         TOKSTR_CCSInstances()
248             : base(TOK_S_GT_CCS_INFO__CCSINSTANCES, 0, sizeof(*this) - sizeof(base)) {}
249 
250         struct TOKSTR_CCSBitStruct {
251             TokenVariableLength base;
252 
253             TOKSTR_CCSBitStruct(uint16_t tokenId, uint32_t elementId = 0)
254                 : base(tokenId, elementId, offsetof(TOKSTR_CCSBitStruct, CCS3Enabled) + sizeof(CCS3Enabled) - offsetof(TOKSTR_CCSBitStruct, CCS0Enabled), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
255 
TOKSTR_CCSBitStructTOKSTR_GT_CCS_INFO::TOKSTR_CCSInstances::TOKSTR_CCSBitStruct256             TOKSTR_CCSBitStruct()
257                 : base(TOK_S_GT_CCS_INFO__CCSINSTANCES__CCSBIT_STRUCT, 0, sizeof(*this) - sizeof(base)) {}
258 
259             TokenDword CCS0Enabled = {TOK_FBD_GT_CCS_INFO__CCSINSTANCES__CCSBIT_STRUCT__CCS0ENABLED};
260             TokenDword CCS1Enabled = {TOK_FBD_GT_CCS_INFO__CCSINSTANCES__CCSBIT_STRUCT__CCS1ENABLED};
261             TokenDword CCS2Enabled = {TOK_FBD_GT_CCS_INFO__CCSINSTANCES__CCSBIT_STRUCT__CCS2ENABLED};
262             TokenDword CCS3Enabled = {TOK_FBD_GT_CCS_INFO__CCSINSTANCES__CCSBIT_STRUCT__CCS3ENABLED};
263         };
264         static_assert(std::is_standard_layout_v<TOKSTR_CCSBitStruct>, "");
265         static_assert(sizeof(TOKSTR_CCSBitStruct) % sizeof(uint32_t) == 0, "");
266 
267         TOKSTR_CCSBitStruct Bits = {TOK_FS_GT_CCS_INFO__CCSINSTANCES__BITS};
268         TokenDword CCSEnableMask = {TOK_FBD_GT_CCS_INFO__CCSINSTANCES__CCSENABLE_MASK};
269     };
270     static_assert(std::is_standard_layout_v<TOKSTR_CCSInstances>, "");
271     static_assert(sizeof(TOKSTR_CCSInstances) % sizeof(uint32_t) == 0, "");
272 
273     TOKSTR_CCSInstances Instances = {TOK_FS_GT_CCS_INFO__INSTANCES};
274     TokenDword NumberOfCCSEnabled = {TOK_FBD_GT_CCS_INFO__NUMBER_OF_CCSENABLED};
275     TokenBool IsValid = {TOK_FBB_GT_CCS_INFO__IS_VALID};
276 };
277 static_assert(std::is_standard_layout_v<TOKSTR_GT_CCS_INFO>, "");
278 static_assert(sizeof(TOKSTR_GT_CCS_INFO) % sizeof(uint32_t) == 0, "");
279 
280 struct TOKSTR_GT_MULTI_TILE_ARCH_INFO {
281     TokenVariableLength base;
282 
283     TOKSTR_GT_MULTI_TILE_ARCH_INFO(uint16_t tokenId, uint32_t elementId = 0)
284         : base(tokenId, elementId, offsetof(TOKSTR_GT_MULTI_TILE_ARCH_INFO, IsValid) + sizeof(IsValid) - offsetof(TOKSTR_GT_MULTI_TILE_ARCH_INFO, TileCount), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
285 
TOKSTR_GT_MULTI_TILE_ARCH_INFOTOKSTR_GT_MULTI_TILE_ARCH_INFO286     TOKSTR_GT_MULTI_TILE_ARCH_INFO()
287         : base(TOK_S_GT_MULTI_TILE_ARCH_INFO, 0, sizeof(*this) - sizeof(base)) {}
288 
289     struct TOKSTR_ANONYMOUS8856 {
290         TokenVariableLength base;
291 
292         TOKSTR_ANONYMOUS8856(uint16_t tokenId, uint32_t elementId = 0)
293             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS8856, TileMask) + sizeof(TileMask) - offsetof(TOKSTR_ANONYMOUS8856, Tile0), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
294 
TOKSTR_ANONYMOUS8856TOKSTR_GT_MULTI_TILE_ARCH_INFO::TOKSTR_ANONYMOUS8856295         TOKSTR_ANONYMOUS8856()
296             : base(TOK_S_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856, 0, sizeof(*this) - sizeof(base)) {}
297 
298         struct TOKSTR_ANONYMOUS8876 {
299             TokenVariableLength base;
300 
301             TOKSTR_ANONYMOUS8876(uint16_t tokenId, uint32_t elementId = 0)
302                 : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS8876, Tile3) + sizeof(Tile3) - offsetof(TOKSTR_ANONYMOUS8876, Tile0), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
303 
TOKSTR_ANONYMOUS8876TOKSTR_GT_MULTI_TILE_ARCH_INFO::TOKSTR_ANONYMOUS8856::TOKSTR_ANONYMOUS8876304             TOKSTR_ANONYMOUS8876()
305                 : base(TOK_S_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876, 0, sizeof(*this) - sizeof(base)) {}
306 
307             TokenDword Tile0 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE0};
308             TokenDword Tile1 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE1};
309             TokenDword Tile2 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE2};
310             TokenDword Tile3 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE3};
311         };
312         static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS8876>, "");
313         static_assert(sizeof(TOKSTR_ANONYMOUS8876) % sizeof(uint32_t) == 0, "");
314 
315         TokenDword Tile0 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE0}; // Indirect field from anonymous struct
316         TokenDword Tile1 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE1}; // Indirect field from anonymous struct
317         TokenDword Tile2 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE2}; // Indirect field from anonymous struct
318         TokenDword Tile3 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE3}; // Indirect field from anonymous struct
319         TokenDword TileMask = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__TILE_MASK};
320     };
321     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS8856>, "");
322     static_assert(sizeof(TOKSTR_ANONYMOUS8856) % sizeof(uint32_t) == 0, "");
323 
324     TokenDword TileCount = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__TILE_COUNT};
325     TokenDword Tile0 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE0}; // Indirect field from anonymous struct
326     TokenDword Tile1 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE1}; // Indirect field from anonymous struct
327     TokenDword Tile2 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE2}; // Indirect field from anonymous struct
328     TokenDword Tile3 = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__ANONYMOUS8876__TILE3}; // Indirect field from anonymous struct
329     TokenDword TileMask = {TOK_FBC_GT_MULTI_TILE_ARCH_INFO__ANONYMOUS8856__TILE_MASK};         // Indirect field from anonymous struct
330     TokenBool IsValid = {TOK_FBB_GT_MULTI_TILE_ARCH_INFO__IS_VALID};
331 };
332 static_assert(std::is_standard_layout_v<TOKSTR_GT_MULTI_TILE_ARCH_INFO>, "");
333 static_assert(sizeof(TOKSTR_GT_MULTI_TILE_ARCH_INFO) % sizeof(uint32_t) == 0, "");
334 
335 struct TOKSTR_GT_SQIDI_INFO {
336     TokenVariableLength base;
337 
338     TOKSTR_GT_SQIDI_INFO(uint16_t tokenId, uint32_t elementId = 0)
339         : base(tokenId, elementId, offsetof(TOKSTR_GT_SQIDI_INFO, NumberofDoorbellPerSQIDI) + sizeof(NumberofDoorbellPerSQIDI) - offsetof(TOKSTR_GT_SQIDI_INFO, NumberofSQIDI), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
340 
TOKSTR_GT_SQIDI_INFOTOKSTR_GT_SQIDI_INFO341     TOKSTR_GT_SQIDI_INFO()
342         : base(TOK_S_GT_SQIDI_INFO, 0, sizeof(*this) - sizeof(base)) {}
343 
344     TokenDword NumberofSQIDI = {TOK_FBD_GT_SQIDI_INFO__NUMBEROF_SQIDI};
345     TokenDword NumberofDoorbellPerSQIDI = {TOK_FBD_GT_SQIDI_INFO__NUMBEROF_DOORBELL_PER_SQIDI};
346 };
347 static_assert(std::is_standard_layout_v<TOKSTR_GT_SQIDI_INFO>, "");
348 static_assert(sizeof(TOKSTR_GT_SQIDI_INFO) % sizeof(uint32_t) == 0, "");
349 
350 struct TOKSTR__GT_CACHE_TYPES {
351     TokenVariableLength base;
352 
353     TOKSTR__GT_CACHE_TYPES(uint16_t tokenId, uint32_t elementId = 0)
354         : base(tokenId, elementId, offsetof(TOKSTR__GT_CACHE_TYPES, CacheTypeMask) + sizeof(CacheTypeMask) - offsetof(TOKSTR__GT_CACHE_TYPES, L3), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
355 
TOKSTR__GT_CACHE_TYPESTOKSTR__GT_CACHE_TYPES356     TOKSTR__GT_CACHE_TYPES()
357         : base(TOK_S_GT_CACHE_TYPES, 0, sizeof(*this) - sizeof(base)) {}
358 
359     struct TOKSTR_ANONYMOUS9544 {
360         TokenVariableLength base;
361 
362         TOKSTR_ANONYMOUS9544(uint16_t tokenId, uint32_t elementId = 0)
363             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS9544, eDRAM) + sizeof(eDRAM) - offsetof(TOKSTR_ANONYMOUS9544, L3), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
364 
TOKSTR_ANONYMOUS9544TOKSTR__GT_CACHE_TYPES::TOKSTR_ANONYMOUS9544365         TOKSTR_ANONYMOUS9544()
366             : base(TOK_S_GT_CACHE_TYPES__ANONYMOUS9544, 0, sizeof(*this) - sizeof(base)) {}
367 
368         TokenDword L3 = {TOK_FBD_GT_CACHE_TYPES__ANONYMOUS9544__L3};
369         TokenDword LLC = {TOK_FBD_GT_CACHE_TYPES__ANONYMOUS9544__LLC};
370         TokenDword eDRAM = {TOK_FBD_GT_CACHE_TYPES__ANONYMOUS9544__E_DRAM};
371     };
372     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS9544>, "");
373     static_assert(sizeof(TOKSTR_ANONYMOUS9544) % sizeof(uint32_t) == 0, "");
374 
375     TokenDword L3 = {TOK_FBD_GT_CACHE_TYPES__ANONYMOUS9544__L3};        // Indirect field from anonymous struct
376     TokenDword LLC = {TOK_FBD_GT_CACHE_TYPES__ANONYMOUS9544__LLC};      // Indirect field from anonymous struct
377     TokenDword eDRAM = {TOK_FBD_GT_CACHE_TYPES__ANONYMOUS9544__E_DRAM}; // Indirect field from anonymous struct
378     TokenDword CacheTypeMask = {TOK_FBD_GT_CACHE_TYPES__CACHE_TYPE_MASK};
379 };
380 static_assert(std::is_standard_layout_v<TOKSTR__GT_CACHE_TYPES>, "");
381 static_assert(sizeof(TOKSTR__GT_CACHE_TYPES) % sizeof(uint32_t) == 0, "");
382 
383 struct TOKSTR_GT_SYSTEM_INFO {
384     TokenVariableLength base;
385 
386     TOKSTR_GT_SYSTEM_INFO(uint16_t tokenId, uint32_t elementId = 0)
387         : base(tokenId, elementId, offsetof(TOKSTR_GT_SYSTEM_INFO, MaxVECS) + sizeof(MaxVECS) - offsetof(TOKSTR_GT_SYSTEM_INFO, EUCount), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
388 
TOKSTR_GT_SYSTEM_INFOTOKSTR_GT_SYSTEM_INFO389     TOKSTR_GT_SYSTEM_INFO()
390         : base(TOK_S_GT_SYSTEM_INFO, 0, sizeof(*this) - sizeof(base)) {}
391 
392     TokenDword EUCount = {TOK_FBD_GT_SYSTEM_INFO__EUCOUNT};
393     TokenDword ThreadCount = {TOK_FBD_GT_SYSTEM_INFO__THREAD_COUNT};
394     TokenDword SliceCount = {TOK_FBD_GT_SYSTEM_INFO__SLICE_COUNT};
395     TokenDword SubSliceCount = {TOK_FBD_GT_SYSTEM_INFO__SUB_SLICE_COUNT};
396     TokenDword DualSubSliceCount = {TOK_FBD_GT_SYSTEM_INFO__DUAL_SUB_SLICE_COUNT};
397     TokenQword L3CacheSizeInKb = {TOK_FBQ_GT_SYSTEM_INFO__L3CACHE_SIZE_IN_KB};
398     TokenQword LLCCacheSizeInKb = {TOK_FBQ_GT_SYSTEM_INFO__LLCCACHE_SIZE_IN_KB};
399     TokenQword EdramSizeInKb = {TOK_FBQ_GT_SYSTEM_INFO__EDRAM_SIZE_IN_KB};
400     TokenDword L3BankCount = {TOK_FBD_GT_SYSTEM_INFO__L3BANK_COUNT};
401     TokenDword MaxFillRate = {TOK_FBD_GT_SYSTEM_INFO__MAX_FILL_RATE};
402     TokenDword EuCountPerPoolMax = {TOK_FBD_GT_SYSTEM_INFO__EU_COUNT_PER_POOL_MAX};
403     TokenDword EuCountPerPoolMin = {TOK_FBD_GT_SYSTEM_INFO__EU_COUNT_PER_POOL_MIN};
404     TokenDword TotalVsThreads = {TOK_FBD_GT_SYSTEM_INFO__TOTAL_VS_THREADS};
405     TokenDword TotalHsThreads = {TOK_FBD_GT_SYSTEM_INFO__TOTAL_HS_THREADS};
406     TokenDword TotalDsThreads = {TOK_FBD_GT_SYSTEM_INFO__TOTAL_DS_THREADS};
407     TokenDword TotalGsThreads = {TOK_FBD_GT_SYSTEM_INFO__TOTAL_GS_THREADS};
408     TokenDword TotalPsThreadsWindowerRange = {TOK_FBD_GT_SYSTEM_INFO__TOTAL_PS_THREADS_WINDOWER_RANGE};
409     TokenDword TotalVsThreads_Pocs = {TOK_FBD_GT_SYSTEM_INFO__TOTAL_VS_THREADS_POCS};
410     TokenDword CsrSizeInMb = {TOK_FBD_GT_SYSTEM_INFO__CSR_SIZE_IN_MB};
411     TokenDword MaxEuPerSubSlice = {TOK_FBD_GT_SYSTEM_INFO__MAX_EU_PER_SUB_SLICE};
412     TokenDword MaxSlicesSupported = {TOK_FBD_GT_SYSTEM_INFO__MAX_SLICES_SUPPORTED};
413     TokenDword MaxSubSlicesSupported = {TOK_FBD_GT_SYSTEM_INFO__MAX_SUB_SLICES_SUPPORTED};
414     TokenDword MaxDualSubSlicesSupported = {TOK_FBD_GT_SYSTEM_INFO__MAX_DUAL_SUB_SLICES_SUPPORTED};
415     TokenBool IsL3HashModeEnabled = {TOK_FBB_GT_SYSTEM_INFO__IS_L3HASH_MODE_ENABLED};
416     TOKSTR_GT_SLICE_INFO SliceInfo[10] = {{TOK_FS_GT_SYSTEM_INFO__SLICE_INFO, 0}, {TOK_FS_GT_SYSTEM_INFO__SLICE_INFO, 1}, {TOK_FS_GT_SYSTEM_INFO__SLICE_INFO, 2}, {TOK_FS_GT_SYSTEM_INFO__SLICE_INFO, 3}, {TOK_FS_GT_SYSTEM_INFO__SLICE_INFO, 4}, {TOK_FS_GT_SYSTEM_INFO__SLICE_INFO, 5}, {TOK_FS_GT_SYSTEM_INFO__SLICE_INFO, 6}, {TOK_FS_GT_SYSTEM_INFO__SLICE_INFO, 7}, {TOK_FS_GT_SYSTEM_INFO__SLICE_INFO, 8}, {TOK_FS_GT_SYSTEM_INFO__SLICE_INFO, 9}};
417     TokenBool IsDynamicallyPopulated = {TOK_FBB_GT_SYSTEM_INFO__IS_DYNAMICALLY_POPULATED};
418     TOKSTR_GT_SQIDI_INFO SqidiInfo = {TOK_FS_GT_SYSTEM_INFO__SQIDI_INFO};
419     TokenDword ReservedCCSWays = {TOK_FBD_GT_SYSTEM_INFO__RESERVED_CCSWAYS};
420     TOKSTR_GT_CCS_INFO CCSInfo = {TOK_FS_GT_SYSTEM_INFO__CCSINFO};
421     TOKSTR_GT_MULTI_TILE_ARCH_INFO MultiTileArchInfo = {TOK_FS_GT_SYSTEM_INFO__MULTI_TILE_ARCH_INFO};
422     TOKSTR_GT_VDBOX_INFO VDBoxInfo = {TOK_FS_GT_SYSTEM_INFO__VDBOX_INFO};
423     TOKSTR_GT_VEBOX_INFO VEBoxInfo = {TOK_FS_GT_SYSTEM_INFO__VEBOX_INFO};
424     TokenDword NumThreadsPerEu = {TOK_FBD_GT_SYSTEM_INFO__NUM_THREADS_PER_EU};
425     TOKSTR__GT_CACHE_TYPES CacheTypes = {TOK_FS_GT_SYSTEM_INFO__CACHE_TYPES};
426     TokenDword MaxVECS = {TOK_FBD_GT_SYSTEM_INFO__MAX_VECS};
427 };
428 static_assert(std::is_standard_layout_v<TOKSTR_GT_SYSTEM_INFO>, "");
429 static_assert(sizeof(TOKSTR_GT_SYSTEM_INFO) % sizeof(uint32_t) == 0, "");
430 
431 struct TOKSTR__SKU_FEATURE_TABLE {
432     TokenVariableLength base;
433 
434     TOKSTR__SKU_FEATURE_TABLE(uint16_t tokenId, uint32_t elementId = 0)
435         : base(tokenId, elementId, offsetof(TOKSTR__SKU_FEATURE_TABLE, FtrAssignedGpuTile) + sizeof(FtrAssignedGpuTile) - offsetof(TOKSTR__SKU_FEATURE_TABLE, FtrDesktop), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
436 
TOKSTR__SKU_FEATURE_TABLETOKSTR__SKU_FEATURE_TABLE437     TOKSTR__SKU_FEATURE_TABLE()
438         : base(TOK_S_SKU_FEATURE_TABLE, 0, sizeof(*this) - sizeof(base)) {}
439 
440     struct TOKSTR_ANONYMOUS3245 {
441         TokenVariableLength base;
442 
443         TOKSTR_ANONYMOUS3245(uint16_t tokenId, uint32_t elementId = 0)
444             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS3245, FtrCCSMultiInstance) + sizeof(FtrCCSMultiInstance) - offsetof(TOKSTR_ANONYMOUS3245, FtrDesktop), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
445 
TOKSTR_ANONYMOUS3245TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS3245446         TOKSTR_ANONYMOUS3245()
447             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS3245, 0, sizeof(*this) - sizeof(base)) {}
448 
449         TokenDword FtrDesktop = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_DESKTOP};
450         TokenDword FtrVERing = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_VERING};
451         TokenDword FtrVcs2 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_VCS2};
452         TokenDword FtrGtBigDie = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT_BIG_DIE};
453         TokenDword FtrGtMediumDie = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT_MEDIUM_DIE};
454         TokenDword FtrGtSmallDie = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT_SMALL_DIE};
455         TokenDword FtrGT1 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT1};
456         TokenDword FtrGT1_5 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT1_5};
457         TokenDword FtrGT2 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT2};
458         TokenDword FtrGT2_5 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT2_5};
459         TokenDword FtrGT3 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT3};
460         TokenDword FtrGT4 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT4};
461         TokenDword FtrULT = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_ULT};
462         TokenDword FtrIVBM0M1Platform = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_IVBM0M1PLATFORM};
463         TokenDword FtrChannelSwizzlingXOREnabled = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_CHANNEL_SWIZZLING_XORENABLED};
464         TokenDword FtrGTA = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GTA};
465         TokenDword FtrGTC = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GTC};
466         TokenDword FtrGTX = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GTX};
467         TokenDword Ftr5Slice = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR5SLICE};
468         TokenDword FtrLCIA = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_LCIA};
469         TokenDword FtrResourceStreamer = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_RESOURCE_STREAMER};
470         TokenDword FtrCCSRing = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_CCSRING};
471         TokenDword FtrCCSNode = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_CCSNODE};
472         TokenDword FtrCCSMultiInstance = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_CCSMULTI_INSTANCE};
473     };
474     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS3245>, "");
475     static_assert(sizeof(TOKSTR_ANONYMOUS3245) % sizeof(uint32_t) == 0, "");
476 
477     struct TOKSTR_ANONYMOUS11155 {
478         TokenVariableLength base;
479 
480         TOKSTR_ANONYMOUS11155(uint16_t tokenId, uint32_t elementId = 0)
481             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS11155, FtrSGTPVSKUStrapPresent) + sizeof(FtrSGTPVSKUStrapPresent) - offsetof(TOKSTR_ANONYMOUS11155, FtrDisplayDisabled), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
482 
TOKSTR_ANONYMOUS11155TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS11155483         TOKSTR_ANONYMOUS11155()
484             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS11155, 0, sizeof(*this) - sizeof(base)) {}
485 
486         TokenDword FtrDisplayDisabled = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS11155__FTR_DISPLAY_DISABLED};
487         TokenDword FtrSGTPVSKUStrapPresent = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS11155__FTR_SGTPVSKUSTRAP_PRESENT};
488     };
489     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS11155>, "");
490     static_assert(sizeof(TOKSTR_ANONYMOUS11155) % sizeof(uint32_t) == 0, "");
491 
492     struct TOKSTR_ANONYMOUS21584 {
493         TokenVariableLength base;
494 
495         TOKSTR_ANONYMOUS21584(uint16_t tokenId, uint32_t elementId = 0)
496             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS21584, FtrPooledEuEnabled) + sizeof(FtrPooledEuEnabled) - offsetof(TOKSTR_ANONYMOUS21584, FtrPooledEuEnabled), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
497 
TOKSTR_ANONYMOUS21584TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS21584498         TOKSTR_ANONYMOUS21584()
499             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS21584, 0, sizeof(*this) - sizeof(base)) {}
500 
501         TokenDword FtrPooledEuEnabled = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21584__FTR_POOLED_EU_ENABLED};
502     };
503     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS21584>, "");
504     static_assert(sizeof(TOKSTR_ANONYMOUS21584) % sizeof(uint32_t) == 0, "");
505 
506     struct TOKSTR_ANONYMOUS21990 {
507         TokenVariableLength base;
508 
509         TOKSTR_ANONYMOUS21990(uint16_t tokenId, uint32_t elementId = 0)
510             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS21990, FtrDriverFLR) + sizeof(FtrDriverFLR) - offsetof(TOKSTR_ANONYMOUS21990, FtrGpGpuMidBatchPreempt), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
511 
TOKSTR_ANONYMOUS21990TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS21990512         TOKSTR_ANONYMOUS21990()
513             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS21990, 0, sizeof(*this) - sizeof(base)) {}
514 
515         TokenDword FtrGpGpuMidBatchPreempt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_GP_GPU_MID_BATCH_PREEMPT};
516         TokenDword FtrGpGpuThreadGroupLevelPreempt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_GP_GPU_THREAD_GROUP_LEVEL_PREEMPT};
517         TokenDword FtrGpGpuMidThreadLevelPreempt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_GP_GPU_MID_THREAD_LEVEL_PREEMPT};
518         TokenDword Ftr3dMidBatchPreempt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR3D_MID_BATCH_PREEMPT};
519         TokenDword Ftr3dObjectLevelPreempt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR3D_OBJECT_LEVEL_PREEMPT};
520         TokenDword FtrPerCtxtPreemptionGranularityControl = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_PER_CTXT_PREEMPTION_GRANULARITY_CONTROL};
521         TokenDword FtrPPGTT = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_PPGTT};
522         TokenDword FtrIA32eGfxPTEs = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_IA32E_GFX_PTES};
523         TokenDword FtrMemTypeMocsDeferPAT = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_MEM_TYPE_MOCS_DEFER_PAT};
524         TokenDword FtrPml4Support = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_PML4SUPPORT};
525         TokenDword FtrSVM = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_SVM};
526         TokenDword FtrTileMappedResource = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_TILE_MAPPED_RESOURCE};
527         TokenDword FtrTranslationTable = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_TRANSLATION_TABLE};
528         TokenDword FtrUserModeTranslationTable = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_USER_MODE_TRANSLATION_TABLE};
529         TokenDword FtrNullPages = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_NULL_PAGES};
530         TokenDword FtrL3IACoherency = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_L3IACOHERENCY};
531         TokenDword FtrEDram = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_EDRAM};
532         TokenDword FtrLLCBypass = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_LLCBYPASS};
533         TokenDword FtrCrystalwell = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_CRYSTALWELL};
534         TokenDword FtrCentralCachePolicy = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_CENTRAL_CACHE_POLICY};
535         TokenDword FtrIoMmuPageFaulting = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_IO_MMU_PAGE_FAULTING};
536         TokenDword FtrWddm2GpuMmu = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_WDDM2GPU_MMU};
537         TokenDword FtrWddm2Svm = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_WDDM2SVM};
538         TokenDword FtrStandardMipTailFormat = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_STANDARD_MIP_TAIL_FORMAT};
539         TokenDword FtrWddm2_1_64kbPages = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_WDDM2_1_64KB_PAGES};
540         TokenDword FtrGttCacheInvalidation = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_GTT_CACHE_INVALIDATION};
541         TokenDword FtrE2ECompression = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_E2ECOMPRESSION};
542         TokenDword FtrLinearCCS = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_LINEAR_CCS};
543         TokenDword FtrLocalMemory = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_LOCAL_MEMORY};
544         TokenDword FtrPpgtt64KBWalkOptimization = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_PPGTT64KBWALK_OPTIMIZATION};
545         TokenDword FtrTileY = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_TILE_Y};
546         TokenDword FtrFlatPhysCCS = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_FLAT_PHYS_CCS};
547         TokenDword FtrMultiTileArch = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_MULTI_TILE_ARCH};
548         TokenDword FtrLocalMemoryAllows4KB = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_LOCAL_MEMORY_ALLOWS4KB};
549         TokenDword FtrDisplayXTiling = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_DISPLAY_XTILING};
550         TokenDword FtrCameraCaptureCaching = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_CAMERA_CAPTURE_CACHING};
551         TokenDword FtrKmdDaf = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_KMD_DAF};
552         TokenDword FtrFrameBufferLLC = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_FRAME_BUFFER_LLC};
553         TokenDword FtrDriverFLR = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_DRIVER_FLR};
554     };
555     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS21990>, "");
556     static_assert(sizeof(TOKSTR_ANONYMOUS21990) % sizeof(uint32_t) == 0, "");
557 
558     struct TOKSTR_ANONYMOUS37751 {
559         TokenVariableLength base;
560 
561         TOKSTR_ANONYMOUS37751(uint16_t tokenId, uint32_t elementId = 0)
562             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS37751, FtrAstc3D) + sizeof(FtrAstc3D) - offsetof(TOKSTR_ANONYMOUS37751, FtrAstcLdr2D), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
563 
TOKSTR_ANONYMOUS37751TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS37751564         TOKSTR_ANONYMOUS37751()
565             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS37751, 0, sizeof(*this) - sizeof(base)) {}
566 
567         TokenDword FtrAstcLdr2D = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS37751__FTR_ASTC_LDR2D};
568         TokenDword FtrAstcHdr2D = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS37751__FTR_ASTC_HDR2D};
569         TokenDword FtrAstc3D = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS37751__FTR_ASTC3D};
570     };
571     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS37751>, "");
572     static_assert(sizeof(TOKSTR_ANONYMOUS37751) % sizeof(uint32_t) == 0, "");
573 
574     struct TOKSTR_ANONYMOUS42853 {
575         TokenVariableLength base;
576 
577         TOKSTR_ANONYMOUS42853(uint16_t tokenId, uint32_t elementId = 0)
578             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS42853, FtrVEBOX) + sizeof(FtrVEBOX) - offsetof(TOKSTR_ANONYMOUS42853, FtrFbc), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
579 
TOKSTR_ANONYMOUS42853TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS42853580         TOKSTR_ANONYMOUS42853()
581             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS42853, 0, sizeof(*this) - sizeof(base)) {}
582 
583         TokenDword FtrFbc = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS42853__FTR_FBC};
584         TokenDword FtrFbc2AddressTranslation = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS42853__FTR_FBC2ADDRESS_TRANSLATION};
585         TokenDword FtrFbcBlitterTracking = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS42853__FTR_FBC_BLITTER_TRACKING};
586         TokenDword FtrFbcCpuTracking = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS42853__FTR_FBC_CPU_TRACKING};
587         TokenDword FtrVEBOX = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS42853__FTR_VEBOX};
588     };
589     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS42853>, "");
590     static_assert(sizeof(TOKSTR_ANONYMOUS42853) % sizeof(uint32_t) == 0, "");
591 
592     struct TOKSTR_ANONYMOUS54736 {
593         TokenVariableLength base;
594 
595         TOKSTR_ANONYMOUS54736(uint16_t tokenId, uint32_t elementId = 0)
596             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS54736, FtrDisplayYTiling) + sizeof(FtrDisplayYTiling) - offsetof(TOKSTR_ANONYMOUS54736, FtrRendComp), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
597 
TOKSTR_ANONYMOUS54736TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS54736598         TOKSTR_ANONYMOUS54736()
599             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS54736, 0, sizeof(*this) - sizeof(base)) {}
600 
601         TokenDword FtrRendComp = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS54736__FTR_REND_COMP};
602         TokenDword FtrDisplayYTiling = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS54736__FTR_DISPLAY_YTILING};
603     };
604     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS54736>, "");
605     static_assert(sizeof(TOKSTR_ANONYMOUS54736) % sizeof(uint32_t) == 0, "");
606 
607     struct TOKSTR_ANONYMOUS66219 {
608         TokenVariableLength base;
609 
610         TOKSTR_ANONYMOUS66219(uint16_t tokenId, uint32_t elementId = 0)
611             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS66219, FtrSimulationMode) + sizeof(FtrSimulationMode) - offsetof(TOKSTR_ANONYMOUS66219, FtrS3D), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
612 
TOKSTR_ANONYMOUS66219TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS66219613         TOKSTR_ANONYMOUS66219()
614             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS66219, 0, sizeof(*this) - sizeof(base)) {}
615 
616         TokenDword FtrS3D = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS66219__FTR_S3D};
617         TokenDword FtrDisplayEngineS3d = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS66219__FTR_DISPLAY_ENGINE_S3D};
618         TokenDword FtrSingleVeboxSlice = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS66219__FTR_SINGLE_VEBOX_SLICE};
619         TokenDword FtrSimulationMode = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS66219__FTR_SIMULATION_MODE};
620     };
621     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS66219>, "");
622     static_assert(sizeof(TOKSTR_ANONYMOUS66219) % sizeof(uint32_t) == 0, "");
623 
624     struct TOKSTR_ANONYMOUS88095 {
625         TokenVariableLength base;
626 
627         TOKSTR_ANONYMOUS88095(uint16_t tokenId, uint32_t elementId = 0)
628             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS88095, FtrEnableGuC) + sizeof(FtrEnableGuC) - offsetof(TOKSTR_ANONYMOUS88095, FtrEnableGuC), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
629 
TOKSTR_ANONYMOUS88095TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS88095630         TOKSTR_ANONYMOUS88095()
631             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS88095, 0, sizeof(*this) - sizeof(base)) {}
632 
633         TokenDword FtrEnableGuC = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS88095__FTR_ENABLE_GU_C};
634     };
635     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS88095>, "");
636     static_assert(sizeof(TOKSTR_ANONYMOUS88095) % sizeof(uint32_t) == 0, "");
637 
638     struct TOKSTR_ANONYMOUS89755 {
639         TokenVariableLength base;
640 
641         TOKSTR_ANONYMOUS89755(uint16_t tokenId, uint32_t elementId = 0)
642             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS89755, FtrVgt) + sizeof(FtrVgt) - offsetof(TOKSTR_ANONYMOUS89755, FtrVgt), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
643 
TOKSTR_ANONYMOUS89755TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS89755644         TOKSTR_ANONYMOUS89755()
645             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS89755, 0, sizeof(*this) - sizeof(base)) {}
646 
647         TokenDword FtrVgt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS89755__FTR_VGT};
648     };
649     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS89755>, "");
650     static_assert(sizeof(TOKSTR_ANONYMOUS89755) % sizeof(uint32_t) == 0, "");
651 
652     struct TOKSTR_ANONYMOUS91822 {
653         TokenVariableLength base;
654 
655         TOKSTR_ANONYMOUS91822(uint16_t tokenId, uint32_t elementId = 0)
656             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS91822, FtrAssignedGpuTile) + sizeof(FtrAssignedGpuTile) - offsetof(TOKSTR_ANONYMOUS91822, FtrAssignedGpuTile), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
657 
TOKSTR_ANONYMOUS91822TOKSTR__SKU_FEATURE_TABLE::TOKSTR_ANONYMOUS91822658         TOKSTR_ANONYMOUS91822()
659             : base(TOK_S_SKU_FEATURE_TABLE__ANONYMOUS91822, 0, sizeof(*this) - sizeof(base)) {}
660 
661         TokenDword FtrAssignedGpuTile = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS91822__FTR_ASSIGNED_GPU_TILE};
662     };
663     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS91822>, "");
664     static_assert(sizeof(TOKSTR_ANONYMOUS91822) % sizeof(uint32_t) == 0, "");
665 
666     TokenDword FtrDesktop = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_DESKTOP};                                                              // Indirect field from anonymous struct
667     TokenDword FtrVERing = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_VERING};                                                                // Indirect field from anonymous struct
668     TokenDword FtrVcs2 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_VCS2};                                                                    // Indirect field from anonymous struct
669     TokenDword FtrGtBigDie = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT_BIG_DIE};                                                          // Indirect field from anonymous struct
670     TokenDword FtrGtMediumDie = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT_MEDIUM_DIE};                                                    // Indirect field from anonymous struct
671     TokenDword FtrGtSmallDie = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT_SMALL_DIE};                                                      // Indirect field from anonymous struct
672     TokenDword FtrGT1 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT1};                                                                      // Indirect field from anonymous struct
673     TokenDword FtrGT1_5 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT1_5};                                                                  // Indirect field from anonymous struct
674     TokenDword FtrGT2 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT2};                                                                      // Indirect field from anonymous struct
675     TokenDword FtrGT2_5 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT2_5};                                                                  // Indirect field from anonymous struct
676     TokenDword FtrGT3 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT3};                                                                      // Indirect field from anonymous struct
677     TokenDword FtrGT4 = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GT4};                                                                      // Indirect field from anonymous struct
678     TokenDword FtrULT = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_ULT};                                                                      // Indirect field from anonymous struct
679     TokenDword FtrIVBM0M1Platform = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_IVBM0M1PLATFORM};                                              // Indirect field from anonymous struct
680     TokenDword FtrChannelSwizzlingXOREnabled = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_CHANNEL_SWIZZLING_XORENABLED};                      // Indirect field from anonymous struct
681     TokenDword FtrGTA = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GTA};                                                                      // Indirect field from anonymous struct
682     TokenDword FtrGTC = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GTC};                                                                      // Indirect field from anonymous struct
683     TokenDword FtrGTX = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_GTX};                                                                      // Indirect field from anonymous struct
684     TokenDword Ftr5Slice = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR5SLICE};                                                                 // Indirect field from anonymous struct
685     TokenDword FtrLCIA = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_LCIA};                                                                    // Indirect field from anonymous struct
686     TokenDword FtrResourceStreamer = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_RESOURCE_STREAMER};                                           // Indirect field from anonymous struct
687     TokenDword FtrCCSRing = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_CCSRING};                                                              // Indirect field from anonymous struct
688     TokenDword FtrCCSNode = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_CCSNODE};                                                              // Indirect field from anonymous struct
689     TokenDword FtrCCSMultiInstance = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS3245__FTR_CCSMULTI_INSTANCE};                                           // Indirect field from anonymous struct
690     TokenDword FtrDisplayDisabled = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS11155__FTR_DISPLAY_DISABLED};                                            // Indirect field from anonymous struct
691     TokenDword FtrSGTPVSKUStrapPresent = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS11155__FTR_SGTPVSKUSTRAP_PRESENT};                                  // Indirect field from anonymous struct
692     TokenDword FtrPooledEuEnabled = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21584__FTR_POOLED_EU_ENABLED};                                           // Indirect field from anonymous struct
693     TokenDword FtrGpGpuMidBatchPreempt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_GP_GPU_MID_BATCH_PREEMPT};                               // Indirect field from anonymous struct
694     TokenDword FtrGpGpuThreadGroupLevelPreempt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_GP_GPU_THREAD_GROUP_LEVEL_PREEMPT};              // Indirect field from anonymous struct
695     TokenDword FtrGpGpuMidThreadLevelPreempt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_GP_GPU_MID_THREAD_LEVEL_PREEMPT};                  // Indirect field from anonymous struct
696     TokenDword Ftr3dMidBatchPreempt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR3D_MID_BATCH_PREEMPT};                                       // Indirect field from anonymous struct
697     TokenDword Ftr3dObjectLevelPreempt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR3D_OBJECT_LEVEL_PREEMPT};                                 // Indirect field from anonymous struct
698     TokenDword FtrPerCtxtPreemptionGranularityControl = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_PER_CTXT_PREEMPTION_GRANULARITY_CONTROL}; // Indirect field from anonymous struct
699     TokenDword FtrPPGTT = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_PPGTT};                                                                 // Indirect field from anonymous struct
700     TokenDword FtrIA32eGfxPTEs = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_IA32E_GFX_PTES};                                                 // Indirect field from anonymous struct
701     TokenDword FtrMemTypeMocsDeferPAT = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_MEM_TYPE_MOCS_DEFER_PAT};                                 // Indirect field from anonymous struct
702     TokenDword FtrPml4Support = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_PML4SUPPORT};                                                     // Indirect field from anonymous struct
703     TokenDword FtrSVM = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_SVM};                                                                     // Indirect field from anonymous struct
704     TokenDword FtrTileMappedResource = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_TILE_MAPPED_RESOURCE};                                     // Indirect field from anonymous struct
705     TokenDword FtrTranslationTable = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_TRANSLATION_TABLE};                                          // Indirect field from anonymous struct
706     TokenDword FtrUserModeTranslationTable = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_USER_MODE_TRANSLATION_TABLE};                        // Indirect field from anonymous struct
707     TokenDword FtrNullPages = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_NULL_PAGES};                                                        // Indirect field from anonymous struct
708     TokenDword FtrL3IACoherency = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_L3IACOHERENCY};                                                 // Indirect field from anonymous struct
709     TokenDword FtrEDram = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_EDRAM};                                                                 // Indirect field from anonymous struct
710     TokenDword FtrLLCBypass = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_LLCBYPASS};                                                         // Indirect field from anonymous struct
711     TokenDword FtrCrystalwell = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_CRYSTALWELL};                                                     // Indirect field from anonymous struct
712     TokenDword FtrCentralCachePolicy = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_CENTRAL_CACHE_POLICY};                                     // Indirect field from anonymous struct
713     TokenDword FtrIoMmuPageFaulting = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_IO_MMU_PAGE_FAULTING};                                      // Indirect field from anonymous struct
714     TokenDword FtrWddm2GpuMmu = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_WDDM2GPU_MMU};                                                    // Indirect field from anonymous struct
715     TokenDword FtrWddm2Svm = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_WDDM2SVM};                                                           // Indirect field from anonymous struct
716     TokenDword FtrStandardMipTailFormat = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_STANDARD_MIP_TAIL_FORMAT};                              // Indirect field from anonymous struct
717     TokenDword FtrWddm2_1_64kbPages = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_WDDM2_1_64KB_PAGES};                                        // Indirect field from anonymous struct
718     TokenDword FtrGttCacheInvalidation = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_GTT_CACHE_INVALIDATION};                                 // Indirect field from anonymous struct
719     TokenDword FtrE2ECompression = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_E2ECOMPRESSION};                                               // Indirect field from anonymous struct
720     TokenDword FtrLinearCCS = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_LINEAR_CCS};                                                        // Indirect field from anonymous struct
721     TokenDword FtrLocalMemory = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_LOCAL_MEMORY};                                                    // Indirect field from anonymous struct
722     TokenDword FtrPpgtt64KBWalkOptimization = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_PPGTT64KBWALK_OPTIMIZATION};                        // Indirect field from anonymous struct
723     TokenDword FtrTileY = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_TILE_Y};                                                                // Indirect field from anonymous struct
724     TokenDword FtrFlatPhysCCS = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_FLAT_PHYS_CCS};                                                   // Indirect field from anonymous struct
725     TokenDword FtrMultiTileArch = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_MULTI_TILE_ARCH};                                               // Indirect field from anonymous struct
726     TokenDword FtrLocalMemoryAllows4KB = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_LOCAL_MEMORY_ALLOWS4KB};                                 // Indirect field from anonymous struct
727     TokenDword FtrDisplayXTiling = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_DISPLAY_XTILING};                                              // Indirect field from anonymous struct
728     TokenDword FtrCameraCaptureCaching = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_CAMERA_CAPTURE_CACHING};                                 // Indirect field from anonymous struct
729     TokenDword FtrKmdDaf = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_KMD_DAF};                                                              // Indirect field from anonymous struct
730     TokenDword FtrFrameBufferLLC = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_FRAME_BUFFER_LLC};                                             // Indirect field from anonymous struct
731     TokenDword FtrDriverFLR = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_DRIVER_FLR};                                                        // Indirect field from anonymous struct
732     TokenDword FtrAstcLdr2D = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS37751__FTR_ASTC_LDR2D};                                                        // Indirect field from anonymous struct
733     TokenDword FtrAstcHdr2D = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS37751__FTR_ASTC_HDR2D};                                                        // Indirect field from anonymous struct
734     TokenDword FtrAstc3D = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS37751__FTR_ASTC3D};                                                               // Indirect field from anonymous struct
735     TokenDword FtrFbc = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS42853__FTR_FBC};                                                                     // Indirect field from anonymous struct
736     TokenDword FtrFbc2AddressTranslation = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS42853__FTR_FBC2ADDRESS_TRANSLATION};                              // Indirect field from anonymous struct
737     TokenDword FtrFbcBlitterTracking = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS42853__FTR_FBC_BLITTER_TRACKING};                                     // Indirect field from anonymous struct
738     TokenDword FtrFbcCpuTracking = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS42853__FTR_FBC_CPU_TRACKING};                                             // Indirect field from anonymous struct
739     TokenDword FtrVEBOX = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS42853__FTR_VEBOX};                                                                 // Indirect field from anonymous struct
740     TokenDword FtrRendComp = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS54736__FTR_REND_COMP};                                                          // Indirect field from anonymous struct
741     TokenDword FtrDisplayYTiling = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS54736__FTR_DISPLAY_YTILING};                                              // Indirect field from anonymous struct
742     TokenDword FtrS3D = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS66219__FTR_S3D};                                                                     // Indirect field from anonymous struct
743     TokenDword FtrDisplayEngineS3d = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS66219__FTR_DISPLAY_ENGINE_S3D};                                         // Indirect field from anonymous struct
744     TokenDword FtrSingleVeboxSlice = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS66219__FTR_SINGLE_VEBOX_SLICE};                                         // Indirect field from anonymous struct
745     TokenDword FtrSimulationMode = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS66219__FTR_SIMULATION_MODE};                                              // Indirect field from anonymous struct
746     TokenDword FtrEnableGuC = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS88095__FTR_ENABLE_GU_C};                                                       // Indirect field from anonymous struct
747     TokenDword FtrVgt = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS89755__FTR_VGT};                                                                     // Indirect field from anonymous struct
748     TokenDword FtrAssignedGpuTile = {TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS91822__FTR_ASSIGNED_GPU_TILE};                                           // Indirect field from anonymous struct
749 };
750 static_assert(std::is_standard_layout_v<TOKSTR__SKU_FEATURE_TABLE>, "");
751 static_assert(sizeof(TOKSTR__SKU_FEATURE_TABLE) % sizeof(uint32_t) == 0, "");
752 
753 struct TOKSTR__WA_TABLE {
754     TokenVariableLength base;
755 
756     TOKSTR__WA_TABLE(uint16_t tokenId, uint32_t elementId = 0)
757         : base(tokenId, elementId, offsetof(TOKSTR__WA_TABLE, Wa32bppTileY2DColorNoHAlign4) + sizeof(Wa32bppTileY2DColorNoHAlign4) - offsetof(TOKSTR__WA_TABLE, WaDoNotUseMIReportPerfCount), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
758 
TOKSTR__WA_TABLETOKSTR__WA_TABLE759     TOKSTR__WA_TABLE()
760         : base(TOK_S_WA_TABLE, 0, sizeof(*this) - sizeof(base)) {}
761 
762     TokenDword WaDoNotUseMIReportPerfCount = {TOK_FBD_WA_TABLE__WA_DO_NOT_USE_MIREPORT_PERF_COUNT};
763     TokenDword WaAlignIndexBuffer = {TOK_FBD_WA_TABLE__WA_ALIGN_INDEX_BUFFER};
764     TokenDword WaSendMIFLUSHBeforeVFE = {TOK_FBD_WA_TABLE__WA_SEND_MIFLUSHBEFORE_VFE};
765     TokenDword WaDisablePerCtxtPreemptionGranularityControl = {TOK_FBD_WA_TABLE__WA_DISABLE_PER_CTXT_PREEMPTION_GRANULARITY_CONTROL};
766     TokenDword WaEnablePreemptionGranularityControlByUMD = {TOK_FBD_WA_TABLE__WA_ENABLE_PREEMPTION_GRANULARITY_CONTROL_BY_UMD};
767     TokenDword WaDisableLSQCROPERFforOCL = {TOK_FBD_WA_TABLE__WA_DISABLE_LSQCROPERFFOR_OCL};
768     TokenDword WaValign2For96bppFormats = {TOK_FBD_WA_TABLE__WA_VALIGN2FOR96BPP_FORMATS};
769     TokenDword WaValign2ForR8G8B8UINTFormat = {TOK_FBD_WA_TABLE__WA_VALIGN2FOR_R8G8B8UINTFORMAT};
770     TokenDword WaReportPerfCountUseGlobalContextID = {TOK_FBD_WA_TABLE__WA_REPORT_PERF_COUNT_USE_GLOBAL_CONTEXT_ID};
771     TokenDword WaForcePcBbFullCfgRestore = {TOK_FBD_WA_TABLE__WA_FORCE_PC_BB_FULL_CFG_RESTORE};
772     TokenDword WaCSRUncachable = {TOK_FBD_WA_TABLE__WA_CSRUNCACHABLE};
773     TokenDword WaDisableFusedThreadScheduling = {TOK_FBD_WA_TABLE__WA_DISABLE_FUSED_THREAD_SCHEDULING};
774     TokenDword WaModifyVFEStateAfterGPGPUPreemption = {TOK_FBD_WA_TABLE__WA_MODIFY_VFESTATE_AFTER_GPGPUPREEMPTION};
775     TokenDword WaCursor16K = {TOK_FBD_WA_TABLE__WA_CURSOR16K};
776     TokenDword Wa8kAlignforAsyncFlip = {TOK_FBD_WA_TABLE__WA8K_ALIGNFOR_ASYNC_FLIP};
777     TokenDword Wa29BitDisplayAddrLimit = {TOK_FBD_WA_TABLE__WA29BIT_DISPLAY_ADDR_LIMIT};
778     TokenDword WaAlignContextImage = {TOK_FBD_WA_TABLE__WA_ALIGN_CONTEXT_IMAGE};
779     TokenDword WaForceGlobalGTT = {TOK_FBD_WA_TABLE__WA_FORCE_GLOBAL_GTT};
780     TokenDword WaReportPerfCountForceGlobalGTT = {TOK_FBD_WA_TABLE__WA_REPORT_PERF_COUNT_FORCE_GLOBAL_GTT};
781     TokenDword WaOaAddressTranslation = {TOK_FBD_WA_TABLE__WA_OA_ADDRESS_TRANSLATION};
782     TokenDword Wa2RowVerticalAlignment = {TOK_FBD_WA_TABLE__WA2ROW_VERTICAL_ALIGNMENT};
783     TokenDword WaPpgttAliasGlobalGttSpace = {TOK_FBD_WA_TABLE__WA_PPGTT_ALIAS_GLOBAL_GTT_SPACE};
784     TokenDword WaClearFenceRegistersAtDriverInit = {TOK_FBD_WA_TABLE__WA_CLEAR_FENCE_REGISTERS_AT_DRIVER_INIT};
785     TokenDword WaRestrictPitch128KB = {TOK_FBD_WA_TABLE__WA_RESTRICT_PITCH128KB};
786     TokenDword WaAvoidLLC = {TOK_FBD_WA_TABLE__WA_AVOID_LLC};
787     TokenDword WaAvoidL3 = {TOK_FBD_WA_TABLE__WA_AVOID_L3};
788     TokenDword Wa16TileFencesOnly = {TOK_FBD_WA_TABLE__WA16TILE_FENCES_ONLY};
789     TokenDword Wa16MBOABufferAlignment = {TOK_FBD_WA_TABLE__WA16MBOABUFFER_ALIGNMENT};
790     TokenDword WaTranslationTableUnavailable = {TOK_FBD_WA_TABLE__WA_TRANSLATION_TABLE_UNAVAILABLE};
791     TokenDword WaNoMinimizedTrivialSurfacePadding = {TOK_FBD_WA_TABLE__WA_NO_MINIMIZED_TRIVIAL_SURFACE_PADDING};
792     TokenDword WaNoBufferSamplerPadding = {TOK_FBD_WA_TABLE__WA_NO_BUFFER_SAMPLER_PADDING};
793     TokenDword WaSurfaceStatePlanarYOffsetAlignBy2 = {TOK_FBD_WA_TABLE__WA_SURFACE_STATE_PLANAR_YOFFSET_ALIGN_BY2};
794     TokenDword WaGttCachingOffByDefault = {TOK_FBD_WA_TABLE__WA_GTT_CACHING_OFF_BY_DEFAULT};
795     TokenDword WaTouchAllSvmMemory = {TOK_FBD_WA_TABLE__WA_TOUCH_ALL_SVM_MEMORY};
796     TokenDword WaIOBAddressMustBeValidInHwContext = {TOK_FBD_WA_TABLE__WA_IOBADDRESS_MUST_BE_VALID_IN_HW_CONTEXT};
797     TokenDword WaFlushTlbAfterCpuGgttWrites = {TOK_FBD_WA_TABLE__WA_FLUSH_TLB_AFTER_CPU_GGTT_WRITES};
798     TokenDword WaMsaa8xTileYDepthPitchAlignment = {TOK_FBD_WA_TABLE__WA_MSAA8X_TILE_YDEPTH_PITCH_ALIGNMENT};
799     TokenDword WaDisableNullPageAsDummy = {TOK_FBD_WA_TABLE__WA_DISABLE_NULL_PAGE_AS_DUMMY};
800     TokenDword WaUseVAlign16OnTileXYBpp816 = {TOK_FBD_WA_TABLE__WA_USE_VALIGN16ON_TILE_XYBPP816};
801     TokenDword WaGttPat0 = {TOK_FBD_WA_TABLE__WA_GTT_PAT0};
802     TokenDword WaGttPat0WB = {TOK_FBD_WA_TABLE__WA_GTT_PAT0WB};
803     TokenDword WaMemTypeIsMaxOfPatAndMocs = {TOK_FBD_WA_TABLE__WA_MEM_TYPE_IS_MAX_OF_PAT_AND_MOCS};
804     TokenDword WaGttPat0GttWbOverOsIommuEllcOnly = {TOK_FBD_WA_TABLE__WA_GTT_PAT0GTT_WB_OVER_OS_IOMMU_ELLC_ONLY};
805     TokenDword WaAddDummyPageForDisplayPrefetch = {TOK_FBD_WA_TABLE__WA_ADD_DUMMY_PAGE_FOR_DISPLAY_PREFETCH};
806     TokenDword WaDefaultTile4 = {TOK_FBD_WA_TABLE__WA_DEFAULT_TILE4};
807     TokenDword WaLLCCachingUnsupported = {TOK_FBD_WA_TABLE__WA_LLCCACHING_UNSUPPORTED};
808     TokenDword WaDoubleFastClearWidthAlignment = {TOK_FBD_WA_TABLE__WA_DOUBLE_FAST_CLEAR_WIDTH_ALIGNMENT};
809     TokenDword WaCompressedResourceRequiresConstVA21 = {TOK_FBD_WA_TABLE__WA_COMPRESSED_RESOURCE_REQUIRES_CONST_VA21};
810     TokenDword WaDisregardPlatformChecks = {TOK_FBD_WA_TABLE__WA_DISREGARD_PLATFORM_CHECKS};
811     TokenDword WaLosslessCompressionSurfaceStride = {TOK_FBD_WA_TABLE__WA_LOSSLESS_COMPRESSION_SURFACE_STRIDE};
812     TokenDword WaFbcLinearSurfaceStride = {TOK_FBD_WA_TABLE__WA_FBC_LINEAR_SURFACE_STRIDE};
813     TokenDword Wa4kAlignUVOffsetNV12LinearSurface = {TOK_FBD_WA_TABLE__WA4K_ALIGN_UVOFFSET_NV12LINEAR_SURFACE};
814     TokenDword WaAstcCorruptionForOddCompressedBlockSizeX = {TOK_FBD_WA_TABLE__WA_ASTC_CORRUPTION_FOR_ODD_COMPRESSED_BLOCK_SIZE_X};
815     TokenDword WaAuxTable16KGranular = {TOK_FBD_WA_TABLE__WA_AUX_TABLE16KGRANULAR};
816     TokenDword WaEncryptedEdramOnlyPartials = {TOK_FBD_WA_TABLE__WA_ENCRYPTED_EDRAM_ONLY_PARTIALS};
817     TokenDword WaDisableEdramForDisplayRT = {TOK_FBD_WA_TABLE__WA_DISABLE_EDRAM_FOR_DISPLAY_RT};
818     TokenDword WaLimit128BMediaCompr = {TOK_FBD_WA_TABLE__WA_LIMIT128BMEDIA_COMPR};
819     TokenDword WaUntypedBufferCompression = {TOK_FBD_WA_TABLE__WA_UNTYPED_BUFFER_COMPRESSION};
820     TokenDword WaSamplerCacheFlushBetweenRedescribedSurfaceReads = {TOK_FBD_WA_TABLE__WA_SAMPLER_CACHE_FLUSH_BETWEEN_REDESCRIBED_SURFACE_READS};
821     TokenDword WaAlignYUVResourceToLCU = {TOK_FBD_WA_TABLE__WA_ALIGN_YUVRESOURCE_TO_LCU};
822     TokenDword Wa32bppTileY2DColorNoHAlign4 = {TOK_FBD_WA_TABLE__WA32BPP_TILE_Y2DCOLOR_NO_HALIGN4};
823 };
824 static_assert(std::is_standard_layout_v<TOKSTR__WA_TABLE>, "");
825 static_assert(sizeof(TOKSTR__WA_TABLE) % sizeof(uint32_t) == 0, "");
826 
827 struct TOKSTR_PLATFORM_STR {
828     TokenVariableLength base;
829 
830     TOKSTR_PLATFORM_STR(uint16_t tokenId, uint32_t elementId = 0)
831         : base(tokenId, elementId, offsetof(TOKSTR_PLATFORM_STR, eGTType) + sizeof(eGTType) - offsetof(TOKSTR_PLATFORM_STR, eProductFamily), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
832 
TOKSTR_PLATFORM_STRTOKSTR_PLATFORM_STR833     TOKSTR_PLATFORM_STR()
834         : base(TOK_S_PLATFORM_STR, 0, sizeof(*this) - sizeof(base)) {}
835 
836     TokenDword eProductFamily = {TOK_FE_PLATFORM_STR__E_PRODUCT_FAMILY};
837     TokenDword ePCHProductFamily = {TOK_FE_PLATFORM_STR__E_PCHPRODUCT_FAMILY};
838     TokenDword eDisplayCoreFamily = {TOK_FE_PLATFORM_STR__E_DISPLAY_CORE_FAMILY};
839     TokenDword eRenderCoreFamily = {TOK_FE_PLATFORM_STR__E_RENDER_CORE_FAMILY};
840     TokenDword ePlatformType = {TOK_FE_PLATFORM_STR__E_PLATFORM_TYPE};
841     TokenDword usDeviceID = {TOK_FBW_PLATFORM_STR__US_DEVICE_ID};
842     TokenDword usRevId = {TOK_FBW_PLATFORM_STR__US_REV_ID};
843     TokenDword usDeviceID_PCH = {TOK_FBW_PLATFORM_STR__US_DEVICE_ID_PCH};
844     TokenDword usRevId_PCH = {TOK_FBW_PLATFORM_STR__US_REV_ID_PCH};
845     TokenDword eGTType = {TOK_FE_PLATFORM_STR__E_GTTYPE};
846 };
847 static_assert(std::is_standard_layout_v<TOKSTR_PLATFORM_STR>, "");
848 static_assert(sizeof(TOKSTR_PLATFORM_STR) % sizeof(uint32_t) == 0, "");
849 
850 struct TOKSTR___KMD_CAPS_INFO {
851     TokenVariableLength base;
852 
853     TOKSTR___KMD_CAPS_INFO(uint16_t tokenId, uint32_t elementId = 0)
854         : base(tokenId, elementId, offsetof(TOKSTR___KMD_CAPS_INFO, DriverStoreEnabled) + sizeof(DriverStoreEnabled) - offsetof(TOKSTR___KMD_CAPS_INFO, Gamma_Rgb256x3x16), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
855 
TOKSTR___KMD_CAPS_INFOTOKSTR___KMD_CAPS_INFO856     TOKSTR___KMD_CAPS_INFO()
857         : base(TOK_S_KMD_CAPS_INFO, 0, sizeof(*this) - sizeof(base)) {}
858 
859     TokenDword Gamma_Rgb256x3x16 = {TOK_FBD_KMD_CAPS_INFO__GAMMA_RGB256X3X16};
860     TokenDword GDIAcceleration = {TOK_FBD_KMD_CAPS_INFO__GDIACCELERATION};
861     TokenDword OsManagedHwContext = {TOK_FBD_KMD_CAPS_INFO__OS_MANAGED_HW_CONTEXT};
862     TokenDword GraphicsPreemptionGranularity = {TOK_FBD_KMD_CAPS_INFO__GRAPHICS_PREEMPTION_GRANULARITY};
863     TokenDword ComputePreemptionGranularity = {TOK_FBD_KMD_CAPS_INFO__COMPUTE_PREEMPTION_GRANULARITY};
864     TokenDword InstrumentationIsEnabled = {TOK_FBD_KMD_CAPS_INFO__INSTRUMENTATION_IS_ENABLED};
865     TokenDword DriverStoreEnabled = {TOK_FBD_KMD_CAPS_INFO__DRIVER_STORE_ENABLED};
866 };
867 static_assert(std::is_standard_layout_v<TOKSTR___KMD_CAPS_INFO>, "");
868 static_assert(sizeof(TOKSTR___KMD_CAPS_INFO) % sizeof(uint32_t) == 0, "");
869 
870 struct TOKSTR___KMD_OVERLAY_OVERRIDE {
871     TokenVariableLength base;
872 
873     TOKSTR___KMD_OVERLAY_OVERRIDE(uint16_t tokenId, uint32_t elementId = 0)
874         : base(tokenId, elementId, offsetof(TOKSTR___KMD_OVERLAY_OVERRIDE, YUY2Overlay) + sizeof(YUY2Overlay) - offsetof(TOKSTR___KMD_OVERLAY_OVERRIDE, OverrideOverlayCaps), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
875 
TOKSTR___KMD_OVERLAY_OVERRIDETOKSTR___KMD_OVERLAY_OVERRIDE876     TOKSTR___KMD_OVERLAY_OVERRIDE()
877         : base(TOK_S_KMD_OVERLAY_OVERRIDE, 0, sizeof(*this) - sizeof(base)) {}
878 
879     TokenDword OverrideOverlayCaps = {TOK_FBD_KMD_OVERLAY_OVERRIDE__OVERRIDE_OVERLAY_CAPS};
880     TokenDword RGBOverlay = {TOK_FBD_KMD_OVERLAY_OVERRIDE__RGBOVERLAY};
881     TokenDword YUY2Overlay = {TOK_FBD_KMD_OVERLAY_OVERRIDE__YUY2OVERLAY};
882 };
883 static_assert(std::is_standard_layout_v<TOKSTR___KMD_OVERLAY_OVERRIDE>, "");
884 static_assert(sizeof(TOKSTR___KMD_OVERLAY_OVERRIDE) % sizeof(uint32_t) == 0, "");
885 
886 struct TOKSTR___KMD_OVERLAY_CAPS_INFO {
887     TokenVariableLength base;
888 
889     TOKSTR___KMD_OVERLAY_CAPS_INFO(uint16_t tokenId, uint32_t elementId = 0)
890         : base(tokenId, elementId, offsetof(TOKSTR___KMD_OVERLAY_CAPS_INFO, MaxHWScalerStride) + sizeof(MaxHWScalerStride) - offsetof(TOKSTR___KMD_OVERLAY_CAPS_INFO, Caps), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
891 
TOKSTR___KMD_OVERLAY_CAPS_INFOTOKSTR___KMD_OVERLAY_CAPS_INFO892     TOKSTR___KMD_OVERLAY_CAPS_INFO()
893         : base(TOK_S_KMD_OVERLAY_CAPS_INFO, 0, sizeof(*this) - sizeof(base)) {}
894 
895     struct TOKSTR_ANONYMOUS5171 {
896         TokenVariableLength base;
897 
898         TOKSTR_ANONYMOUS5171(uint16_t tokenId, uint32_t elementId = 0)
899             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS5171, CapsValue) + sizeof(CapsValue) - offsetof(TOKSTR_ANONYMOUS5171, Caps), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
900 
TOKSTR_ANONYMOUS5171TOKSTR___KMD_OVERLAY_CAPS_INFO::TOKSTR_ANONYMOUS5171901         TOKSTR_ANONYMOUS5171()
902             : base(TOK_S_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171, 0, sizeof(*this) - sizeof(base)) {}
903 
904         struct TOKSTR_ANONYMOUS5191 {
905             TokenVariableLength base;
906 
907             TOKSTR_ANONYMOUS5191(uint16_t tokenId, uint32_t elementId = 0)
908                 : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS5191, StretchY) + sizeof(StretchY) - offsetof(TOKSTR_ANONYMOUS5191, FullRangeRGB), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
909 
TOKSTR_ANONYMOUS5191TOKSTR___KMD_OVERLAY_CAPS_INFO::TOKSTR_ANONYMOUS5171::TOKSTR_ANONYMOUS5191910             TOKSTR_ANONYMOUS5191()
911                 : base(TOK_S_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__ANONYMOUS5191, 0, sizeof(*this) - sizeof(base)) {}
912 
913             TokenDword FullRangeRGB = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__ANONYMOUS5191__FULL_RANGE_RGB};
914             TokenDword LimitedRangeRGB = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__ANONYMOUS5191__LIMITED_RANGE_RGB};
915             TokenDword YCbCr_BT601 = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__ANONYMOUS5191__YCB_CR_BT601};
916             TokenDword YCbCr_BT709 = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__ANONYMOUS5191__YCB_CR_BT709};
917             TokenDword YCbCr_BT601_xvYCC = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__ANONYMOUS5191__YCB_CR_BT601_XV_YCC};
918             TokenDword YCbCr_BT709_xvYCC = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__ANONYMOUS5191__YCB_CR_BT709_XV_YCC};
919             TokenDword StretchX = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__ANONYMOUS5191__STRETCH_X};
920             TokenDword StretchY = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__ANONYMOUS5191__STRETCH_Y};
921         };
922         static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS5191>, "");
923         static_assert(sizeof(TOKSTR_ANONYMOUS5191) % sizeof(uint32_t) == 0, "");
924 
925         TOKSTR_ANONYMOUS5191 Caps = {TOK_FS_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__CAPS};
926         TokenDword CapsValue = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__CAPS_VALUE};
927     };
928     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS5171>, "");
929     static_assert(sizeof(TOKSTR_ANONYMOUS5171) % sizeof(uint32_t) == 0, "");
930 
931     TOKSTR_ANONYMOUS5171::TOKSTR_ANONYMOUS5191 Caps = {TOK_FS_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__CAPS}; // Indirect field from anonymous struct
932     TokenDword CapsValue = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__ANONYMOUS5171__CAPS_VALUE};                     // Indirect field from anonymous struct
933     TOKSTR___KMD_OVERLAY_OVERRIDE OVOverride = {TOK_FS_KMD_OVERLAY_CAPS_INFO__OVOVERRIDE};
934     TokenDword MaxOverlayDisplayWidth = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__MAX_OVERLAY_DISPLAY_WIDTH};
935     TokenDword MaxOverlayDisplayHeight = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__MAX_OVERLAY_DISPLAY_HEIGHT};
936     TokenDword HWScalerExists = {TOK_FBC_KMD_OVERLAY_CAPS_INFO__HWSCALER_EXISTS};
937     TokenDword MaxHWScalerStride = {TOK_FBD_KMD_OVERLAY_CAPS_INFO__MAX_HWSCALER_STRIDE};
938 };
939 static_assert(std::is_standard_layout_v<TOKSTR___KMD_OVERLAY_CAPS_INFO>, "");
940 static_assert(sizeof(TOKSTR___KMD_OVERLAY_CAPS_INFO) % sizeof(uint32_t) == 0, "");
941 
942 struct TOKSTR_FRAME_RATE {
943     TokenVariableLength base;
944 
945     TOKSTR_FRAME_RATE(uint16_t tokenId, uint32_t elementId = 0)
946         : base(tokenId, elementId, offsetof(TOKSTR_FRAME_RATE, uiDenominator) + sizeof(uiDenominator) - offsetof(TOKSTR_FRAME_RATE, uiNumerator), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
947 
TOKSTR_FRAME_RATETOKSTR_FRAME_RATE948     TOKSTR_FRAME_RATE()
949         : base(TOK_S_FRAME_RATE, 0, sizeof(*this) - sizeof(base)) {}
950 
951     TokenDword uiNumerator = {TOK_FBD_FRAME_RATE__UI_NUMERATOR};
952     TokenDword uiDenominator = {TOK_FBD_FRAME_RATE__UI_DENOMINATOR};
953 };
954 static_assert(std::is_standard_layout_v<TOKSTR_FRAME_RATE>, "");
955 static_assert(sizeof(TOKSTR_FRAME_RATE) % sizeof(uint32_t) == 0, "");
956 
957 struct TOKSTR__KM_DEFERRED_WAIT_INFO {
958     TokenVariableLength base;
959 
960     TOKSTR__KM_DEFERRED_WAIT_INFO(uint16_t tokenId, uint32_t elementId = 0)
961         : base(tokenId, elementId, offsetof(TOKSTR__KM_DEFERRED_WAIT_INFO, ActiveDisplay) + sizeof(ActiveDisplay) - offsetof(TOKSTR__KM_DEFERRED_WAIT_INFO, FeatureSupported), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
962 
TOKSTR__KM_DEFERRED_WAIT_INFOTOKSTR__KM_DEFERRED_WAIT_INFO963     TOKSTR__KM_DEFERRED_WAIT_INFO()
964         : base(TOK_S_KM_DEFERRED_WAIT_INFO, 0, sizeof(*this) - sizeof(base)) {}
965 
966     TokenDword FeatureSupported = {TOK_FBD_KM_DEFERRED_WAIT_INFO__FEATURE_SUPPORTED};
967     TokenDword ActiveDisplay = {TOK_FBD_KM_DEFERRED_WAIT_INFO__ACTIVE_DISPLAY};
968 };
969 static_assert(std::is_standard_layout_v<TOKSTR__KM_DEFERRED_WAIT_INFO>, "");
970 static_assert(sizeof(TOKSTR__KM_DEFERRED_WAIT_INFO) % sizeof(uint32_t) == 0, "");
971 
972 struct TOKSTR___GMM_GFX_PARTITIONING {
973     TokenVariableLength base;
974 
975     TOKSTR___GMM_GFX_PARTITIONING(uint16_t tokenId, uint32_t elementId = 0)
976         : base(tokenId, elementId, offsetof(TOKSTR___GMM_GFX_PARTITIONING, Heap32) + sizeof(Heap32) - offsetof(TOKSTR___GMM_GFX_PARTITIONING, Standard), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
977 
TOKSTR___GMM_GFX_PARTITIONINGTOKSTR___GMM_GFX_PARTITIONING978     TOKSTR___GMM_GFX_PARTITIONING()
979         : base(TOK_S_GMM_GFX_PARTITIONING, 0, sizeof(*this) - sizeof(base)) {}
980 
981     struct TOKSTR_ANONYMOUS7117 {
982         TokenVariableLength base;
983 
984         TOKSTR_ANONYMOUS7117(uint16_t tokenId, uint32_t elementId = 0)
985             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS7117, Limit) + sizeof(Limit) - offsetof(TOKSTR_ANONYMOUS7117, Base), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
986 
TOKSTR_ANONYMOUS7117TOKSTR___GMM_GFX_PARTITIONING::TOKSTR_ANONYMOUS7117987         TOKSTR_ANONYMOUS7117()
988             : base(TOK_S_GMM_GFX_PARTITIONING__ANONYMOUS7117, 0, sizeof(*this) - sizeof(base)) {}
989 
990         TokenQword Base = {TOK_FBQ_GMM_GFX_PARTITIONING__ANONYMOUS7117__BASE};
991         TokenQword Limit = {TOK_FBQ_GMM_GFX_PARTITIONING__ANONYMOUS7117__LIMIT};
992     };
993     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS7117>, "");
994     static_assert(sizeof(TOKSTR_ANONYMOUS7117) % sizeof(uint32_t) == 0, "");
995 
996     TOKSTR_ANONYMOUS7117 Standard = {TOK_FS_GMM_GFX_PARTITIONING__STANDARD};
997     TOKSTR_ANONYMOUS7117 Standard64KB = {TOK_FS_GMM_GFX_PARTITIONING__STANDARD64KB};
998     TOKSTR_ANONYMOUS7117 SVM = {TOK_FS_GMM_GFX_PARTITIONING__SVM};
999     TOKSTR_ANONYMOUS7117 Heap32[4] = {{TOK_FS_GMM_GFX_PARTITIONING__HEAP32, 0}, {TOK_FS_GMM_GFX_PARTITIONING__HEAP32, 1}, {TOK_FS_GMM_GFX_PARTITIONING__HEAP32, 2}, {TOK_FS_GMM_GFX_PARTITIONING__HEAP32, 3}};
1000 };
1001 static_assert(std::is_standard_layout_v<TOKSTR___GMM_GFX_PARTITIONING>, "");
1002 static_assert(sizeof(TOKSTR___GMM_GFX_PARTITIONING) % sizeof(uint32_t) == 0, "");
1003 
1004 struct TOKSTR__ADAPTER_BDF_ {
1005     TokenVariableLength base;
1006 
1007     TOKSTR__ADAPTER_BDF_(uint16_t tokenId, uint32_t elementId = 0)
1008         : base(tokenId, elementId, offsetof(TOKSTR__ADAPTER_BDF_, Data) + sizeof(Data) - offsetof(TOKSTR__ADAPTER_BDF_, Bus), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1009 
TOKSTR__ADAPTER_BDF_TOKSTR__ADAPTER_BDF_1010     TOKSTR__ADAPTER_BDF_()
1011         : base(TOK_S_ADAPTER_BDF, 0, sizeof(*this) - sizeof(base)) {}
1012 
1013     struct TOKSTR_ANONYMOUS8173 {
1014         TokenVariableLength base;
1015 
1016         TOKSTR_ANONYMOUS8173(uint16_t tokenId, uint32_t elementId = 0)
1017             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS8173, Data) + sizeof(Data) - offsetof(TOKSTR_ANONYMOUS8173, Bus), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1018 
TOKSTR_ANONYMOUS8173TOKSTR__ADAPTER_BDF_::TOKSTR_ANONYMOUS81731019         TOKSTR_ANONYMOUS8173()
1020             : base(TOK_S_ADAPTER_BDF___ANONYMOUS8173, 0, sizeof(*this) - sizeof(base)) {}
1021 
1022         struct TOKSTR_ANONYMOUS8193 {
1023             TokenVariableLength base;
1024 
1025             TOKSTR_ANONYMOUS8193(uint16_t tokenId, uint32_t elementId = 0)
1026                 : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS8193, Function) + sizeof(Function) - offsetof(TOKSTR_ANONYMOUS8193, Bus), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1027 
TOKSTR_ANONYMOUS8193TOKSTR__ADAPTER_BDF_::TOKSTR_ANONYMOUS8173::TOKSTR_ANONYMOUS81931028             TOKSTR_ANONYMOUS8193()
1029                 : base(TOK_S_ADAPTER_BDF___ANONYMOUS8173__ANONYMOUS8193, 0, sizeof(*this) - sizeof(base)) {}
1030 
1031             TokenDword Bus = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__ANONYMOUS8193__BUS};
1032             TokenDword Device = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__ANONYMOUS8193__DEVICE};
1033             TokenDword Function = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__ANONYMOUS8193__FUNCTION};
1034         };
1035         static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS8193>, "");
1036         static_assert(sizeof(TOKSTR_ANONYMOUS8193) % sizeof(uint32_t) == 0, "");
1037 
1038         TokenDword Bus = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__ANONYMOUS8193__BUS};           // Indirect field from anonymous struct
1039         TokenDword Device = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__ANONYMOUS8193__DEVICE};     // Indirect field from anonymous struct
1040         TokenDword Function = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__ANONYMOUS8193__FUNCTION}; // Indirect field from anonymous struct
1041         TokenDword Data = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__DATA};
1042     };
1043     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS8173>, "");
1044     static_assert(sizeof(TOKSTR_ANONYMOUS8173) % sizeof(uint32_t) == 0, "");
1045 
1046     TokenDword Bus = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__ANONYMOUS8193__BUS};           // Indirect field from anonymous struct
1047     TokenDword Device = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__ANONYMOUS8193__DEVICE};     // Indirect field from anonymous struct
1048     TokenDword Function = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__ANONYMOUS8193__FUNCTION}; // Indirect field from anonymous struct
1049     TokenDword Data = {TOK_FBD_ADAPTER_BDF___ANONYMOUS8173__DATA};                        // Indirect field from anonymous struct
1050 };
1051 static_assert(std::is_standard_layout_v<TOKSTR__ADAPTER_BDF_>, "");
1052 static_assert(sizeof(TOKSTR__ADAPTER_BDF_) % sizeof(uint32_t) == 0, "");
1053 
1054 struct TOKSTR__ADAPTER_INFO {
1055     TokenVariableLength base;
1056 
1057     TOKSTR__ADAPTER_INFO(uint16_t tokenId, uint32_t elementId = 0)
1058         : base(tokenId, elementId, offsetof(TOKSTR__ADAPTER_INFO, stAdapterBDF) + sizeof(stAdapterBDF) - offsetof(TOKSTR__ADAPTER_INFO, KmdVersionInfo), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1059 
TOKSTR__ADAPTER_INFOTOKSTR__ADAPTER_INFO1060     TOKSTR__ADAPTER_INFO()
1061         : base(TOK_S_ADAPTER_INFO, 0, sizeof(*this) - sizeof(base)) {}
1062 
1063     TokenDword KmdVersionInfo = {TOK_FBD_ADAPTER_INFO__KMD_VERSION_INFO};
1064     TokenArray<128> DeviceRegistryPath = {TOK_FBC_ADAPTER_INFO__DEVICE_REGISTRY_PATH, 8, 512};
1065     TOKSTR_PLATFORM_STR GfxPlatform = {TOK_FS_ADAPTER_INFO__GFX_PLATFORM};
1066     TOKSTR__SKU_FEATURE_TABLE SkuTable = {TOK_FS_ADAPTER_INFO__SKU_TABLE};
1067     TOKSTR__WA_TABLE WaTable = {TOK_FS_ADAPTER_INFO__WA_TABLE};
1068     TokenDword GfxTimeStampFreq = {TOK_FBD_ADAPTER_INFO__GFX_TIME_STAMP_FREQ};
1069     TokenDword GfxCoreFrequency = {TOK_FBD_ADAPTER_INFO__GFX_CORE_FREQUENCY};
1070     TokenDword FSBFrequency = {TOK_FBD_ADAPTER_INFO__FSBFREQUENCY};
1071     TokenDword MinRenderFreq = {TOK_FBD_ADAPTER_INFO__MIN_RENDER_FREQ};
1072     TokenDword MaxRenderFreq = {TOK_FBD_ADAPTER_INFO__MAX_RENDER_FREQ};
1073     TokenDword PackageTdp = {TOK_FBD_ADAPTER_INFO__PACKAGE_TDP};
1074     TokenDword MaxFillRate = {TOK_FBD_ADAPTER_INFO__MAX_FILL_RATE};
1075     TokenDword NumberOfEUs = {TOK_FBD_ADAPTER_INFO__NUMBER_OF_EUS};
1076     TokenDword dwReleaseTarget = {TOK_FBD_ADAPTER_INFO__DW_RELEASE_TARGET};
1077     TokenDword SizeOfDmaBuffer = {TOK_FBD_ADAPTER_INFO__SIZE_OF_DMA_BUFFER};
1078     TokenDword PatchLocationListSize = {TOK_FBD_ADAPTER_INFO__PATCH_LOCATION_LIST_SIZE};
1079     TokenDword AllocationListSize = {TOK_FBD_ADAPTER_INFO__ALLOCATION_LIST_SIZE};
1080     TokenDword SmallPatchLocationListSize = {TOK_FBD_ADAPTER_INFO__SMALL_PATCH_LOCATION_LIST_SIZE};
1081     TokenDword DefaultCmdBufferSize = {TOK_FBD_ADAPTER_INFO__DEFAULT_CMD_BUFFER_SIZE};
1082     TokenQword GfxMemorySize = {TOK_FBQ_ADAPTER_INFO__GFX_MEMORY_SIZE};
1083     TokenDword SystemMemorySize = {TOK_FBD_ADAPTER_INFO__SYSTEM_MEMORY_SIZE};
1084     TokenDword CacheLineSize = {TOK_FBD_ADAPTER_INFO__CACHE_LINE_SIZE};
1085     TokenDword ProcessorFamily = {TOK_FE_ADAPTER_INFO__PROCESSOR_FAMILY};
1086     TokenDword IsHTSupported = {TOK_FBC_ADAPTER_INFO__IS_HTSUPPORTED};
1087     TokenDword IsMutiCoreCpu = {TOK_FBC_ADAPTER_INFO__IS_MUTI_CORE_CPU};
1088     TokenDword IsVTDSupported = {TOK_FBC_ADAPTER_INFO__IS_VTDSUPPORTED};
1089     TokenDword RegistryPathLength = {TOK_FBD_ADAPTER_INFO__REGISTRY_PATH_LENGTH};
1090     TokenQword DedicatedVideoMemory = {TOK_FBQ_ADAPTER_INFO__DEDICATED_VIDEO_MEMORY};
1091     TokenQword SystemSharedMemory = {TOK_FBQ_ADAPTER_INFO__SYSTEM_SHARED_MEMORY};
1092     TokenQword SystemVideoMemory = {TOK_FBQ_ADAPTER_INFO__SYSTEM_VIDEO_MEMORY};
1093     TOKSTR_FRAME_RATE OutputFrameRate = {TOK_FS_ADAPTER_INFO__OUTPUT_FRAME_RATE};
1094     TOKSTR_FRAME_RATE InputFrameRate = {TOK_FS_ADAPTER_INFO__INPUT_FRAME_RATE};
1095     TOKSTR___KMD_CAPS_INFO Caps = {TOK_FS_ADAPTER_INFO__CAPS};
1096     TOKSTR___KMD_OVERLAY_CAPS_INFO OverlayCaps = {TOK_FS_ADAPTER_INFO__OVERLAY_CAPS};
1097     TOKSTR_GT_SYSTEM_INFO SystemInfo = {TOK_FS_ADAPTER_INFO__SYSTEM_INFO};
1098     TOKSTR__KM_DEFERRED_WAIT_INFO DeferredWaitInfo = {TOK_FS_ADAPTER_INFO__DEFERRED_WAIT_INFO};
1099     TOKSTR___GMM_GFX_PARTITIONING GfxPartition = {TOK_FS_ADAPTER_INFO__GFX_PARTITION};
1100     TOKSTR__ADAPTER_BDF_ stAdapterBDF = {TOK_FS_ADAPTER_INFO__ST_ADAPTER_BDF};
1101 };
1102 static_assert(std::is_standard_layout_v<TOKSTR__ADAPTER_INFO>, "");
1103 static_assert(sizeof(TOKSTR__ADAPTER_INFO) % sizeof(uint32_t) == 0, "");
1104 
1105 struct TOKSTR__CREATECONTEXT_PVTDATA {
1106     TokenVariableLength base;
1107 
1108     TOKSTR__CREATECONTEXT_PVTDATA(uint16_t tokenId, uint32_t elementId = 0)
1109         : base(tokenId, elementId, offsetof(TOKSTR__CREATECONTEXT_PVTDATA, NoRingFlushes) + sizeof(NoRingFlushes) - offsetof(TOKSTR__CREATECONTEXT_PVTDATA, pHwContextId), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1110 
TOKSTR__CREATECONTEXT_PVTDATATOKSTR__CREATECONTEXT_PVTDATA1111     TOKSTR__CREATECONTEXT_PVTDATA()
1112         : base(TOK_S_CREATECONTEXT_PVTDATA, 0, sizeof(*this) - sizeof(base)) {}
1113 
1114     struct TOKSTR_ANONYMOUS18449 {
1115         TokenVariableLength base;
1116 
1117         TOKSTR_ANONYMOUS18449(uint16_t tokenId, uint32_t elementId = 0)
1118             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS18449, pHwContextId) + sizeof(pHwContextId) - offsetof(TOKSTR_ANONYMOUS18449, pHwContextId), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1119 
TOKSTR_ANONYMOUS18449TOKSTR__CREATECONTEXT_PVTDATA::TOKSTR_ANONYMOUS184491120         TOKSTR_ANONYMOUS18449()
1121             : base(TOK_S_CREATECONTEXT_PVTDATA__ANONYMOUS18449, 0, sizeof(*this) - sizeof(base)) {}
1122 
1123         TokenPointer pHwContextId = {TOK_PBQ_CREATECONTEXT_PVTDATA__ANONYMOUS18449__P_HW_CONTEXT_ID};
1124     };
1125     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS18449>, "");
1126     static_assert(sizeof(TOKSTR_ANONYMOUS18449) % sizeof(uint32_t) == 0, "");
1127 
1128     TokenPointer pHwContextId = {TOK_PBQ_CREATECONTEXT_PVTDATA__ANONYMOUS18449__P_HW_CONTEXT_ID}; // Indirect field from anonymous struct
1129     TokenDword NumberOfHwContextIds = {TOK_FBD_CREATECONTEXT_PVTDATA__NUMBER_OF_HW_CONTEXT_IDS};
1130     TokenDword ProcessID = {TOK_FBD_CREATECONTEXT_PVTDATA__PROCESS_ID};
1131     TokenDword IsProtectedProcess = {TOK_FBC_CREATECONTEXT_PVTDATA__IS_PROTECTED_PROCESS};
1132     TokenDword IsDwm = {TOK_FBC_CREATECONTEXT_PVTDATA__IS_DWM};
1133     TokenDword IsMediaUsage = {TOK_FBC_CREATECONTEXT_PVTDATA__IS_MEDIA_USAGE};
1134     TokenDword GpuVAContext = {TOK_FBC_CREATECONTEXT_PVTDATA__GPU_VACONTEXT};
1135     TokenDword NoRingFlushes = {TOK_FBC_CREATECONTEXT_PVTDATA__NO_RING_FLUSHES};
1136 };
1137 static_assert(std::is_standard_layout_v<TOKSTR__CREATECONTEXT_PVTDATA>, "");
1138 static_assert(sizeof(TOKSTR__CREATECONTEXT_PVTDATA) % sizeof(uint32_t) == 0, "");
1139 
1140 struct TOKSTR_COMMAND_BUFFER_HEADER_REC {
1141     TokenVariableLength base;
1142 
1143     TOKSTR_COMMAND_BUFFER_HEADER_REC(uint16_t tokenId, uint32_t elementId = 0)
1144         : base(tokenId, elementId, offsetof(TOKSTR_COMMAND_BUFFER_HEADER_REC, MonitorFenceValue) + sizeof(MonitorFenceValue) - offsetof(TOKSTR_COMMAND_BUFFER_HEADER_REC, UmdContextType), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1145 
TOKSTR_COMMAND_BUFFER_HEADER_RECTOKSTR_COMMAND_BUFFER_HEADER_REC1146     TOKSTR_COMMAND_BUFFER_HEADER_REC()
1147         : base(TOK_S_COMMAND_BUFFER_HEADER_REC, 0, sizeof(*this) - sizeof(base)) {}
1148 
1149     struct TOKSTR_ANONYMOUS32401 {
1150         TokenVariableLength base;
1151 
1152         TOKSTR_ANONYMOUS32401(uint16_t tokenId, uint32_t elementId = 0)
1153             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS32401, Tag) + sizeof(Tag) - offsetof(TOKSTR_ANONYMOUS32401, Enable), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1154 
TOKSTR_ANONYMOUS32401TOKSTR_COMMAND_BUFFER_HEADER_REC::TOKSTR_ANONYMOUS324011155         TOKSTR_ANONYMOUS32401()
1156             : base(TOK_S_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401, 0, sizeof(*this) - sizeof(base)) {}
1157 
1158         struct TOKSTR_ANONYMOUS32457 {
1159             TokenVariableLength base;
1160 
1161             TOKSTR_ANONYMOUS32457(uint16_t tokenId, uint32_t elementId = 0)
1162                 : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS32457, Value) + sizeof(Value) - offsetof(TOKSTR_ANONYMOUS32457, Address), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1163 
TOKSTR_ANONYMOUS32457TOKSTR_COMMAND_BUFFER_HEADER_REC::TOKSTR_ANONYMOUS32401::TOKSTR_ANONYMOUS324571164             TOKSTR_ANONYMOUS32457()
1165                 : base(TOK_S_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457, 0, sizeof(*this) - sizeof(base)) {}
1166 
1167             struct TOKSTR_ANONYMOUS32501 {
1168                 TokenVariableLength base;
1169 
1170                 TOKSTR_ANONYMOUS32501(uint16_t tokenId, uint32_t elementId = 0)
1171                     : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS32501, GfxAddress) + sizeof(GfxAddress) - offsetof(TOKSTR_ANONYMOUS32501, Allocation), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1172 
TOKSTR_ANONYMOUS32501TOKSTR_COMMAND_BUFFER_HEADER_REC::TOKSTR_ANONYMOUS32401::TOKSTR_ANONYMOUS32457::TOKSTR_ANONYMOUS325011173                 TOKSTR_ANONYMOUS32501()
1174                     : base(TOK_S_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__ANONYMOUS32501, 0, sizeof(*this) - sizeof(base)) {}
1175 
1176                 struct TOKSTR_ANONYMOUS32537 {
1177                     TokenVariableLength base;
1178 
1179                     TOKSTR_ANONYMOUS32537(uint16_t tokenId, uint32_t elementId = 0)
1180                         : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS32537, Offset) + sizeof(Offset) - offsetof(TOKSTR_ANONYMOUS32537, Index), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1181 
TOKSTR_ANONYMOUS32537TOKSTR_COMMAND_BUFFER_HEADER_REC::TOKSTR_ANONYMOUS32401::TOKSTR_ANONYMOUS32457::TOKSTR_ANONYMOUS32501::TOKSTR_ANONYMOUS325371182                     TOKSTR_ANONYMOUS32537()
1183                         : base(TOK_S_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__ANONYMOUS32501__ANONYMOUS32537, 0, sizeof(*this) - sizeof(base)) {}
1184 
1185                     TokenDword Index = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__ANONYMOUS32501__ANONYMOUS32537__INDEX};
1186                     TokenDword Offset = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__ANONYMOUS32501__ANONYMOUS32537__OFFSET};
1187                 };
1188                 static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS32537>, "");
1189                 static_assert(sizeof(TOKSTR_ANONYMOUS32537) % sizeof(uint32_t) == 0, "");
1190 
1191                 struct TOKSTR_ANONYMOUS32680 {
1192                     TokenVariableLength base;
1193 
1194                     TOKSTR_ANONYMOUS32680(uint16_t tokenId, uint32_t elementId = 0)
1195                         : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS32680, HighPart) + sizeof(HighPart) - offsetof(TOKSTR_ANONYMOUS32680, LowPart), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1196 
TOKSTR_ANONYMOUS32680TOKSTR_COMMAND_BUFFER_HEADER_REC::TOKSTR_ANONYMOUS32401::TOKSTR_ANONYMOUS32457::TOKSTR_ANONYMOUS32501::TOKSTR_ANONYMOUS326801197                     TOKSTR_ANONYMOUS32680()
1198                         : base(TOK_S_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__ANONYMOUS32501__ANONYMOUS32680, 0, sizeof(*this) - sizeof(base)) {}
1199 
1200                     TokenDword LowPart = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__ANONYMOUS32501__ANONYMOUS32680__LOW_PART};
1201                     TokenDword HighPart = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__ANONYMOUS32501__ANONYMOUS32680__HIGH_PART};
1202                 };
1203                 static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS32680>, "");
1204                 static_assert(sizeof(TOKSTR_ANONYMOUS32680) % sizeof(uint32_t) == 0, "");
1205 
1206                 TOKSTR_ANONYMOUS32537 Allocation = {TOK_FS_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__ANONYMOUS32501__ALLOCATION};
1207                 TOKSTR_ANONYMOUS32680 GfxAddress = {TOK_FS_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__ANONYMOUS32501__GFX_ADDRESS};
1208             };
1209             static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS32501>, "");
1210             static_assert(sizeof(TOKSTR_ANONYMOUS32501) % sizeof(uint32_t) == 0, "");
1211 
1212             TOKSTR_ANONYMOUS32501 Address = {TOK_FS_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__ADDRESS};
1213             TokenDword Value = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ANONYMOUS32457__VALUE};
1214         };
1215         static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS32457>, "");
1216         static_assert(sizeof(TOKSTR_ANONYMOUS32457) % sizeof(uint32_t) == 0, "");
1217 
1218         TokenDword Enable = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__ENABLE};
1219         TOKSTR_ANONYMOUS32457 Tag = {TOK_FS_COMMAND_BUFFER_HEADER_REC__ANONYMOUS32401__TAG};
1220     };
1221     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS32401>, "");
1222     static_assert(sizeof(TOKSTR_ANONYMOUS32401) % sizeof(uint32_t) == 0, "");
1223 
1224     TokenDword UmdContextType = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__UMD_CONTEXT_TYPE};
1225     TokenDword UmdPatchList = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__UMD_PATCH_LIST};
1226     TokenDword UmdRequestedSliceState = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__UMD_REQUESTED_SLICE_STATE};
1227     TokenDword UmdRequestedSubsliceCount = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__UMD_REQUESTED_SUBSLICE_COUNT};
1228     TokenDword UmdRequestedEUCount = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__UMD_REQUESTED_EUCOUNT};
1229     TokenDword UsesResourceStreamer = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__USES_RESOURCE_STREAMER};
1230     TokenDword NeedsMidBatchPreEmptionSupport = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__NEEDS_MID_BATCH_PRE_EMPTION_SUPPORT};
1231     TokenDword UsesGPGPUPipeline = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__USES_GPGPUPIPELINE};
1232     TokenDword RequiresCoherency = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__REQUIRES_COHERENCY};
1233     TokenDword PerfTag = {TOK_FBD_COMMAND_BUFFER_HEADER_REC__PERF_TAG};
1234     TokenQword MonitorFenceVA = {TOK_FBQ_COMMAND_BUFFER_HEADER_REC__MONITOR_FENCE_VA};
1235     TokenQword MonitorFenceValue = {TOK_FBQ_COMMAND_BUFFER_HEADER_REC__MONITOR_FENCE_VALUE};
1236 };
1237 static_assert(std::is_standard_layout_v<TOKSTR_COMMAND_BUFFER_HEADER_REC>, "");
1238 static_assert(sizeof(TOKSTR_COMMAND_BUFFER_HEADER_REC) % sizeof(uint32_t) == 0, "");
1239 
1240 struct TOKSTR_GMM_RESOURCE_FLAG_REC {
1241     TokenVariableLength base;
1242 
1243     TOKSTR_GMM_RESOURCE_FLAG_REC(uint16_t tokenId, uint32_t elementId = 0)
1244         : base(tokenId, elementId, offsetof(TOKSTR_GMM_RESOURCE_FLAG_REC, Wa) + sizeof(Wa) - offsetof(TOKSTR_GMM_RESOURCE_FLAG_REC, Gpu), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1245 
TOKSTR_GMM_RESOURCE_FLAG_RECTOKSTR_GMM_RESOURCE_FLAG_REC1246     TOKSTR_GMM_RESOURCE_FLAG_REC()
1247         : base(TOK_S_GMM_RESOURCE_FLAG_REC, 0, sizeof(*this) - sizeof(base)) {}
1248 
1249     struct TOKSTR_ANONYMOUS1739 {
1250         TokenVariableLength base;
1251 
1252         TOKSTR_ANONYMOUS1739(uint16_t tokenId, uint32_t elementId = 0)
1253             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS1739, __Remaining) + sizeof(__Remaining) - offsetof(TOKSTR_ANONYMOUS1739, CameraCapture), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1254 
TOKSTR_ANONYMOUS1739TOKSTR_GMM_RESOURCE_FLAG_REC::TOKSTR_ANONYMOUS17391255         TOKSTR_ANONYMOUS1739()
1256             : base(TOK_S_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739, 0, sizeof(*this) - sizeof(base)) {}
1257 
1258         TokenDword CameraCapture = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__CAMERA_CAPTURE};
1259         TokenDword CCS = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__CCS};
1260         TokenDword ColorDiscard = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__COLOR_DISCARD};
1261         TokenDword ColorSeparation = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__COLOR_SEPARATION};
1262         TokenDword ColorSeparationRGBX = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__COLOR_SEPARATION_RGBX};
1263         TokenDword Constant = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__CONSTANT};
1264         TokenDword Depth = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__DEPTH};
1265         TokenDword FlipChain = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__FLIP_CHAIN};
1266         TokenDword FlipChainPreferred = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__FLIP_CHAIN_PREFERRED};
1267         TokenDword HistoryBuffer = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__HISTORY_BUFFER};
1268         TokenDword HiZ = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__HI_Z};
1269         TokenDword Index = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__INDEX};
1270         TokenDword IndirectClearColor = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__INDIRECT_CLEAR_COLOR};
1271         TokenDword InstructionFlat = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__INSTRUCTION_FLAT};
1272         TokenDword InterlacedScan = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__INTERLACED_SCAN};
1273         TokenDword MCS = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__MCS};
1274         TokenDword MMC = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__MMC};
1275         TokenDword MotionComp = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__MOTION_COMP};
1276         TokenDword NoRestriction = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__NO_RESTRICTION};
1277         TokenDword Overlay = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__OVERLAY};
1278         TokenDword Presentable = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__PRESENTABLE};
1279         TokenDword ProceduralTexture = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__PROCEDURAL_TEXTURE};
1280         TokenDword Query = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__QUERY};
1281         TokenDword RenderTarget = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__RENDER_TARGET};
1282         TokenDword S3d = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__S3D};
1283         TokenDword S3dDx = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__S3D_DX};
1284         TokenDword __S3dNonPacked = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739____S3D_NON_PACKED};
1285         TokenDword __S3dWidi = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739____S3D_WIDI};
1286         TokenDword ScratchFlat = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__SCRATCH_FLAT};
1287         TokenDword SeparateStencil = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__SEPARATE_STENCIL};
1288         TokenDword State = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__STATE};
1289         TokenDword StateDx9ConstantBuffer = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__STATE_DX9CONSTANT_BUFFER};
1290         TokenDword Stream = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__STREAM};
1291         TokenDword TextApi = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__TEXT_API};
1292         TokenDword Texture = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__TEXTURE};
1293         TokenDword TiledResource = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__TILED_RESOURCE};
1294         TokenDword TilePool = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__TILE_POOL};
1295         TokenDword UnifiedAuxSurface = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__UNIFIED_AUX_SURFACE};
1296         TokenDword Vertex = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__VERTEX};
1297         TokenDword Video = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739__VIDEO};
1298         TokenDword __NonMsaaTileXCcs = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739____NON_MSAA_TILE_XCCS};
1299         TokenDword __NonMsaaTileYCcs = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739____NON_MSAA_TILE_YCCS};
1300         TokenDword __MsaaTileMcs = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739____MSAA_TILE_MCS};
1301         TokenDword __NonMsaaLinearCCS = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739____NON_MSAA_LINEAR_CCS};
1302         TokenDword __Remaining = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS1739____REMAINING};
1303     };
1304     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS1739>, "");
1305     static_assert(sizeof(TOKSTR_ANONYMOUS1739) % sizeof(uint32_t) == 0, "");
1306 
1307     struct TOKSTR_ANONYMOUS6797 {
1308         TokenVariableLength base;
1309 
1310         TOKSTR_ANONYMOUS6797(uint16_t tokenId, uint32_t elementId = 0)
1311             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS6797, __PreWddm2SVM) + sizeof(__PreWddm2SVM) - offsetof(TOKSTR_ANONYMOUS6797, AllowVirtualPadding), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1312 
TOKSTR_ANONYMOUS6797TOKSTR_GMM_RESOURCE_FLAG_REC::TOKSTR_ANONYMOUS67971313         TOKSTR_ANONYMOUS6797()
1314             : base(TOK_S_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797, 0, sizeof(*this) - sizeof(base)) {}
1315 
1316         TokenDword AllowVirtualPadding = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__ALLOW_VIRTUAL_PADDING};
1317         TokenDword BigPage = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__BIG_PAGE};
1318         TokenDword Cacheable = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__CACHEABLE};
1319         TokenDword ContigPhysMemoryForiDART = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__CONTIG_PHYS_MEMORY_FORI_DART};
1320         TokenDword CornerTexelMode = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__CORNER_TEXEL_MODE};
1321         TokenDword ExistingSysMem = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__EXISTING_SYS_MEM};
1322         TokenDword ForceResidency = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__FORCE_RESIDENCY};
1323         TokenDword Gfdt = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__GFDT};
1324         TokenDword GttMapType = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__GTT_MAP_TYPE};
1325         TokenDword HardwareProtected = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__HARDWARE_PROTECTED};
1326         TokenDword KernelModeMapped = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__KERNEL_MODE_MAPPED};
1327         TokenDword LayoutBelow = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__LAYOUT_BELOW};
1328         TokenDword LayoutMono = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__LAYOUT_MONO};
1329         TokenDword LayoutRight = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__LAYOUT_RIGHT};
1330         TokenDword LocalOnly = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__LOCAL_ONLY};
1331         TokenDword Linear = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__LINEAR};
1332         TokenDword MediaCompressed = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__MEDIA_COMPRESSED};
1333         TokenDword NoOptimizationPadding = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__NO_OPTIMIZATION_PADDING};
1334         TokenDword NoPhysMemory = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__NO_PHYS_MEMORY};
1335         TokenDword NotLockable = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__NOT_LOCKABLE};
1336         TokenDword NonLocalOnly = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__NON_LOCAL_ONLY};
1337         TokenDword StdSwizzle = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__STD_SWIZZLE};
1338         TokenDword PseudoStdSwizzle = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__PSEUDO_STD_SWIZZLE};
1339         TokenDword Undefined64KBSwizzle = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__UNDEFINED64KBSWIZZLE};
1340         TokenDword RedecribedPlanes = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__REDECRIBED_PLANES};
1341         TokenDword RenderCompressed = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__RENDER_COMPRESSED};
1342         TokenDword Rotated = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__ROTATED};
1343         TokenDword Shared = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__SHARED};
1344         TokenDword SoftwareProtected = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__SOFTWARE_PROTECTED};
1345         TokenDword SVM = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__SVM};
1346         TokenDword Tile4 = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__TILE4};
1347         TokenDword Tile64 = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__TILE64};
1348         TokenDword TiledW = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__TILED_W};
1349         TokenDword TiledX = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__TILED_X};
1350         TokenDword TiledY = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__TILED_Y};
1351         TokenDword TiledYf = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__TILED_YF};
1352         TokenDword TiledYs = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__TILED_YS};
1353         TokenDword WddmProtected = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__WDDM_PROTECTED};
1354         TokenDword XAdapter = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797__XADAPTER};
1355         TokenDword __PreallocatedResInfo = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797____PREALLOCATED_RES_INFO};
1356         TokenDword __PreWddm2SVM = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS6797____PRE_WDDM2SVM};
1357     };
1358     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS6797>, "");
1359     static_assert(sizeof(TOKSTR_ANONYMOUS6797) % sizeof(uint32_t) == 0, "");
1360 
1361     struct TOKSTR_ANONYMOUS12521 {
1362         TokenVariableLength base;
1363 
1364         TOKSTR_ANONYMOUS12521(uint16_t tokenId, uint32_t elementId = 0)
1365             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS12521, PreGen12FastClearOnly) + sizeof(PreGen12FastClearOnly) - offsetof(TOKSTR_ANONYMOUS12521, GTMfx2ndLevelBatchRingSizeAlign), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1366 
TOKSTR_ANONYMOUS12521TOKSTR_GMM_RESOURCE_FLAG_REC::TOKSTR_ANONYMOUS125211367         TOKSTR_ANONYMOUS12521()
1368             : base(TOK_S_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521, 0, sizeof(*this) - sizeof(base)) {}
1369 
1370         TokenDword GTMfx2ndLevelBatchRingSizeAlign = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__GTMFX2ND_LEVEL_BATCH_RING_SIZE_ALIGN};
1371         TokenDword ILKNeedAvcMprRowStore32KAlign = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__ILKNEED_AVC_MPR_ROW_STORE32KALIGN};
1372         TokenDword ILKNeedAvcDmvBuffer32KAlign = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__ILKNEED_AVC_DMV_BUFFER32KALIGN};
1373         TokenDword NoBufferSamplerPadding = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__NO_BUFFER_SAMPLER_PADDING};
1374         TokenDword NoLegacyPlanarLinearVideoRestrictions = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__NO_LEGACY_PLANAR_LINEAR_VIDEO_RESTRICTIONS};
1375         TokenDword CHVAstcSkipVirtualMips = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__CHVASTC_SKIP_VIRTUAL_MIPS};
1376         TokenDword DisablePackedMipTail = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__DISABLE_PACKED_MIP_TAIL};
1377         TokenDword __ForceOtherHVALIGN4 = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521____FORCE_OTHER_HVALIGN4};
1378         TokenDword DisableDisplayCcsClearColor = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__DISABLE_DISPLAY_CCS_CLEAR_COLOR};
1379         TokenDword DisableDisplayCcsCompression = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__DISABLE_DISPLAY_CCS_COMPRESSION};
1380         TokenDword PreGen12FastClearOnly = {TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__PRE_GEN12FAST_CLEAR_ONLY};
1381     };
1382     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS12521>, "");
1383     static_assert(sizeof(TOKSTR_ANONYMOUS12521) % sizeof(uint32_t) == 0, "");
1384 
1385     TOKSTR_ANONYMOUS1739 Gpu = {TOK_FS_GMM_RESOURCE_FLAG_REC__GPU};
1386     TOKSTR_ANONYMOUS6797 Info = {TOK_FS_GMM_RESOURCE_FLAG_REC__INFO};
1387     TOKSTR_ANONYMOUS12521 Wa = {TOK_FS_GMM_RESOURCE_FLAG_REC__WA};
1388 };
1389 static_assert(std::is_standard_layout_v<TOKSTR_GMM_RESOURCE_FLAG_REC>, "");
1390 static_assert(sizeof(TOKSTR_GMM_RESOURCE_FLAG_REC) % sizeof(uint32_t) == 0, "");
1391 
1392 struct TOKSTR_GMM_RESOURCE_MSAA_INFO_REC {
1393     TokenVariableLength base;
1394 
1395     TOKSTR_GMM_RESOURCE_MSAA_INFO_REC(uint16_t tokenId, uint32_t elementId = 0)
1396         : base(tokenId, elementId, offsetof(TOKSTR_GMM_RESOURCE_MSAA_INFO_REC, NumSamples) + sizeof(NumSamples) - offsetof(TOKSTR_GMM_RESOURCE_MSAA_INFO_REC, SamplePattern), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1397 
TOKSTR_GMM_RESOURCE_MSAA_INFO_RECTOKSTR_GMM_RESOURCE_MSAA_INFO_REC1398     TOKSTR_GMM_RESOURCE_MSAA_INFO_REC()
1399         : base(TOK_S_GMM_RESOURCE_MSAA_INFO_REC, 0, sizeof(*this) - sizeof(base)) {}
1400 
1401     TokenDword SamplePattern = {TOK_FE_GMM_RESOURCE_MSAA_INFO_REC__SAMPLE_PATTERN};
1402     TokenDword NumSamples = {TOK_FBD_GMM_RESOURCE_MSAA_INFO_REC__NUM_SAMPLES};
1403 };
1404 static_assert(std::is_standard_layout_v<TOKSTR_GMM_RESOURCE_MSAA_INFO_REC>, "");
1405 static_assert(sizeof(TOKSTR_GMM_RESOURCE_MSAA_INFO_REC) % sizeof(uint32_t) == 0, "");
1406 
1407 struct TOKSTR_GMM_RESOURCE_ALIGNMENT_REC {
1408     TokenVariableLength base;
1409 
1410     TOKSTR_GMM_RESOURCE_ALIGNMENT_REC(uint16_t tokenId, uint32_t elementId = 0)
1411         : base(tokenId, elementId, offsetof(TOKSTR_GMM_RESOURCE_ALIGNMENT_REC, QPitch) + sizeof(QPitch) - offsetof(TOKSTR_GMM_RESOURCE_ALIGNMENT_REC, ArraySpacingSingleLod), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1412 
TOKSTR_GMM_RESOURCE_ALIGNMENT_RECTOKSTR_GMM_RESOURCE_ALIGNMENT_REC1413     TOKSTR_GMM_RESOURCE_ALIGNMENT_REC()
1414         : base(TOK_S_GMM_RESOURCE_ALIGNMENT_REC, 0, sizeof(*this) - sizeof(base)) {}
1415 
1416     TokenDword ArraySpacingSingleLod = {TOK_FBC_GMM_RESOURCE_ALIGNMENT_REC__ARRAY_SPACING_SINGLE_LOD};
1417     TokenDword BaseAlignment = {TOK_FBD_GMM_RESOURCE_ALIGNMENT_REC__BASE_ALIGNMENT};
1418     TokenDword HAlign = {TOK_FBD_GMM_RESOURCE_ALIGNMENT_REC__HALIGN};
1419     TokenDword VAlign = {TOK_FBD_GMM_RESOURCE_ALIGNMENT_REC__VALIGN};
1420     TokenDword DAlign = {TOK_FBD_GMM_RESOURCE_ALIGNMENT_REC__DALIGN};
1421     TokenDword MipTailStartLod = {TOK_FBD_GMM_RESOURCE_ALIGNMENT_REC__MIP_TAIL_START_LOD};
1422     TokenDword PackedMipStartLod = {TOK_FBD_GMM_RESOURCE_ALIGNMENT_REC__PACKED_MIP_START_LOD};
1423     TokenDword PackedMipWidth = {TOK_FBD_GMM_RESOURCE_ALIGNMENT_REC__PACKED_MIP_WIDTH};
1424     TokenDword PackedMipHeight = {TOK_FBD_GMM_RESOURCE_ALIGNMENT_REC__PACKED_MIP_HEIGHT};
1425     TokenDword QPitch = {TOK_FBD_GMM_RESOURCE_ALIGNMENT_REC__QPITCH};
1426 };
1427 static_assert(std::is_standard_layout_v<TOKSTR_GMM_RESOURCE_ALIGNMENT_REC>, "");
1428 static_assert(sizeof(TOKSTR_GMM_RESOURCE_ALIGNMENT_REC) % sizeof(uint32_t) == 0, "");
1429 
1430 struct TOKSTR_GMM_S3D_INFO_REC {
1431     TokenVariableLength base;
1432 
1433     TOKSTR_GMM_S3D_INFO_REC(uint16_t tokenId, uint32_t elementId = 0)
1434         : base(tokenId, elementId, offsetof(TOKSTR_GMM_S3D_INFO_REC, IsRFrame) + sizeof(IsRFrame) - offsetof(TOKSTR_GMM_S3D_INFO_REC, DisplayModeHeight), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1435 
TOKSTR_GMM_S3D_INFO_RECTOKSTR_GMM_S3D_INFO_REC1436     TOKSTR_GMM_S3D_INFO_REC()
1437         : base(TOK_S_GMM_S3D_INFO_REC, 0, sizeof(*this) - sizeof(base)) {}
1438 
1439     TokenDword DisplayModeHeight = {TOK_FBD_GMM_S3D_INFO_REC__DISPLAY_MODE_HEIGHT};
1440     TokenDword NumBlankActiveLines = {TOK_FBD_GMM_S3D_INFO_REC__NUM_BLANK_ACTIVE_LINES};
1441     TokenDword RFrameOffset = {TOK_FBD_GMM_S3D_INFO_REC__RFRAME_OFFSET};
1442     TokenDword BlankAreaOffset = {TOK_FBD_GMM_S3D_INFO_REC__BLANK_AREA_OFFSET};
1443     TokenDword TallBufferHeight = {TOK_FBD_GMM_S3D_INFO_REC__TALL_BUFFER_HEIGHT};
1444     TokenDword TallBufferSize = {TOK_FBD_GMM_S3D_INFO_REC__TALL_BUFFER_SIZE};
1445     TokenDword IsRFrame = {TOK_FBC_GMM_S3D_INFO_REC__IS_RFRAME};
1446 };
1447 static_assert(std::is_standard_layout_v<TOKSTR_GMM_S3D_INFO_REC>, "");
1448 static_assert(sizeof(TOKSTR_GMM_S3D_INFO_REC) % sizeof(uint32_t) == 0, "");
1449 
1450 struct TOKSTR_GMM_MULTI_TILE_ARCH_REC {
1451     TokenVariableLength base;
1452 
1453     TOKSTR_GMM_MULTI_TILE_ARCH_REC(uint16_t tokenId, uint32_t elementId = 0)
1454         : base(tokenId, elementId, offsetof(TOKSTR_GMM_MULTI_TILE_ARCH_REC, LocalMemPreferredSet) + sizeof(LocalMemPreferredSet) - offsetof(TOKSTR_GMM_MULTI_TILE_ARCH_REC, Enable), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1455 
TOKSTR_GMM_MULTI_TILE_ARCH_RECTOKSTR_GMM_MULTI_TILE_ARCH_REC1456     TOKSTR_GMM_MULTI_TILE_ARCH_REC()
1457         : base(TOK_S_GMM_MULTI_TILE_ARCH_REC, 0, sizeof(*this) - sizeof(base)) {}
1458 
1459     TokenDword Enable = {TOK_FBC_GMM_MULTI_TILE_ARCH_REC__ENABLE};
1460     TokenDword TileInstanced = {TOK_FBC_GMM_MULTI_TILE_ARCH_REC__TILE_INSTANCED};
1461     TokenDword GpuVaMappingSet = {TOK_FBC_GMM_MULTI_TILE_ARCH_REC__GPU_VA_MAPPING_SET};
1462     TokenDword LocalMemEligibilitySet = {TOK_FBC_GMM_MULTI_TILE_ARCH_REC__LOCAL_MEM_ELIGIBILITY_SET};
1463     TokenDword LocalMemPreferredSet = {TOK_FBC_GMM_MULTI_TILE_ARCH_REC__LOCAL_MEM_PREFERRED_SET};
1464 };
1465 static_assert(std::is_standard_layout_v<TOKSTR_GMM_MULTI_TILE_ARCH_REC>, "");
1466 static_assert(sizeof(TOKSTR_GMM_MULTI_TILE_ARCH_REC) % sizeof(uint32_t) == 0, "");
1467 
1468 struct TOKSTR_GMM_PLANAR_OFFSET_INFO_REC {
1469     TokenVariableLength base;
1470 
1471     TOKSTR_GMM_PLANAR_OFFSET_INFO_REC(uint16_t tokenId, uint32_t elementId = 0)
1472         : base(tokenId, elementId, offsetof(TOKSTR_GMM_PLANAR_OFFSET_INFO_REC, IsTileAlignedPlanes) + sizeof(IsTileAlignedPlanes) - offsetof(TOKSTR_GMM_PLANAR_OFFSET_INFO_REC, ArrayQPitch), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1473 
TOKSTR_GMM_PLANAR_OFFSET_INFO_RECTOKSTR_GMM_PLANAR_OFFSET_INFO_REC1474     TOKSTR_GMM_PLANAR_OFFSET_INFO_REC()
1475         : base(TOK_S_GMM_PLANAR_OFFSET_INFO_REC, 0, sizeof(*this) - sizeof(base)) {}
1476 
1477     struct TOKSTR_ANONYMOUS1851 {
1478         TokenVariableLength base;
1479 
1480         TOKSTR_ANONYMOUS1851(uint16_t tokenId, uint32_t elementId = 0)
1481             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS1851, Height) + sizeof(Height) - offsetof(TOKSTR_ANONYMOUS1851, Height), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1482 
TOKSTR_ANONYMOUS1851TOKSTR_GMM_PLANAR_OFFSET_INFO_REC::TOKSTR_ANONYMOUS18511483         TOKSTR_ANONYMOUS1851()
1484             : base(TOK_S_GMM_PLANAR_OFFSET_INFO_REC__ANONYMOUS1851, 0, sizeof(*this) - sizeof(base)) {}
1485 
1486         TokenArray<8> Height = {TOK_FBQ_GMM_PLANAR_OFFSET_INFO_REC__ANONYMOUS1851__HEIGHT, 64, 4};
1487     };
1488     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS1851>, "");
1489     static_assert(sizeof(TOKSTR_ANONYMOUS1851) % sizeof(uint32_t) == 0, "");
1490 
1491     TokenQword ArrayQPitch = {TOK_FBQ_GMM_PLANAR_OFFSET_INFO_REC__ARRAY_QPITCH};
1492     TokenArray<8> X = {TOK_FBQ_GMM_PLANAR_OFFSET_INFO_REC__X, 64, 4};
1493     TokenArray<8> Y = {TOK_FBQ_GMM_PLANAR_OFFSET_INFO_REC__Y, 64, 4};
1494     TOKSTR_ANONYMOUS1851 UnAligned = {TOK_FS_GMM_PLANAR_OFFSET_INFO_REC__UN_ALIGNED};
1495     TokenDword NoOfPlanes = {TOK_FBD_GMM_PLANAR_OFFSET_INFO_REC__NO_OF_PLANES};
1496     TokenBool IsTileAlignedPlanes = {TOK_FBB_GMM_PLANAR_OFFSET_INFO_REC__IS_TILE_ALIGNED_PLANES};
1497 };
1498 static_assert(std::is_standard_layout_v<TOKSTR_GMM_PLANAR_OFFSET_INFO_REC>, "");
1499 static_assert(sizeof(TOKSTR_GMM_PLANAR_OFFSET_INFO_REC) % sizeof(uint32_t) == 0, "");
1500 
1501 struct TOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_REC {
1502     TokenVariableLength base;
1503 
1504     TOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_REC(uint16_t tokenId, uint32_t elementId = 0)
1505         : base(tokenId, elementId, offsetof(TOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_REC, Offset) + sizeof(Offset) - offsetof(TOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_REC, ArrayQPitchLock), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1506 
TOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_RECTOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_REC1507     TOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_REC()
1508         : base(TOK_S_GMM_2D_TEXTURE_OFFSET_INFO_REC, 0, sizeof(*this) - sizeof(base)) {}
1509 
1510     TokenQword ArrayQPitchLock = {TOK_FBQ_GMM_2D_TEXTURE_OFFSET_INFO_REC__ARRAY_QPITCH_LOCK};
1511     TokenQword ArrayQPitchRender = {TOK_FBQ_GMM_2D_TEXTURE_OFFSET_INFO_REC__ARRAY_QPITCH_RENDER};
1512     TokenArray<30> Offset = {TOK_FBQ_GMM_2D_TEXTURE_OFFSET_INFO_REC__OFFSET, 64, 15};
1513 };
1514 static_assert(std::is_standard_layout_v<TOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_REC>, "");
1515 static_assert(sizeof(TOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_REC) % sizeof(uint32_t) == 0, "");
1516 
1517 struct TOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_REC {
1518     TokenVariableLength base;
1519 
1520     TOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_REC(uint16_t tokenId, uint32_t elementId = 0)
1521         : base(tokenId, elementId, offsetof(TOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_REC, Offset) + sizeof(Offset) - offsetof(TOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_REC, Mip0SlicePitch), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1522 
TOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_RECTOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_REC1523     TOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_REC()
1524         : base(TOK_S_GMM_3D_TEXTURE_OFFSET_INFO_REC, 0, sizeof(*this) - sizeof(base)) {}
1525 
1526     TokenQword Mip0SlicePitch = {TOK_FBQ_GMM_3D_TEXTURE_OFFSET_INFO_REC__MIP0SLICE_PITCH};
1527     TokenArray<30> Offset = {TOK_FBQ_GMM_3D_TEXTURE_OFFSET_INFO_REC__OFFSET, 64, 15};
1528 };
1529 static_assert(std::is_standard_layout_v<TOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_REC>, "");
1530 static_assert(sizeof(TOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_REC) % sizeof(uint32_t) == 0, "");
1531 
1532 struct TOKSTR_GMM_OFFSET_INFO_REC {
1533     TokenVariableLength base;
1534 
1535     TOKSTR_GMM_OFFSET_INFO_REC(uint16_t tokenId, uint32_t elementId = 0)
1536         : base(tokenId, elementId, offsetof(TOKSTR_GMM_OFFSET_INFO_REC, Plane) + sizeof(Plane) - offsetof(TOKSTR_GMM_OFFSET_INFO_REC, Texture3DOffsetInfo), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1537 
TOKSTR_GMM_OFFSET_INFO_RECTOKSTR_GMM_OFFSET_INFO_REC1538     TOKSTR_GMM_OFFSET_INFO_REC()
1539         : base(TOK_S_GMM_OFFSET_INFO_REC, 0, sizeof(*this) - sizeof(base)) {}
1540 
1541     struct TOKSTR_ANONYMOUS3429 {
1542         TokenVariableLength base;
1543 
1544         TOKSTR_ANONYMOUS3429(uint16_t tokenId, uint32_t elementId = 0)
1545             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS3429, Plane) + sizeof(Plane) - offsetof(TOKSTR_ANONYMOUS3429, Texture3DOffsetInfo), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1546 
TOKSTR_ANONYMOUS3429TOKSTR_GMM_OFFSET_INFO_REC::TOKSTR_ANONYMOUS34291547         TOKSTR_ANONYMOUS3429()
1548             : base(TOK_S_GMM_OFFSET_INFO_REC__ANONYMOUS3429, 0, sizeof(*this) - sizeof(base)) {}
1549 
1550         TOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_REC Texture3DOffsetInfo = {TOK_FS_GMM_OFFSET_INFO_REC__ANONYMOUS3429__TEXTURE3DOFFSET_INFO};
1551         TOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_REC Texture2DOffsetInfo = {TOK_FS_GMM_OFFSET_INFO_REC__ANONYMOUS3429__TEXTURE2DOFFSET_INFO};
1552         TOKSTR_GMM_PLANAR_OFFSET_INFO_REC Plane = {TOK_FS_GMM_OFFSET_INFO_REC__ANONYMOUS3429__PLANE};
1553     };
1554     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS3429>, "");
1555     static_assert(sizeof(TOKSTR_ANONYMOUS3429) % sizeof(uint32_t) == 0, "");
1556 
1557     TOKSTR_GMM_3D_TEXTURE_OFFSET_INFO_REC Texture3DOffsetInfo = {TOK_FS_GMM_OFFSET_INFO_REC__ANONYMOUS3429__TEXTURE3DOFFSET_INFO}; // Indirect field from anonymous struct
1558     TOKSTR_GMM_2D_TEXTURE_OFFSET_INFO_REC Texture2DOffsetInfo = {TOK_FS_GMM_OFFSET_INFO_REC__ANONYMOUS3429__TEXTURE2DOFFSET_INFO}; // Indirect field from anonymous struct
1559     TOKSTR_GMM_PLANAR_OFFSET_INFO_REC Plane = {TOK_FS_GMM_OFFSET_INFO_REC__ANONYMOUS3429__PLANE};                                  // Indirect field from anonymous struct
1560 };
1561 static_assert(std::is_standard_layout_v<TOKSTR_GMM_OFFSET_INFO_REC>, "");
1562 static_assert(sizeof(TOKSTR_GMM_OFFSET_INFO_REC) % sizeof(uint32_t) == 0, "");
1563 
1564 struct TOKSTR_GMM_TEXTURE_INFO_REC {
1565     TokenVariableLength base;
1566 
1567     TOKSTR_GMM_TEXTURE_INFO_REC(uint16_t tokenId, uint32_t elementId = 0)
1568         : base(tokenId, elementId, offsetof(TOKSTR_GMM_TEXTURE_INFO_REC, __Platform) + sizeof(__Platform) - offsetof(TOKSTR_GMM_TEXTURE_INFO_REC, Type), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1569 
TOKSTR_GMM_TEXTURE_INFO_RECTOKSTR_GMM_TEXTURE_INFO_REC1570     TOKSTR_GMM_TEXTURE_INFO_REC()
1571         : base(TOK_S_GMM_TEXTURE_INFO_REC, 0, sizeof(*this) - sizeof(base)) {}
1572 
1573     struct TOKSTR_ANONYMOUS4927 {
1574         TokenVariableLength base;
1575 
1576         TOKSTR_ANONYMOUS4927(uint16_t tokenId, uint32_t elementId = 0)
1577             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS4927, Usage) + sizeof(Usage) - offsetof(TOKSTR_ANONYMOUS4927, Usage), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1578 
TOKSTR_ANONYMOUS4927TOKSTR_GMM_TEXTURE_INFO_REC::TOKSTR_ANONYMOUS49271579         TOKSTR_ANONYMOUS4927()
1580             : base(TOK_S_GMM_TEXTURE_INFO_REC__ANONYMOUS4927, 0, sizeof(*this) - sizeof(base)) {}
1581 
1582         TokenDword Usage = {TOK_FE_GMM_TEXTURE_INFO_REC__ANONYMOUS4927__USAGE};
1583     };
1584     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS4927>, "");
1585     static_assert(sizeof(TOKSTR_ANONYMOUS4927) % sizeof(uint32_t) == 0, "");
1586 
1587     struct TOKSTR_ANONYMOUS6185 {
1588         TokenVariableLength base;
1589 
1590         TOKSTR_ANONYMOUS6185(uint16_t tokenId, uint32_t elementId = 0)
1591             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS6185, Evict) + sizeof(Evict) - offsetof(TOKSTR_ANONYMOUS6185, Seg1), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1592 
TOKSTR_ANONYMOUS6185TOKSTR_GMM_TEXTURE_INFO_REC::TOKSTR_ANONYMOUS61851593         TOKSTR_ANONYMOUS6185()
1594             : base(TOK_S_GMM_TEXTURE_INFO_REC__ANONYMOUS6185, 0, sizeof(*this) - sizeof(base)) {}
1595 
1596         TokenDword Seg1 = {TOK_FBD_GMM_TEXTURE_INFO_REC__ANONYMOUS6185__SEG1};
1597         TokenDword Evict = {TOK_FBD_GMM_TEXTURE_INFO_REC__ANONYMOUS6185__EVICT};
1598     };
1599     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS6185>, "");
1600     static_assert(sizeof(TOKSTR_ANONYMOUS6185) % sizeof(uint32_t) == 0, "");
1601 
1602     struct TOKSTR_ANONYMOUS6590 {
1603         TokenVariableLength base;
1604 
1605         TOKSTR_ANONYMOUS6590(uint16_t tokenId, uint32_t elementId = 0)
1606             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS6590, IsPageAligned) + sizeof(IsPageAligned) - offsetof(TOKSTR_ANONYMOUS6590, IsGmmAllocated), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1607 
TOKSTR_ANONYMOUS6590TOKSTR_GMM_TEXTURE_INFO_REC::TOKSTR_ANONYMOUS65901608         TOKSTR_ANONYMOUS6590()
1609             : base(TOK_S_GMM_TEXTURE_INFO_REC__ANONYMOUS6590, 0, sizeof(*this) - sizeof(base)) {}
1610 
1611         TokenDword IsGmmAllocated = {TOK_FBC_GMM_TEXTURE_INFO_REC__ANONYMOUS6590__IS_GMM_ALLOCATED};
1612         TokenDword IsPageAligned = {TOK_FBC_GMM_TEXTURE_INFO_REC__ANONYMOUS6590__IS_PAGE_ALIGNED};
1613     };
1614     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS6590>, "");
1615     static_assert(sizeof(TOKSTR_ANONYMOUS6590) % sizeof(uint32_t) == 0, "");
1616 
1617     TokenDword Type = {TOK_FE_GMM_TEXTURE_INFO_REC__TYPE};
1618     TokenDword Format = {TOK_FE_GMM_TEXTURE_INFO_REC__FORMAT};
1619     TokenDword BitsPerPixel = {TOK_FBD_GMM_TEXTURE_INFO_REC__BITS_PER_PIXEL};
1620     TOKSTR_GMM_RESOURCE_FLAG_REC Flags = {TOK_FS_GMM_TEXTURE_INFO_REC__FLAGS};
1621     TokenQword BaseWidth = {TOK_FBQ_GMM_TEXTURE_INFO_REC__BASE_WIDTH};
1622     TokenDword BaseHeight = {TOK_FBD_GMM_TEXTURE_INFO_REC__BASE_HEIGHT};
1623     TokenDword Depth = {TOK_FBD_GMM_TEXTURE_INFO_REC__DEPTH};
1624     TokenDword MaxLod = {TOK_FBD_GMM_TEXTURE_INFO_REC__MAX_LOD};
1625     TokenDword ArraySize = {TOK_FBD_GMM_TEXTURE_INFO_REC__ARRAY_SIZE};
1626     TokenDword CpTag = {TOK_FBD_GMM_TEXTURE_INFO_REC__CP_TAG};
1627     TOKSTR_ANONYMOUS4927 CachePolicy = {TOK_FS_GMM_TEXTURE_INFO_REC__CACHE_POLICY};
1628     TOKSTR_GMM_RESOURCE_MSAA_INFO_REC MSAA = {TOK_FS_GMM_TEXTURE_INFO_REC__MSAA};
1629     TOKSTR_GMM_RESOURCE_ALIGNMENT_REC Alignment = {TOK_FS_GMM_TEXTURE_INFO_REC__ALIGNMENT};
1630     TokenArray<16> MmcMode = {TOK_FBC_GMM_TEXTURE_INFO_REC__MMC_MODE, 8, 64};
1631     TokenArray<16> MmcHint = {TOK_FBC_GMM_TEXTURE_INFO_REC__MMC_HINT, 8, 64};
1632     TokenQword Pitch = {TOK_FBQ_GMM_TEXTURE_INFO_REC__PITCH};
1633     TokenQword OverridePitch = {TOK_FBQ_GMM_TEXTURE_INFO_REC__OVERRIDE_PITCH};
1634     TokenQword Size = {TOK_FBQ_GMM_TEXTURE_INFO_REC__SIZE};
1635     TokenQword CCSize = {TOK_FBQ_GMM_TEXTURE_INFO_REC__CCSIZE};
1636     TokenQword UnpaddedSize = {TOK_FBQ_GMM_TEXTURE_INFO_REC__UNPADDED_SIZE};
1637     TokenQword SizeReportToOS = {TOK_FBQ_GMM_TEXTURE_INFO_REC__SIZE_REPORT_TO_OS};
1638     TOKSTR_GMM_OFFSET_INFO_REC OffsetInfo = {TOK_FS_GMM_TEXTURE_INFO_REC__OFFSET_INFO};
1639     TokenDword TileMode = {TOK_FE_GMM_TEXTURE_INFO_REC__TILE_MODE};
1640     TokenDword CCSModeAlign = {TOK_FBD_GMM_TEXTURE_INFO_REC__CCSMODE_ALIGN};
1641     TokenDword LegacyFlags = {TOK_FBD_GMM_TEXTURE_INFO_REC__LEGACY_FLAGS};
1642     TOKSTR_GMM_S3D_INFO_REC S3d = {TOK_FS_GMM_TEXTURE_INFO_REC__S3D};
1643     TOKSTR_ANONYMOUS6185 SegmentOverride = {TOK_FS_GMM_TEXTURE_INFO_REC__SEGMENT_OVERRIDE};
1644     TokenDword MaximumRenamingListLength = {TOK_FBD_GMM_TEXTURE_INFO_REC__MAXIMUM_RENAMING_LIST_LENGTH};
1645     TOKSTR_PLATFORM_STR Platform = {TOK_FS_GMM_TEXTURE_INFO_REC__PLATFORM}; // _DEBUG || _RELEASE_INTERNAL
1646     TOKSTR_ANONYMOUS6590 ExistingSysMem = {TOK_FS_GMM_TEXTURE_INFO_REC__EXISTING_SYS_MEM};
1647     TOKSTR_PLATFORM_STR __Platform = {TOK_FS_GMM_TEXTURE_INFO_REC____PLATFORM}; // !(_DEBUG || _RELEASE_INTERNAL)
1648 };
1649 static_assert(std::is_standard_layout_v<TOKSTR_GMM_TEXTURE_INFO_REC>, "");
1650 static_assert(sizeof(TOKSTR_GMM_TEXTURE_INFO_REC) % sizeof(uint32_t) == 0, "");
1651 
1652 struct TOKSTR_GMM_EXISTING_SYS_MEM_REC {
1653     TokenVariableLength base;
1654 
1655     TOKSTR_GMM_EXISTING_SYS_MEM_REC(uint16_t tokenId, uint32_t elementId = 0)
1656         : base(tokenId, elementId, offsetof(TOKSTR_GMM_EXISTING_SYS_MEM_REC, IsGmmAllocated) + sizeof(IsGmmAllocated) - offsetof(TOKSTR_GMM_EXISTING_SYS_MEM_REC, pExistingSysMem), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1657 
TOKSTR_GMM_EXISTING_SYS_MEM_RECTOKSTR_GMM_EXISTING_SYS_MEM_REC1658     TOKSTR_GMM_EXISTING_SYS_MEM_REC()
1659         : base(TOK_S_GMM_EXISTING_SYS_MEM_REC, 0, sizeof(*this) - sizeof(base)) {}
1660 
1661     TokenQword pExistingSysMem = {TOK_FBQ_GMM_EXISTING_SYS_MEM_REC__P_EXISTING_SYS_MEM};
1662     TokenQword pVirtAddress = {TOK_FBQ_GMM_EXISTING_SYS_MEM_REC__P_VIRT_ADDRESS};
1663     TokenQword pGfxAlignedVirtAddress = {TOK_FBQ_GMM_EXISTING_SYS_MEM_REC__P_GFX_ALIGNED_VIRT_ADDRESS};
1664     TokenQword Size = {TOK_FBQ_GMM_EXISTING_SYS_MEM_REC__SIZE};
1665     TokenDword IsGmmAllocated = {TOK_FBC_GMM_EXISTING_SYS_MEM_REC__IS_GMM_ALLOCATED};
1666 };
1667 static_assert(std::is_standard_layout_v<TOKSTR_GMM_EXISTING_SYS_MEM_REC>, "");
1668 static_assert(sizeof(TOKSTR_GMM_EXISTING_SYS_MEM_REC) % sizeof(uint32_t) == 0, "");
1669 
1670 struct TOKSTR_GmmResourceInfoCommonStruct {
1671     TokenVariableLength base;
1672 
1673     TOKSTR_GmmResourceInfoCommonStruct(uint16_t tokenId, uint32_t elementId = 0)
1674         : base(tokenId, elementId, offsetof(TOKSTR_GmmResourceInfoCommonStruct, MultiTileArch) + sizeof(MultiTileArch) - offsetof(TOKSTR_GmmResourceInfoCommonStruct, ClientType), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1675 
TOKSTR_GmmResourceInfoCommonStructTOKSTR_GmmResourceInfoCommonStruct1676     TOKSTR_GmmResourceInfoCommonStruct()
1677         : base(TOK_S_GMM_RESOURCE_INFO_COMMON_STRUCT, 0, sizeof(*this) - sizeof(base)) {}
1678 
1679     TokenDword ClientType = {TOK_FE_GMM_RESOURCE_INFO_COMMON_STRUCT__CLIENT_TYPE};
1680     TOKSTR_GMM_TEXTURE_INFO_REC Surf = {TOK_FS_GMM_RESOURCE_INFO_COMMON_STRUCT__SURF};
1681     TOKSTR_GMM_TEXTURE_INFO_REC AuxSurf = {TOK_FS_GMM_RESOURCE_INFO_COMMON_STRUCT__AUX_SURF};
1682     TOKSTR_GMM_TEXTURE_INFO_REC AuxSecSurf = {TOK_FS_GMM_RESOURCE_INFO_COMMON_STRUCT__AUX_SEC_SURF};
1683     TokenDword RotateInfo = {TOK_FBD_GMM_RESOURCE_INFO_COMMON_STRUCT__ROTATE_INFO};
1684     TOKSTR_GMM_EXISTING_SYS_MEM_REC ExistingSysMem = {TOK_FS_GMM_RESOURCE_INFO_COMMON_STRUCT__EXISTING_SYS_MEM};
1685     TokenQword SvmAddress = {TOK_FBQ_GMM_RESOURCE_INFO_COMMON_STRUCT__SVM_ADDRESS};
1686     TokenQword pPrivateData = {TOK_FBQ_GMM_RESOURCE_INFO_COMMON_STRUCT__P_PRIVATE_DATA};
1687     TOKSTR_GMM_MULTI_TILE_ARCH_REC MultiTileArch = {TOK_FS_GMM_RESOURCE_INFO_COMMON_STRUCT__MULTI_TILE_ARCH};
1688 };
1689 static_assert(std::is_standard_layout_v<TOKSTR_GmmResourceInfoCommonStruct>, "");
1690 static_assert(sizeof(TOKSTR_GmmResourceInfoCommonStruct) % sizeof(uint32_t) == 0, "");
1691 
1692 struct TOKSTR_GmmResourceInfoWinStructPadding00 {
1693     TokenVariableLength base;
1694 
1695     TOKSTR_GmmResourceInfoWinStructPadding00(uint16_t tokenId, uint32_t elementId = 0)
1696         : base(tokenId, elementId, offsetof(TOKSTR_GmmResourceInfoWinStructPadding00, padding000) + sizeof(padding000) - offsetof(TOKSTR_GmmResourceInfoWinStructPadding00, padding000), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1697 
1698     TokenQword padding000 = {3933};
1699 };
1700 
1701 struct TOKSTR_GmmResourceInfoWinStructPadding0 {
1702     TokenVariableLength base;
1703 
1704     TOKSTR_GmmResourceInfoWinStructPadding0(uint16_t tokenId, uint32_t elementId = 0)
1705         : base(tokenId, elementId, offsetof(TOKSTR_GmmResourceInfoWinStructPadding0, padding00) + sizeof(padding00) - offsetof(TOKSTR_GmmResourceInfoWinStructPadding0, padding00), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1706 
1707     TOKSTR_GmmResourceInfoWinStructPadding00 padding00 = {3943};
1708 };
1709 
1710 struct TOKSTR_GmmResourceInfoWinStruct {
1711     TokenVariableLength base;
1712 
1713     TOKSTR_GmmResourceInfoWinStruct(uint16_t tokenId, uint32_t elementId = 0)
1714         : base(tokenId, elementId, offsetof(TOKSTR_GmmResourceInfoWinStruct, padding0) + sizeof(padding0) - offsetof(TOKSTR_GmmResourceInfoWinStruct, GmmResourceInfoCommon), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1715 
TOKSTR_GmmResourceInfoWinStructTOKSTR_GmmResourceInfoWinStruct1716     TOKSTR_GmmResourceInfoWinStruct()
1717         : base(TOK_S_GMM_RESOURCE_INFO_WIN_STRUCT, 0, sizeof(*this) - sizeof(base)) {}
1718 
1719     TOKSTR_GmmResourceInfoCommonStruct GmmResourceInfoCommon = {TOK_FS_GMM_RESOURCE_INFO_WIN_STRUCT__GMM_RESOURCE_INFO_COMMON};
1720     TOKSTR_GmmResourceInfoWinStructPadding0 padding0 = {3967};
1721 };
1722 static_assert(std::is_standard_layout_v<TOKSTR_GmmResourceInfoWinStruct>, "");
1723 static_assert(sizeof(TOKSTR_GmmResourceInfoWinStruct) % sizeof(uint32_t) == 0, "");
1724 
1725 struct TOKSTR_GFX_ESCAPE_HEADER {
1726     TokenVariableLength base;
1727 
1728     TOKSTR_GFX_ESCAPE_HEADER(uint16_t tokenId, uint32_t elementId = 0)
1729         : base(tokenId, elementId, offsetof(TOKSTR_GFX_ESCAPE_HEADER, uiMinorEscapeCode) + sizeof(uiMinorEscapeCode) - offsetof(TOKSTR_GFX_ESCAPE_HEADER, Size), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1730 
TOKSTR_GFX_ESCAPE_HEADERTOKSTR_GFX_ESCAPE_HEADER1731     TOKSTR_GFX_ESCAPE_HEADER()
1732         : base(TOK_S_GFX_ESCAPE_HEADER, 0, sizeof(*this) - sizeof(base)) {}
1733 
1734     struct TOKSTR_ANONYMOUS4410 {
1735         TokenVariableLength base;
1736 
1737         TOKSTR_ANONYMOUS4410(uint16_t tokenId, uint32_t elementId = 0)
1738             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS4410, uiMinorEscapeCode) + sizeof(uiMinorEscapeCode) - offsetof(TOKSTR_ANONYMOUS4410, Size), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1739 
TOKSTR_ANONYMOUS4410TOKSTR_GFX_ESCAPE_HEADER::TOKSTR_ANONYMOUS44101740         TOKSTR_ANONYMOUS4410()
1741             : base(TOK_S_GFX_ESCAPE_HEADER__ANONYMOUS4410, 0, sizeof(*this) - sizeof(base)) {}
1742 
1743         struct TOKSTR_ANONYMOUS4430 {
1744             TokenVariableLength base;
1745 
1746             TOKSTR_ANONYMOUS4430(uint16_t tokenId, uint32_t elementId = 0)
1747                 : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS4430, ulReserved) + sizeof(ulReserved) - offsetof(TOKSTR_ANONYMOUS4430, Size), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1748 
TOKSTR_ANONYMOUS4430TOKSTR_GFX_ESCAPE_HEADER::TOKSTR_ANONYMOUS4410::TOKSTR_ANONYMOUS44301749             TOKSTR_ANONYMOUS4430()
1750                 : base(TOK_S_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430, 0, sizeof(*this) - sizeof(base)) {}
1751 
1752             TokenDword Size = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__SIZE};
1753             TokenDword CheckSum = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__CHECK_SUM};
1754             TokenDword EscapeCode = {TOK_FE_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__ESCAPE_CODE};
1755             TokenDword ulReserved = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__UL_RESERVED};
1756         };
1757         static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS4430>, "");
1758         static_assert(sizeof(TOKSTR_ANONYMOUS4430) % sizeof(uint32_t) == 0, "");
1759 
1760         struct TOKSTR_ANONYMOUS4963 {
1761             TokenVariableLength base;
1762 
1763             TOKSTR_ANONYMOUS4963(uint16_t tokenId, uint32_t elementId = 0)
1764                 : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS4963, uiMinorEscapeCode) + sizeof(uiMinorEscapeCode) - offsetof(TOKSTR_ANONYMOUS4963, ulReserved1), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1765 
TOKSTR_ANONYMOUS4963TOKSTR_GFX_ESCAPE_HEADER::TOKSTR_ANONYMOUS4410::TOKSTR_ANONYMOUS49631766             TOKSTR_ANONYMOUS4963()
1767                 : base(TOK_S_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963, 0, sizeof(*this) - sizeof(base)) {}
1768 
1769             TokenDword ulReserved1 = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__UL_RESERVED1};
1770             TokenDword usEscapeVersion = {TOK_FBW_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__US_ESCAPE_VERSION};
1771             TokenDword usFileVersion = {TOK_FBW_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__US_FILE_VERSION};
1772             TokenDword ulMajorEscapeCode = {TOK_FE_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__UL_MAJOR_ESCAPE_CODE};
1773             TokenDword uiMinorEscapeCode = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__UI_MINOR_ESCAPE_CODE};
1774         };
1775         static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS4963>, "");
1776         static_assert(sizeof(TOKSTR_ANONYMOUS4963) % sizeof(uint32_t) == 0, "");
1777 
1778         TokenDword Size = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__SIZE};                              // Indirect field from anonymous struct
1779         TokenDword CheckSum = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__CHECK_SUM};                     // Indirect field from anonymous struct
1780         TokenDword EscapeCode = {TOK_FE_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__ESCAPE_CODE};                  // Indirect field from anonymous struct
1781         TokenDword ulReserved = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__UL_RESERVED};                 // Indirect field from anonymous struct
1782         TokenDword ulReserved1 = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__UL_RESERVED1};               // Indirect field from anonymous struct
1783         TokenDword usEscapeVersion = {TOK_FBW_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__US_ESCAPE_VERSION};      // Indirect field from anonymous struct
1784         TokenDword usFileVersion = {TOK_FBW_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__US_FILE_VERSION};          // Indirect field from anonymous struct
1785         TokenDword ulMajorEscapeCode = {TOK_FE_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__UL_MAJOR_ESCAPE_CODE};  // Indirect field from anonymous struct
1786         TokenDword uiMinorEscapeCode = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__UI_MINOR_ESCAPE_CODE}; // Indirect field from anonymous struct
1787     };
1788     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS4410>, "");
1789     static_assert(sizeof(TOKSTR_ANONYMOUS4410) % sizeof(uint32_t) == 0, "");
1790 
1791     TokenDword Size = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__SIZE};                              // Indirect field from anonymous struct
1792     TokenDword CheckSum = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__CHECK_SUM};                     // Indirect field from anonymous struct
1793     TokenDword EscapeCode = {TOK_FE_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__ESCAPE_CODE};                  // Indirect field from anonymous struct
1794     TokenDword ulReserved = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4430__UL_RESERVED};                 // Indirect field from anonymous struct
1795     TokenDword ulReserved1 = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__UL_RESERVED1};               // Indirect field from anonymous struct
1796     TokenDword usEscapeVersion = {TOK_FBW_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__US_ESCAPE_VERSION};      // Indirect field from anonymous struct
1797     TokenDword usFileVersion = {TOK_FBW_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__US_FILE_VERSION};          // Indirect field from anonymous struct
1798     TokenDword ulMajorEscapeCode = {TOK_FE_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__UL_MAJOR_ESCAPE_CODE};  // Indirect field from anonymous struct
1799     TokenDword uiMinorEscapeCode = {TOK_FBD_GFX_ESCAPE_HEADER__ANONYMOUS4410__ANONYMOUS4963__UI_MINOR_ESCAPE_CODE}; // Indirect field from anonymous struct
1800 };
1801 static_assert(std::is_standard_layout_v<TOKSTR_GFX_ESCAPE_HEADER>, "");
1802 static_assert(sizeof(TOKSTR_GFX_ESCAPE_HEADER) % sizeof(uint32_t) == 0, "");
1803 
1804 struct TOKSTR_GTDIBaseInStruct {
1805     TokenVariableLength base;
1806 
1807     TOKSTR_GTDIBaseInStruct(uint16_t tokenId, uint32_t elementId = 0)
1808         : base(tokenId, elementId, offsetof(TOKSTR_GTDIBaseInStruct, Function) + sizeof(Function) - offsetof(TOKSTR_GTDIBaseInStruct, Function), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1809 
TOKSTR_GTDIBaseInStructTOKSTR_GTDIBaseInStruct1810     TOKSTR_GTDIBaseInStruct()
1811         : base(TOK_S_GTDIBASE_IN_STRUCT, 0, sizeof(*this) - sizeof(base)) {}
1812 
1813     TokenDword Function = {TOK_FE_GTDIBASE_IN_STRUCT__FUNCTION};
1814 };
1815 static_assert(std::is_standard_layout_v<TOKSTR_GTDIBaseInStruct>, "");
1816 static_assert(sizeof(TOKSTR_GTDIBaseInStruct) % sizeof(uint32_t) == 0, "");
1817 
1818 struct TOKSTR_GTDIGetGpuCpuTimestampsOutStruct {
1819     TokenVariableLength base;
1820 
1821     TOKSTR_GTDIGetGpuCpuTimestampsOutStruct(uint16_t tokenId, uint32_t elementId = 0)
1822         : base(tokenId, elementId, offsetof(TOKSTR_GTDIGetGpuCpuTimestampsOutStruct, cpuPerfFreq) + sizeof(cpuPerfFreq) - offsetof(TOKSTR_GTDIGetGpuCpuTimestampsOutStruct, RetCode), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1823 
TOKSTR_GTDIGetGpuCpuTimestampsOutStructTOKSTR_GTDIGetGpuCpuTimestampsOutStruct1824     TOKSTR_GTDIGetGpuCpuTimestampsOutStruct()
1825         : base(TOK_S_GTDIGET_GPU_CPU_TIMESTAMPS_OUT_STRUCT, 0, sizeof(*this) - sizeof(base)) {}
1826 
1827     TokenDword RetCode = {TOK_FE_GTDIGET_GPU_CPU_TIMESTAMPS_OUT_STRUCT__RET_CODE};
1828     TokenQword gpuPerfTicks = {TOK_FBQ_GTDIGET_GPU_CPU_TIMESTAMPS_OUT_STRUCT__GPU_PERF_TICKS};
1829     TokenQword cpuPerfTicks = {TOK_FBQ_GTDIGET_GPU_CPU_TIMESTAMPS_OUT_STRUCT__CPU_PERF_TICKS};
1830     TokenQword gpuPerfFreq = {TOK_FBQ_GTDIGET_GPU_CPU_TIMESTAMPS_OUT_STRUCT__GPU_PERF_FREQ};
1831     TokenQword cpuPerfFreq = {TOK_FBQ_GTDIGET_GPU_CPU_TIMESTAMPS_OUT_STRUCT__CPU_PERF_FREQ};
1832 };
1833 static_assert(std::is_standard_layout_v<TOKSTR_GTDIGetGpuCpuTimestampsOutStruct>, "");
1834 static_assert(sizeof(TOKSTR_GTDIGetGpuCpuTimestampsOutStruct) % sizeof(uint32_t) == 0, "");
1835 
1836 struct TOKSTR_TimeStampDataHeader {
1837     TokenVariableLength base;
1838 
1839     TOKSTR_TimeStampDataHeader(uint16_t tokenId, uint32_t elementId = 0)
1840         : base(tokenId, elementId, offsetof(TOKSTR_TimeStampDataHeader, m_Data) + sizeof(m_Data) - offsetof(TOKSTR_TimeStampDataHeader, m_Header), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1841 
TOKSTR_TimeStampDataHeaderTOKSTR_TimeStampDataHeader1842     TOKSTR_TimeStampDataHeader()
1843         : base(TOK_S_TIME_STAMP_DATA_HEADER, 0, sizeof(*this) - sizeof(base)) {}
1844 
1845     struct TOKSTR_ANONYMOUS2466 {
1846         TokenVariableLength base;
1847 
1848         TOKSTR_ANONYMOUS2466(uint16_t tokenId, uint32_t elementId = 0)
1849             : base(tokenId, elementId, offsetof(TOKSTR_ANONYMOUS2466, m_Out) + sizeof(m_Out) - offsetof(TOKSTR_ANONYMOUS2466, m_In), (sizeof(*this) - sizeof(base)) / sizeof(uint32_t)) {}
1850 
TOKSTR_ANONYMOUS2466TOKSTR_TimeStampDataHeader::TOKSTR_ANONYMOUS24661851         TOKSTR_ANONYMOUS2466()
1852             : base(TOK_S_TIME_STAMP_DATA_HEADER__ANONYMOUS2466, 0, sizeof(*this) - sizeof(base)) {}
1853 
1854         TOKSTR_GTDIBaseInStruct m_In = {TOK_FXS_TIME_STAMP_DATA_HEADER__ANONYMOUS2466__M_IN};
1855         TOKSTR_GTDIGetGpuCpuTimestampsOutStruct m_Out = {TOK_FS_TIME_STAMP_DATA_HEADER__ANONYMOUS2466__M_OUT};
1856     };
1857     static_assert(std::is_standard_layout_v<TOKSTR_ANONYMOUS2466>, "");
1858     static_assert(sizeof(TOKSTR_ANONYMOUS2466) % sizeof(uint32_t) == 0, "");
1859 
1860     TOKSTR_GFX_ESCAPE_HEADER m_Header = {TOK_FS_TIME_STAMP_DATA_HEADER__M_HEADER};
1861     TOKSTR_ANONYMOUS2466 m_Data = {TOK_FS_TIME_STAMP_DATA_HEADER__M_DATA};
1862 };
1863 static_assert(std::is_standard_layout_v<TOKSTR_TimeStampDataHeader>, "");
1864 static_assert(sizeof(TOKSTR_TimeStampDataHeader) % sizeof(uint32_t) == 0, "");
1865