Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/angle
Path: blob/main_old/src/common/PackedCLEnums_autogen.h
1693 views
1
// GENERATED FILE - DO NOT EDIT.
2
// Generated by gen_packed_gl_enums.py using data from packed_cl_enums.json.
3
//
4
// Copyright 2017 The ANGLE Project Authors. All rights reserved.
5
// Use of this source code is governed by a BSD-style license that can be
6
// found in the LICENSE file.
7
//
8
// PackedCLEnums_autogen.h:
9
// Declares ANGLE-specific enums classes for CLenums and functions operating
10
// on them.
11
12
#ifndef COMMON_PACKEDCLENUMS_AUTOGEN_H_
13
#define COMMON_PACKEDCLENUMS_AUTOGEN_H_
14
15
#include <angle_cl.h>
16
typedef cl_uint CLenum;
17
18
#include <cstdint>
19
#include <ostream>
20
21
namespace cl
22
{
23
24
template <typename Enum>
25
Enum FromCLenum(CLenum from);
26
27
enum class AddressingMode : uint8_t
28
{
29
None = 0,
30
ClampToEdge = 1,
31
Clamp = 2,
32
Repeat = 3,
33
MirroredRepeat = 4,
34
35
InvalidEnum = 5,
36
EnumCount = 5,
37
};
38
39
template <>
40
AddressingMode FromCLenum<AddressingMode>(CLenum from);
41
CLenum ToCLenum(AddressingMode from);
42
std::ostream &operator<<(std::ostream &os, AddressingMode value);
43
44
enum class CommandQueueInfo : uint8_t
45
{
46
Context = 0,
47
Device = 1,
48
ReferenceCount = 2,
49
Properties = 3,
50
Size = 4,
51
DeviceDefault = 5,
52
PropertiesArray = 6,
53
54
InvalidEnum = 7,
55
EnumCount = 7,
56
};
57
58
template <>
59
CommandQueueInfo FromCLenum<CommandQueueInfo>(CLenum from);
60
CLenum ToCLenum(CommandQueueInfo from);
61
std::ostream &operator<<(std::ostream &os, CommandQueueInfo value);
62
63
enum class ContextInfo : uint8_t
64
{
65
ReferenceCount = 0,
66
Devices = 1,
67
Properties = 2,
68
NumDevices = 3,
69
70
InvalidEnum = 4,
71
EnumCount = 4,
72
};
73
74
template <>
75
ContextInfo FromCLenum<ContextInfo>(CLenum from);
76
CLenum ToCLenum(ContextInfo from);
77
std::ostream &operator<<(std::ostream &os, ContextInfo value);
78
79
enum class DeviceInfo : uint8_t
80
{
81
Type = 0,
82
VendorID = 1,
83
MaxComputeUnits = 2,
84
MaxWorkItemDimensions = 3,
85
MaxWorkGroupSize = 4,
86
MaxWorkItemSizes = 5,
87
PreferredVectorWidthChar = 6,
88
PreferredVectorWidthShort = 7,
89
PreferredVectorWidthInt = 8,
90
PreferredVectorWidthLong = 9,
91
PreferredVectorWidthFloat = 10,
92
PreferredVectorWidthDouble = 11,
93
MaxClockFrequency = 12,
94
AddressBits = 13,
95
MaxReadImageArgs = 14,
96
MaxWriteImageArgs = 15,
97
MaxMemAllocSize = 16,
98
Image2D_MaxWidth = 17,
99
Image2D_MaxHeight = 18,
100
Image3D_MaxWidth = 19,
101
Image3D_MaxHeight = 20,
102
Image3D_MaxDepth = 21,
103
ImageSupport = 22,
104
MaxParameterSize = 23,
105
MaxSamplers = 24,
106
MemBaseAddrAlign = 25,
107
MinDataTypeAlignSize = 26,
108
SingleFpConfig = 27,
109
GlobalMemCacheType = 28,
110
GlobalMemCachelineSize = 29,
111
GlobalMemCacheSize = 30,
112
GlobalMemSize = 31,
113
MaxConstantBufferSize = 32,
114
MaxConstantArgs = 33,
115
LocalMemType = 34,
116
LocalMemSize = 35,
117
ErrorCorrectionSupport = 36,
118
ProfilingTimerResolution = 37,
119
EndianLittle = 38,
120
Available = 39,
121
CompilerAvailable = 40,
122
ExecutionCapabilities = 41,
123
QueueOnHostProperties = 42,
124
Name = 43,
125
Vendor = 44,
126
DriverVersion = 45,
127
Profile = 46,
128
Version = 47,
129
Extensions = 48,
130
Platform = 49,
131
DoubleFpConfig = 50,
132
HalfFpConfig = 51,
133
PreferredVectorWidthHalf = 52,
134
HostUnifiedMemory = 53,
135
NativeVectorWidthChar = 54,
136
NativeVectorWidthShort = 55,
137
NativeVectorWidthInt = 56,
138
NativeVectorWidthLong = 57,
139
NativeVectorWidthFloat = 58,
140
NativeVectorWidthDouble = 59,
141
NativeVectorWidthHalf = 60,
142
OpenCL_C_Version = 61,
143
LinkerAvailable = 62,
144
BuiltInKernels = 63,
145
ImageMaxBufferSize = 64,
146
ImageMaxArraySize = 65,
147
ParentDevice = 66,
148
PartitionMaxSubDevices = 67,
149
PartitionProperties = 68,
150
PartitionAffinityDomain = 69,
151
PartitionType = 70,
152
ReferenceCount = 71,
153
PreferredInteropUserSync = 72,
154
PrintfBufferSize = 73,
155
ImagePitchAlignment = 74,
156
ImageBaseAddressAlignment = 75,
157
MaxReadWriteImageArgs = 76,
158
MaxGlobalVariableSize = 77,
159
QueueOnDeviceProperties = 78,
160
QueueOnDevicePreferredSize = 79,
161
QueueOnDeviceMaxSize = 80,
162
MaxOnDeviceQueues = 81,
163
MaxOnDeviceEvents = 82,
164
SVM_Capabilities = 83,
165
GlobalVariablePreferredTotalSize = 84,
166
MaxPipeArgs = 85,
167
PipeMaxActiveReservations = 86,
168
PipeMaxPacketSize = 87,
169
PreferredPlatformAtomicAlignment = 88,
170
PreferredGlobalAtomicAlignment = 89,
171
PreferredLocalAtomicAlignment = 90,
172
IL_Version = 91,
173
MaxNumSubGroups = 92,
174
SubGroupIndependentForwardProgress = 93,
175
NumericVersion = 94,
176
ExtensionsWithVersion = 95,
177
ILsWithVersion = 96,
178
BuiltInKernelsWithVersion = 97,
179
AtomicMemoryCapabilities = 98,
180
AtomicFenceCapabilities = 99,
181
NonUniformWorkGroupSupport = 100,
182
OpenCL_C_AllVersions = 101,
183
PreferredWorkGroupSizeMultiple = 102,
184
WorkGroupCollectiveFunctionsSupport = 103,
185
GenericAddressSpaceSupport = 104,
186
OpenCL_C_Features = 105,
187
DeviceEnqueueCapabilities = 106,
188
PipeSupport = 107,
189
LatestConformanceVersionPassed = 108,
190
191
InvalidEnum = 109,
192
EnumCount = 109,
193
};
194
195
template <>
196
DeviceInfo FromCLenum<DeviceInfo>(CLenum from);
197
CLenum ToCLenum(DeviceInfo from);
198
std::ostream &operator<<(std::ostream &os, DeviceInfo value);
199
200
enum class EventInfo : uint8_t
201
{
202
CommandQueue = 0,
203
CommandType = 1,
204
ReferenceCount = 2,
205
CommandExecutionStatus = 3,
206
Context = 4,
207
208
InvalidEnum = 5,
209
EnumCount = 5,
210
};
211
212
template <>
213
EventInfo FromCLenum<EventInfo>(CLenum from);
214
CLenum ToCLenum(EventInfo from);
215
std::ostream &operator<<(std::ostream &os, EventInfo value);
216
217
enum class FilterMode : uint8_t
218
{
219
Nearest = 0,
220
Linear = 1,
221
222
InvalidEnum = 2,
223
EnumCount = 2,
224
};
225
226
template <>
227
FilterMode FromCLenum<FilterMode>(CLenum from);
228
CLenum ToCLenum(FilterMode from);
229
std::ostream &operator<<(std::ostream &os, FilterMode value);
230
231
enum class ImageInfo : uint8_t
232
{
233
Format = 0,
234
ElementSize = 1,
235
RowPitch = 2,
236
SlicePitch = 3,
237
Width = 4,
238
Height = 5,
239
Depth = 6,
240
ArraySize = 7,
241
Buffer = 8,
242
NumMipLevels = 9,
243
NumSamples = 10,
244
245
InvalidEnum = 11,
246
EnumCount = 11,
247
};
248
249
template <>
250
ImageInfo FromCLenum<ImageInfo>(CLenum from);
251
CLenum ToCLenum(ImageInfo from);
252
std::ostream &operator<<(std::ostream &os, ImageInfo value);
253
254
enum class KernelArgInfo : uint8_t
255
{
256
AddressQualifier = 0,
257
AccessQualifier = 1,
258
TypeName = 2,
259
TypeQualifier = 3,
260
Name = 4,
261
262
InvalidEnum = 5,
263
EnumCount = 5,
264
};
265
266
template <>
267
KernelArgInfo FromCLenum<KernelArgInfo>(CLenum from);
268
CLenum ToCLenum(KernelArgInfo from);
269
std::ostream &operator<<(std::ostream &os, KernelArgInfo value);
270
271
enum class KernelExecInfo : uint8_t
272
{
273
SVM_Ptrs = 0,
274
SVM_FineGrainSystem = 1,
275
276
InvalidEnum = 2,
277
EnumCount = 2,
278
};
279
280
template <>
281
KernelExecInfo FromCLenum<KernelExecInfo>(CLenum from);
282
CLenum ToCLenum(KernelExecInfo from);
283
std::ostream &operator<<(std::ostream &os, KernelExecInfo value);
284
285
enum class KernelInfo : uint8_t
286
{
287
FunctionName = 0,
288
NumArgs = 1,
289
ReferenceCount = 2,
290
Context = 3,
291
Program = 4,
292
Attributes = 5,
293
294
InvalidEnum = 6,
295
EnumCount = 6,
296
};
297
298
template <>
299
KernelInfo FromCLenum<KernelInfo>(CLenum from);
300
CLenum ToCLenum(KernelInfo from);
301
std::ostream &operator<<(std::ostream &os, KernelInfo value);
302
303
enum class KernelSubGroupInfo : uint8_t
304
{
305
MaxSubGroupSizeForNdrange = 0,
306
SubGroupCountForNdrange = 1,
307
LocalSizeForSubGroupCount = 2,
308
MaxNumSubGroups = 3,
309
CompileNumSubGroups = 4,
310
311
InvalidEnum = 5,
312
EnumCount = 5,
313
};
314
315
template <>
316
KernelSubGroupInfo FromCLenum<KernelSubGroupInfo>(CLenum from);
317
CLenum ToCLenum(KernelSubGroupInfo from);
318
std::ostream &operator<<(std::ostream &os, KernelSubGroupInfo value);
319
320
enum class KernelWorkGroupInfo : uint8_t
321
{
322
WorkGroupSize = 0,
323
CompileWorkGroupSize = 1,
324
LocalMemSize = 2,
325
PreferredWorkGroupSizeMultiple = 3,
326
PrivateMemSize = 4,
327
GlobalWorkSize = 5,
328
329
InvalidEnum = 6,
330
EnumCount = 6,
331
};
332
333
template <>
334
KernelWorkGroupInfo FromCLenum<KernelWorkGroupInfo>(CLenum from);
335
CLenum ToCLenum(KernelWorkGroupInfo from);
336
std::ostream &operator<<(std::ostream &os, KernelWorkGroupInfo value);
337
338
enum class MemInfo : uint8_t
339
{
340
Type = 0,
341
Flags = 1,
342
Size = 2,
343
HostPtr = 3,
344
MapCount = 4,
345
ReferenceCount = 5,
346
Context = 6,
347
AssociatedMemObject = 7,
348
Offset = 8,
349
UsesSVM_Pointer = 9,
350
Properties = 10,
351
352
InvalidEnum = 11,
353
EnumCount = 11,
354
};
355
356
template <>
357
MemInfo FromCLenum<MemInfo>(CLenum from);
358
CLenum ToCLenum(MemInfo from);
359
std::ostream &operator<<(std::ostream &os, MemInfo value);
360
361
enum class MemObjectType : uint8_t
362
{
363
Buffer = 0,
364
Image2D = 1,
365
Image3D = 2,
366
Image2D_Array = 3,
367
Image1D = 4,
368
Image1D_Array = 5,
369
Image1D_Buffer = 6,
370
Pipe = 7,
371
372
InvalidEnum = 8,
373
EnumCount = 8,
374
};
375
376
template <>
377
MemObjectType FromCLenum<MemObjectType>(CLenum from);
378
CLenum ToCLenum(MemObjectType from);
379
std::ostream &operator<<(std::ostream &os, MemObjectType value);
380
381
enum class PipeInfo : uint8_t
382
{
383
PacketSize = 0,
384
MaxPackets = 1,
385
Properties = 2,
386
387
InvalidEnum = 3,
388
EnumCount = 3,
389
};
390
391
template <>
392
PipeInfo FromCLenum<PipeInfo>(CLenum from);
393
CLenum ToCLenum(PipeInfo from);
394
std::ostream &operator<<(std::ostream &os, PipeInfo value);
395
396
enum class PlatformInfo : uint8_t
397
{
398
Profile = 0,
399
Version = 1,
400
Name = 2,
401
Vendor = 3,
402
Extensions = 4,
403
HostTimerResolution = 5,
404
NumericVersion = 6,
405
ExtensionsWithVersion = 7,
406
IcdSuffix = 8,
407
408
InvalidEnum = 9,
409
EnumCount = 9,
410
};
411
412
template <>
413
PlatformInfo FromCLenum<PlatformInfo>(CLenum from);
414
CLenum ToCLenum(PlatformInfo from);
415
std::ostream &operator<<(std::ostream &os, PlatformInfo value);
416
417
enum class ProfilingInfo : uint8_t
418
{
419
CommandQueued = 0,
420
CommandSubmit = 1,
421
CommandStart = 2,
422
CommandEnd = 3,
423
CommandComplete = 4,
424
425
InvalidEnum = 5,
426
EnumCount = 5,
427
};
428
429
template <>
430
ProfilingInfo FromCLenum<ProfilingInfo>(CLenum from);
431
CLenum ToCLenum(ProfilingInfo from);
432
std::ostream &operator<<(std::ostream &os, ProfilingInfo value);
433
434
enum class ProgramBuildInfo : uint8_t
435
{
436
Status = 0,
437
Options = 1,
438
Log = 2,
439
BinaryType = 3,
440
GlobalVariableTotalSize = 4,
441
442
InvalidEnum = 5,
443
EnumCount = 5,
444
};
445
446
template <>
447
ProgramBuildInfo FromCLenum<ProgramBuildInfo>(CLenum from);
448
CLenum ToCLenum(ProgramBuildInfo from);
449
std::ostream &operator<<(std::ostream &os, ProgramBuildInfo value);
450
451
enum class ProgramInfo : uint8_t
452
{
453
ReferenceCount = 0,
454
Context = 1,
455
NumDevices = 2,
456
Devices = 3,
457
Source = 4,
458
BinarySizes = 5,
459
Binaries = 6,
460
NumKernels = 7,
461
KernelNames = 8,
462
IL = 9,
463
ScopeGlobalCtorsPresent = 10,
464
ScopeGlobalDtorsPresent = 11,
465
466
InvalidEnum = 12,
467
EnumCount = 12,
468
};
469
470
template <>
471
ProgramInfo FromCLenum<ProgramInfo>(CLenum from);
472
CLenum ToCLenum(ProgramInfo from);
473
std::ostream &operator<<(std::ostream &os, ProgramInfo value);
474
475
enum class SamplerInfo : uint8_t
476
{
477
ReferenceCount = 0,
478
Context = 1,
479
NormalizedCoords = 2,
480
AddressingMode = 3,
481
FilterMode = 4,
482
Properties = 5,
483
484
InvalidEnum = 6,
485
EnumCount = 6,
486
};
487
488
template <>
489
SamplerInfo FromCLenum<SamplerInfo>(CLenum from);
490
CLenum ToCLenum(SamplerInfo from);
491
std::ostream &operator<<(std::ostream &os, SamplerInfo value);
492
493
} // namespace cl
494
495
#endif // COMMON_PACKEDCLENUMS_AUTOGEN_H_
496
497