HDK
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
enums.h
Go to the documentation of this file.
1
//
2
// Copyright 2019 Pixar
3
//
4
// Licensed under the Apache License, Version 2.0 (the "Apache License")
5
// with the following modification; you may not use this file except in
6
// compliance with the Apache License and the following modification to it:
7
// Section 6. Trademarks. is deleted and replaced with:
8
//
9
// 6. Trademarks. This License does not grant permission to use the trade
10
// names, trademarks, service marks, or product names of the Licensor
11
// and its affiliates, except as required to comply with Section 4(c) of
12
// the License and to reproduce the content of the NOTICE file.
13
//
14
// You may obtain a copy of the Apache License at
15
//
16
// http://www.apache.org/licenses/LICENSE-2.0
17
//
18
// Unless required by applicable law or agreed to in writing, software
19
// distributed under the Apache License with the above modification is
20
// distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21
// KIND, either express or implied. See the Apache License for the specific
22
// language governing permissions and limitations under the Apache License.
23
//
24
#ifndef PXR_IMAGING_HGI_ENUMS_H
25
#define PXR_IMAGING_HGI_ENUMS_H
26
27
#include "
pxr/pxr.h
"
28
#include "
pxr/imaging/hgi/api.h
"
29
#include <cstdint>
30
31
PXR_NAMESPACE_OPEN_SCOPE
32
33
using
HgiBits
= uint32_t;
34
35
36
/// \enum HgiDeviceCapabilitiesBits
37
///
38
/// Describes what capabilities the requested device must have.
39
///
40
/// <ul>
41
/// <li>HgiDeviceCapabilitiesBitsPresentation:
42
/// The device must be capable of presenting graphics to screen</li>
43
/// <li>HgiDeviceCapabilitiesBitsBindlessBuffers:
44
/// THe device can access GPU buffers using bindless handles</li>
45
/// <li>HgiDeviceCapabilitiesBitsConcurrentDispatch:
46
/// The device can execute commands concurrently</li>
47
/// <li>HgiDeviceCapabilitiesBitsUnifiedMemory:
48
/// The device shares all GPU and CPU memory</li>
49
/// <li>HgiDeviceCapabilitiesBitsBuiltinBarycentrics:
50
/// The device can provide built-in barycentric coordinates</li>
51
/// <li>HgiDeviceCapabilitiesBitsShaderDrawParameters:
52
/// The device can provide additional built-in shader variables corresponding
53
/// to draw command parameters</li>
54
/// <li>HgiDeviceCapabilitiesBitsMultiDrawIndirect:
55
/// The device supports multiple primitive, indirect drawing</li>
56
/// <li>HgiDeviceCapabilitiesBitsBindlessTextures:
57
/// The device can access GPU textures using bindless handles</li>
58
/// <li>HgiDeviceCapabilitiesBitsShaderDoublePrecision:
59
/// The device supports double precision types in shaders</li>
60
/// <li>HgiDeviceCapabilitiesBitsDepthRangeMinusOnetoOne:
61
/// The device's clip space depth ranges from [-1,1]</li>
62
/// <li>HgiDeviceCapabilitiesBitsCppShaderPadding:
63
/// Use CPP padding for shader language structures</li>
64
/// <li>HgiDeviceCapabilitiesBitsConservativeRaster:
65
/// The device supports conservative rasterization</li>
66
/// <li>HgiDeviceCapabilitiesBitsStencilReadback:
67
/// Supports reading back the stencil buffer from GPU to CPU.</li>
68
/// <li>HgiDeviceCapabilitiesBitsCustomDepthRange:
69
/// The device supports setting a custom depth range.</li>
70
/// <li>HgiDeviceCapabilitiesBitsMetalTessellation:
71
/// Supports Metal tessellation shaders</li>
72
/// <li>HgiDeviceCapabilitiesBitsBasePrimitiveOffset:
73
/// The device requires workaround for base primitive offset</li>
74
/// <li>HgiDeviceCapabilitiesBitsPrimitiveIdEmulation:
75
/// The device requires workaround for primitive id</li>
76
/// <li>HgiDeviceCapabilitiesBitsIndirectCommandBuffers:
77
/// Indirect command buffers are supported</li>
78
/// </ul>
79
///
80
enum
HgiDeviceCapabilitiesBits
:
HgiBits
81
{
82
HgiDeviceCapabilitiesBitsPresentation
= 1 << 0,
83
HgiDeviceCapabilitiesBitsBindlessBuffers
= 1 << 1,
84
HgiDeviceCapabilitiesBitsConcurrentDispatch
= 1 << 2,
85
HgiDeviceCapabilitiesBitsUnifiedMemory
= 1 << 3,
86
HgiDeviceCapabilitiesBitsBuiltinBarycentrics
= 1 << 4,
87
HgiDeviceCapabilitiesBitsShaderDrawParameters
= 1 << 5,
88
HgiDeviceCapabilitiesBitsMultiDrawIndirect
= 1 << 6,
89
HgiDeviceCapabilitiesBitsBindlessTextures
= 1 << 7,
90
HgiDeviceCapabilitiesBitsShaderDoublePrecision
= 1 << 8,
91
HgiDeviceCapabilitiesBitsDepthRangeMinusOnetoOne
= 1 << 9,
92
HgiDeviceCapabilitiesBitsCppShaderPadding
= 1 << 10,
93
HgiDeviceCapabilitiesBitsConservativeRaster
= 1 << 11,
94
HgiDeviceCapabilitiesBitsStencilReadback
= 1 << 12,
95
HgiDeviceCapabilitiesBitsCustomDepthRange
= 1 << 13,
96
HgiDeviceCapabilitiesBitsMetalTessellation
= 1 << 14,
97
HgiDeviceCapabilitiesBitsBasePrimitiveOffset
= 1 << 15,
98
HgiDeviceCapabilitiesBitsPrimitiveIdEmulation
= 1 << 16,
99
HgiDeviceCapabilitiesBitsIndirectCommandBuffers
= 1 << 17,
100
};
101
102
using
HgiDeviceCapabilities
=
HgiBits
;
103
104
/// \enum HgiTextureType
105
///
106
/// Describes the kind of texture.
107
///
108
/// <ul>
109
/// <li>HgiTextureType1D:
110
/// A one-dimensional texture.</li>
111
/// <li>HgiTextureType2D:
112
/// A two-dimensional texture.</li>
113
/// <li>HgiTextureType3D:
114
/// A three-dimensional texture.</li>
115
/// <li>HgiTextureType1DArray:
116
/// An array of one-dimensional textures.</li>
117
/// <li>HgiTextureType2DArray:
118
/// An array of two-dimensional textures.</li>
119
/// </ul>
120
///
121
enum
HgiTextureType
122
{
123
HgiTextureType1D
= 0,
124
HgiTextureType2D
,
125
HgiTextureType3D
,
126
HgiTextureType1DArray
,
127
HgiTextureType2DArray
,
128
129
HgiTextureTypeCount
130
};
131
132
/// \enum HgiTextureUsageBits
133
///
134
/// Describes how the texture will be used. If a texture has multiple uses you
135
/// can combine multiple bits.
136
///
137
/// <ul>
138
/// <li>HgiTextureUsageBitsColorTarget:
139
/// The texture is a color attachment rendered into via a render pass.</li>
140
/// <li>HgiTextureUsageBitsDepthTarget:
141
/// The texture is a depth attachment rendered into via a render pass.</li>
142
/// <li>HgiTextureUsageBitsStencilTarget:
143
/// The texture is a stencil attachment rendered into via a render pass.</li>
144
/// <li>HgiTextureUsageBitsShaderRead:
145
/// The texture is sampled from in a shader (sampling)</li>
146
/// <li>HgiTextureUsageBitsShaderWrite:
147
/// The texture is written into from in a shader (image store)
148
/// When a texture is used as HgiBindResourceTypeStorageImage you must
149
/// add this flag (even if you only read from the image).</li>
150
///
151
/// <li>HgiTextureUsageCustomBitsBegin:
152
/// This bit (and any bit after) can be used to attached custom, backend
153
/// specific bits to the usage bit. </li>
154
/// </ul>
155
///
156
enum
HgiTextureUsageBits
:
HgiBits
157
{
158
HgiTextureUsageBitsColorTarget
= 1 << 0,
159
HgiTextureUsageBitsDepthTarget
= 1 << 1,
160
HgiTextureUsageBitsStencilTarget
= 1 << 2,
161
HgiTextureUsageBitsShaderRead
= 1 << 3,
162
HgiTextureUsageBitsShaderWrite
= 1 << 4,
163
164
HgiTextureUsageCustomBitsBegin
= 1 << 5,
165
};
166
167
using
HgiTextureUsage
=
HgiBits
;
168
169
/// \enum HgiSamplerAddressMode
170
///
171
/// Various modes used during sampling of a texture.
172
///
173
enum
HgiSamplerAddressMode
174
{
175
HgiSamplerAddressModeClampToEdge
= 0,
176
HgiSamplerAddressModeMirrorClampToEdge
,
177
HgiSamplerAddressModeRepeat
,
178
HgiSamplerAddressModeMirrorRepeat
,
179
HgiSamplerAddressModeClampToBorderColor
,
180
181
HgiSamplerAddressModeCount
182
};
183
184
/// \enum HgiSamplerFilter
185
///
186
/// Sampler filtering modes that determine the pixel value that is returned.
187
///
188
/// <ul>
189
/// <li>HgiSamplerFilterNearest:
190
/// Returns the value of a single mipmap level.</li>
191
/// <li>HgiSamplerFilterLinear:
192
/// Combines the values of multiple mipmap levels.</li>
193
/// </ul>
194
///
195
enum
HgiSamplerFilter
196
{
197
HgiSamplerFilterNearest
= 0,
198
HgiSamplerFilterLinear
= 1,
199
200
HgiSamplerFilterCount
201
};
202
203
/// \enum HgiMipFilter
204
///
205
/// Sampler filtering modes that determine the pixel value that is returned.
206
///
207
/// <ul>
208
/// <li>HgiMipFilterNotMipmapped:
209
/// Texture is always sampled at mipmap level 0. (ie. max lod=0)</li>
210
/// <li>HgiMipFilterNearest:
211
/// Returns the value of a single mipmap level.</li>
212
/// <li>HgiMipFilterLinear:
213
/// Linear interpolates the values of up to two mipmap levels.</li>
214
/// </ul>
215
///
216
enum
HgiMipFilter
217
{
218
HgiMipFilterNotMipmapped
= 0,
219
HgiMipFilterNearest
= 1,
220
HgiMipFilterLinear
= 2,
221
222
HgiMipFilterCount
223
};
224
225
/// \enum HgiBorderColor
226
///
227
/// Border color to use for clamped texture values.
228
///
229
/// <ul>
230
/// <li>HgiBorderColorTransparentBlack</li>
231
/// <li>HgiBorderColorOpaqueBlack</li>
232
/// <li>HgiBorderColorOpaqueWhite</li>
233
/// </ul>
234
///
235
enum
HgiBorderColor
236
{
237
HgiBorderColorTransparentBlack
= 0,
238
HgiBorderColorOpaqueBlack
= 1,
239
HgiBorderColorOpaqueWhite
= 2,
240
241
HgiBorderColorCount
242
};
243
244
/// \enum HgiSampleCount
245
///
246
/// Sample count for multi-sampling
247
///
248
enum
HgiSampleCount
249
{
250
HgiSampleCount1
= 1,
251
HgiSampleCount2
= 2,
252
HgiSampleCount4
= 4,
253
HgiSampleCount8
= 8,
254
HgiSampleCount16
= 16,
255
256
HgiSampleCountEnd
257
};
258
259
/// \enum HgiAttachmentLoadOp
260
///
261
/// Describes what will happen to the attachment pixel data prior to rendering.
262
///
263
/// <ul>
264
/// <li>HgiAttachmentLoadOpDontCare:
265
/// All pixels are rendered to. Pixel data in render target starts undefined.</li>
266
/// <li>HgiAttachmentLoadOpClear:
267
/// The attachment pixel data is cleared to a specified color value.</li>
268
/// <li>HgiAttachmentLoadOpLoad:
269
/// Previous pixel data is loaded into attachment prior to rendering.</li>
270
/// </ul>
271
///
272
enum
HgiAttachmentLoadOp
273
{
274
HgiAttachmentLoadOpDontCare
= 0,
275
HgiAttachmentLoadOpClear
,
276
HgiAttachmentLoadOpLoad
,
277
278
HgiAttachmentLoadOpCount
279
};
280
281
/// \enum HgiAttachmentStoreOp
282
///
283
/// Describes what will happen to the attachment pixel data after rendering.
284
///
285
/// <ul>
286
/// <li>HgiAttachmentStoreOpDontCare:
287
/// Pixel data is undefined after rendering has completed (no store cost)</li>
288
/// <li>HgiAttachmentStoreOpStore:
289
/// The attachment pixel data is stored in memory.</li>
290
/// </ul>
291
///
292
enum
HgiAttachmentStoreOp
293
{
294
HgiAttachmentStoreOpDontCare
= 0,
295
HgiAttachmentStoreOpStore
,
296
297
HgiAttachmentStoreOpCount
298
};
299
300
/// \enum HgiBufferUsageBits
301
///
302
/// Describes the properties and usage of the buffer.
303
///
304
/// <ul>
305
/// <li>HgiBufferUsageUniform:
306
/// Shader uniform buffer </li>
307
/// <li>HgiBufferUsageIndex32:
308
/// Topology 32 bit indices.</li>
309
/// <li>HgiBufferUsageVertex:
310
/// Vertex attributes.</li>
311
/// <li>HgiBufferUsageStorage:
312
/// Shader storage buffer / Argument buffer.</li>
313
///
314
/// <li>HgiBufferUsageCustomBitsBegin:
315
/// This bit (and any bit after) can be used to attached custom, backend
316
/// specific bits to the usage bit. </li>
317
/// </ul>
318
///
319
enum
HgiBufferUsageBits
:
HgiBits
320
{
321
HgiBufferUsageUniform
= 1 << 0,
322
HgiBufferUsageIndex32
= 1 << 1,
323
HgiBufferUsageVertex
= 1 << 2,
324
HgiBufferUsageStorage
= 1 << 3,
325
HgiBufferUsageIndirect
= 1 << 4,
326
327
HgiBufferUsageCustomBitsBegin
= 1 << 5,
328
};
329
using
HgiBufferUsage
=
HgiBits
;
330
331
/// \enum HgiShaderStage
332
///
333
/// Describes the stage a shader function operates in.
334
///
335
/// <ul>
336
/// <li>HgiShaderStageVertex:
337
/// Vertex Shader.</li>
338
/// <li>HgiShaderStageFragment:
339
/// Fragment Shader.</li>
340
/// <li>HgiShaderStageCompute:
341
/// Compute Shader.</li>
342
/// <li>HgiShaderStageTessellationControl:
343
/// Transforms the control points of the low order surface (patch).
344
/// This runs before the tessellator fixed function stage.</li>
345
/// <li>HgiShaderStageTessellationEval:
346
/// Generates the surface geometry (the points) from the transformed control
347
/// points for every coordinate coming out of the tessellator fixed function
348
/// stage.</li>
349
/// <li>HgiShaderStageGeometry:
350
/// Governs the processing of Primitives.</li>
351
/// <li>HgiShaderStagePostTessellationControl:
352
/// Metal specific stage which computes tess factors
353
/// and modifies user post tess vertex data.</li>
354
/// <li>HgiShaderStagePostTessellationVertex:
355
/// Metal specific stage which performs tessellation and
356
/// vertex processing.</li>
357
/// </ul>
358
///
359
enum
HgiShaderStageBits
:
HgiBits
360
{
361
HgiShaderStageVertex
= 1 << 0,
362
HgiShaderStageFragment
= 1 << 1,
363
HgiShaderStageCompute
= 1 << 2,
364
HgiShaderStageTessellationControl
= 1 << 3,
365
HgiShaderStageTessellationEval
= 1 << 4,
366
HgiShaderStageGeometry
= 1 << 5,
367
HgiShaderStagePostTessellationControl
= 1 << 6,
368
HgiShaderStagePostTessellationVertex
= 1 << 7,
369
HgiShaderStageCustomBitsBegin
= 1 << 8,
370
};
371
using
HgiShaderStage
=
HgiBits
;
372
373
/// \enum HgiBindResourceType
374
///
375
/// Describes the type of the resource to be bound.
376
///
377
/// <ul>
378
/// <li>HgiBindResourceTypeSampler:
379
/// Sampler.
380
/// Glsl example: uniform sampler samplerOnly</li>
381
/// <li>HgiBindResourceTypeSampledImage:
382
/// Image for use with sampling ops.
383
/// Glsl example: uniform texture2D textureOnly
384
/// texture(sampler2D(textureOnly, samplerOnly), ...)</li>
385
/// <li>HgiBindResourceTypeCombinedSamplerImage:
386
/// Image and sampler combined into one.
387
/// Glsl example: uniform sampler2D texSmp;
388
/// texture(texSmp, ...)</li>
389
/// <li>HgiBindResourceTypeStorageImage:
390
/// Storage image used for image store/load ops (Unordered Access View).</li>
391
/// <li>HgiBindResourceTypeUniformBuffer:
392
/// Uniform buffer (UBO).</li>
393
/// <li>HgiBindResourceTypeStorageBuffer:
394
/// Shader storage buffer (SSBO).</li>
395
/// <li>HgiBindResourceTypeTessFactors:
396
/// Tessellation factors for Metal tessellation.</li>
397
/// </ul>
398
///
399
enum
HgiBindResourceType
400
{
401
HgiBindResourceTypeSampler
= 0,
402
HgiBindResourceTypeSampledImage
,
403
HgiBindResourceTypeCombinedSamplerImage
,
404
HgiBindResourceTypeStorageImage
,
405
HgiBindResourceTypeUniformBuffer
,
406
HgiBindResourceTypeStorageBuffer
,
407
HgiBindResourceTypeTessFactors
,
408
409
HgiBindResourceTypeCount
410
};
411
412
/// \enum HgiPolygonMode
413
///
414
/// Controls polygon mode during rasterization
415
///
416
/// <ul>
417
/// <li>HgiPolygonModeFill:
418
/// Polygons are filled.</li>
419
/// <li>HgiPolygonModeLine:
420
/// Polygon edges are drawn as line segments.</li>
421
/// <li>HgiPolygonModePoint:
422
/// Polygon vertices are drawn as points.</li>
423
/// </ul>
424
///
425
enum
HgiPolygonMode
426
{
427
HgiPolygonModeFill
= 0,
428
HgiPolygonModeLine
,
429
HgiPolygonModePoint
,
430
431
HgiPolygonModeCount
432
};
433
434
/// \enum HgiCullMode
435
///
436
/// Controls primitive (faces) culling.
437
///
438
/// <ul>
439
/// <li>HgiPolygonModeNone:
440
/// No primitive are discarded.</li>
441
/// <li>HgiPolygonModeFront:
442
/// Front-facing primitive are discarded.</li>
443
/// <li>HgiPolygonModeBack:
444
/// Back-facing primitive are discarded.</li>
445
/// <li>HgiPolygonModeFrontAndBack:
446
/// All primitive are discarded.</li>
447
/// </ul>
448
///
449
enum
HgiCullMode
450
{
451
HgiCullModeNone
= 0,
452
HgiCullModeFront
,
453
HgiCullModeBack
,
454
HgiCullModeFrontAndBack
,
455
456
HgiCullModeCount
457
};
458
459
/// \enum HgiWinding
460
///
461
/// Determines the front-facing orientation of a primitive (face).
462
///
463
/// <ul>
464
/// <li>HgiWindingClockwise:
465
/// Primitives with clockwise vertex-order are front facing.</li>
466
/// <li>HgiWindingCounterClockwise:
467
/// Primitives with counter-clockwise vertex-order are front facing.</li>
468
/// </ul>
469
///
470
enum
HgiWinding
471
{
472
HgiWindingClockwise
= 0,
473
HgiWindingCounterClockwise
,
474
475
HgiWindingCount
476
};
477
478
479
/// \enum HgiBlendOp
480
///
481
/// Blend operations
482
///
483
enum
HgiBlendOp
484
{
485
HgiBlendOpAdd
= 0,
486
HgiBlendOpSubtract
,
487
HgiBlendOpReverseSubtract
,
488
HgiBlendOpMin
,
489
HgiBlendOpMax
,
490
491
HgiBlendOpCount
492
};
493
494
/// \enum HgiBlendFactor
495
///
496
/// Blend factors
497
///
498
enum
HgiBlendFactor
499
{
500
HgiBlendFactorZero
= 0,
501
HgiBlendFactorOne
,
502
HgiBlendFactorSrcColor
,
503
HgiBlendFactorOneMinusSrcColor
,
504
HgiBlendFactorDstColor
,
505
HgiBlendFactorOneMinusDstColor
,
506
HgiBlendFactorSrcAlpha
,
507
HgiBlendFactorOneMinusSrcAlpha
,
508
HgiBlendFactorDstAlpha
,
509
HgiBlendFactorOneMinusDstAlpha
,
510
HgiBlendFactorConstantColor
,
511
HgiBlendFactorOneMinusConstantColor
,
512
HgiBlendFactorConstantAlpha
,
513
HgiBlendFactorOneMinusConstantAlpha
,
514
HgiBlendFactorSrcAlphaSaturate
,
515
HgiBlendFactorSrc1Color
,
516
HgiBlendFactorOneMinusSrc1Color
,
517
HgiBlendFactorSrc1Alpha
,
518
HgiBlendFactorOneMinusSrc1Alpha
,
519
520
HgiBlendFactorCount
521
};
522
523
/// \enum HgiColorMaskBits
524
///
525
/// Describes whether to permit or restrict writing to color components
526
/// of a color attachment.
527
///
528
enum
HgiColorMaskBits
:
HgiBits
529
{
530
HgiColorMaskRed
= 1 << 0,
531
HgiColorMaskGreen
= 1 << 1,
532
HgiColorMaskBlue
= 1 << 2,
533
HgiColorMaskAlpha
= 1 << 3,
534
};
535
using
HgiColorMask
=
HgiBits
;
536
537
/// \enum HgiCompareFunction
538
///
539
/// Compare functions.
540
///
541
enum
HgiCompareFunction
542
{
543
HgiCompareFunctionNever
= 0,
544
HgiCompareFunctionLess
,
545
HgiCompareFunctionEqual
,
546
HgiCompareFunctionLEqual
,
547
HgiCompareFunctionGreater
,
548
HgiCompareFunctionNotEqual
,
549
HgiCompareFunctionGEqual
,
550
HgiCompareFunctionAlways
,
551
552
HgiCompareFunctionCount
553
};
554
555
/// \enum HgiStencilOp
556
///
557
/// Stencil operations.
558
///
559
enum
HgiStencilOp
560
{
561
HgiStencilOpKeep
= 0,
562
HgiStencilOpZero
,
563
HgiStencilOpReplace
,
564
HgiStencilOpIncrementClamp
,
565
HgiStencilOpDecrementClamp
,
566
HgiStencilOpInvert
,
567
HgiStencilOpIncrementWrap
,
568
HgiStencilOpDecrementWrap
,
569
570
HgiStencilOpCount
571
};
572
573
/// \enum HgiComponentSwizzle
574
///
575
/// Swizzle for a component.
576
///
577
enum
HgiComponentSwizzle
578
{
579
HgiComponentSwizzleZero
= 0,
580
HgiComponentSwizzleOne
,
581
HgiComponentSwizzleR
,
582
HgiComponentSwizzleG
,
583
HgiComponentSwizzleB
,
584
HgiComponentSwizzleA
,
585
586
HgiComponentSwizzleCount
587
};
588
589
/// \enum HgiPrimitiveType
590
///
591
/// What the stream of vertices being rendered represents
592
///
593
/// <ul>
594
/// <li>HgiPrimitiveTypePointList:
595
/// Rasterize a point at each vertex.</li>
596
/// <li>HgiPrimitiveTypeLineList:
597
/// Rasterize a line between each separate pair of vertices.</li>
598
/// <li>HgiPrimitiveTypeLineStrip:
599
/// Rasterize a line between each pair of adjacent vertices.</li>
600
/// <li>HgiPrimitiveTypeTriangleList:
601
/// Rasterize a triangle for every separate set of three vertices.</li>
602
/// <li>HgiPrimitiveTypePatchList:
603
/// A user-defined number of vertices, which is tessellated into
604
/// points, lines, or triangles.</li>
605
/// <li>HgiPrimitiveTypeLineListWithAdjacency:
606
/// A four-vertex encoding used to draw untriangulated quads.
607
/// Rasterize two triangles for every separate set of four vertices.</li>
608
/// </ul>
609
///
610
enum
HgiPrimitiveType
611
{
612
HgiPrimitiveTypePointList
= 0,
613
HgiPrimitiveTypeLineList
,
614
HgiPrimitiveTypeLineStrip
,
615
HgiPrimitiveTypeTriangleList
,
616
HgiPrimitiveTypePatchList
,
617
HgiPrimitiveTypeLineListWithAdjacency
,
618
619
HgiPrimitiveTypeCount
620
};
621
622
/// \enum HgiVertexBufferStepFunction
623
///
624
/// Describes the rate at which vertex attributes are pulled from buffers.
625
///
626
/// <ul>
627
/// <li>HgiVertexBufferStepFunctionConstant:
628
/// The same attribute data is used for every vertex.</li>
629
/// <li>HgiVertexBufferStepFunctionPerVertex:
630
/// New attribute data is fetched for each vertex.</li>
631
/// <li>HgiVertexBufferStepFunctionPerInstance:
632
/// New attribute data is fetched for each instance.</li>
633
/// <li>HgiVertexBufferStepFunctionPerPatch:
634
/// New attribute data is fetched for each patch.</li>
635
/// <li>HgiVertexBufferStepFunctionPerPatchControlPoint:
636
/// New attribute data is fetched for each patch control point.</li>
637
/// <li>HgiVertexBufferStepFunctionPerDrawCommand:
638
/// New attribute data is fetched for each draw in a multi-draw command.</li>
639
/// </ul>
640
///
641
enum
HgiVertexBufferStepFunction
642
{
643
HgiVertexBufferStepFunctionConstant
= 0,
644
HgiVertexBufferStepFunctionPerVertex
,
645
HgiVertexBufferStepFunctionPerInstance
,
646
HgiVertexBufferStepFunctionPerPatch
,
647
HgiVertexBufferStepFunctionPerPatchControlPoint
,
648
HgiVertexBufferStepFunctionPerDrawCommand
,
649
650
HgiVertexBufferStepFunctionCount
651
};
652
653
/// \enum HgiSubmitWaitType
654
///
655
/// Describes command submission wait behavior.
656
///
657
/// <ul>
658
/// <li>HgiSubmitWaitTypeNoWait:
659
/// CPU should not wait for the GPU to finish processing the cmds.</li>
660
/// <li>HgiSubmitWaitTypeWaitUntilCompleted:
661
/// The CPU waits ("blocked") until the GPU has consumed the cmds.</li>
662
/// </ul>
663
///
664
enum
HgiSubmitWaitType
665
{
666
HgiSubmitWaitTypeNoWait
= 0,
667
HgiSubmitWaitTypeWaitUntilCompleted
,
668
};
669
670
/// \enum HgiMemoryBarrier
671
///
672
/// Describes what objects the memory barrier affects.
673
///
674
/// <ul>
675
/// <li>HgiMemoryBarrierNone:
676
/// No barrier (no-op).</li>
677
/// <li>HgiMemoryBarrierAll:
678
/// The barrier affects all memory writes and reads.</li>
679
/// </ul>
680
///
681
enum
HgiMemoryBarrierBits
682
{
683
HgiMemoryBarrierNone
= 0,
684
HgiMemoryBarrierAll
= 1 << 0
685
};
686
using
HgiMemoryBarrier
=
HgiBits
;
687
688
/// \enum HgiBindingType
689
///
690
/// Describes the type of shader resource binding model to use.
691
///
692
/// <ul>
693
/// <li>HgiBindingTypeValue:
694
/// Shader declares binding as a value.
695
/// Glsl example: buffer { int parameter; };
696
/// Msl example: int parameter;</li>
697
/// <li>HgiBindingTypeUniformValue:
698
/// Shader declares binding as a uniform block value.
699
/// Glsl example: uniform { int parameter; };
700
/// Msl example: int parameter;</li>
701
/// <li>HgiBindingTypeArray:
702
/// Shader declares binding as array value.
703
/// Glsl example: buffer { int parameter[n]; };
704
/// Msl example: int parameter[n];</li>
705
/// <li>HgiBindingTypeUniformArray:
706
/// Shader declares binding as uniform block array value.
707
/// Glsl example: uniform { int parameter[n]; };
708
/// Msl example: int parameter[n];</li>
709
/// <li>HgiBindingTypePointer:
710
/// Shader declares binding as pointer value.
711
/// Glsl example: buffer { int parameter[] };
712
/// Msl example: int *parameter;</li>
713
/// </ul>
714
///
715
enum
HgiBindingType
716
{
717
HgiBindingTypeValue
= 0,
718
HgiBindingTypeUniformValue
,
719
HgiBindingTypeArray
,
720
HgiBindingTypeUniformArray
,
721
HgiBindingTypePointer
,
722
};
723
724
/// \enum HgiInterpolationType
725
///
726
/// Describes the type of parameter interpolation.
727
///
728
/// <ul>
729
/// <li>HgiInterpolationDefault:
730
/// The shader input will have default interpolation.
731
/// Glsl example: vec2 parameter;
732
/// Msl example: vec2 parameter;</li>
733
/// <li>HgiInterpolationFlat:
734
/// The shader input will have no interpolation.
735
/// Glsl example: flat vec2 parameter;
736
/// Msl example: vec2 parameter[[flat]];</li>
737
/// <li>HgiBindingTypeNoPerspective:
738
/// The shader input will be linearly interpolated in screen-space
739
/// Glsl example: noperspective vec2 parameter;
740
/// Msl example: vec2 parameter[[center_no_perspective]];</li>
741
/// </ul>
742
///
743
enum
HgiInterpolationType
744
{
745
HgiInterpolationDefault
= 0,
746
HgiInterpolationFlat
,
747
HgiInterpolationNoPerspective
,
748
};
749
750
/// \enum HgiSamplingType
751
///
752
/// Describes the type of parameter sampling.
753
///
754
/// <ul>
755
/// <li>HgiSamplingDefault:
756
/// The shader input will have default sampling.
757
/// Glsl example: vec2 parameter;
758
/// Msl example: vec2 parameter;</li>
759
/// <li>HgiSamplingCentroid:
760
/// The shader input will have centroid sampling.
761
/// Glsl example: centroid vec2 parameter;
762
/// Msl example: vec2 parameter[[centroid_perspective]];</li>
763
/// <li>HgiSamplingSample:
764
/// The shader input will have per-sample sampling.
765
/// Glsl example: sample vec2 parameter;
766
/// Msl example: vec2 parameter[[sample_perspective]];</li>
767
/// </ul>
768
///
769
enum
HgiSamplingType
770
{
771
HgiSamplingDefault
= 0,
772
HgiSamplingCentroid
,
773
HgiSamplingSample
,
774
};
775
776
/// \enum HgiStorageType
777
///
778
/// Describes the type of parameter storage.
779
///
780
/// <ul>
781
/// <li>HgiStorageDefault:
782
/// The shader input will have default storage.
783
/// Glsl example: vec2 parameter;</li>
784
/// <li>HgiStoragePatch:
785
/// The shader input will have per-patch storage.
786
/// Glsl example: patch vec2 parameter;</li>
787
/// </ul>
788
///
789
enum
HgiStorageType
790
{
791
HgiStorageDefault
= 0,
792
HgiStoragePatch
,
793
};
794
795
/// \enum HgiShaderTextureType
796
///
797
/// Describes the type of texture to be used in shader gen.
798
///
799
/// <ul>
800
/// <li>HgiShaderTextureTypeTexture:
801
/// Indicates a regular texture.</li>
802
/// <li>HgiShaderTextureTypeShadowTexture:
803
/// Indicates a shadow texture.</li>
804
/// <li>HgiShaderTextureTypeArrayTexture:
805
/// Indicates an array texture.</li>
806
/// </ul>
807
///
808
enum
HgiShaderTextureType
809
{
810
HgiShaderTextureTypeTexture
= 0,
811
HgiShaderTextureTypeShadowTexture
,
812
HgiShaderTextureTypeArrayTexture
813
};
814
815
/// \enum HgiComputeDispatch
816
///
817
/// Specifies the dispatch method for compute encoders.
818
///
819
/// <ul>
820
/// <li>HgiComputeDispatchSerial:
821
/// Kernels are dispatched serially.</li>
822
/// <li>HgiComputeDispatchConcurrent:
823
/// Kernels are dispatched concurrently, if supported by the API</li>
824
/// </ul>
825
///
826
enum
HgiComputeDispatch
827
{
828
HgiComputeDispatchSerial
= 0,
829
HgiComputeDispatchConcurrent
830
};
831
832
PXR_NAMESPACE_CLOSE_SCOPE
833
834
#endif
HgiVertexBufferStepFunctionPerPatchControlPoint
Definition:
enums.h:647
HgiAttachmentStoreOpStore
Definition:
enums.h:295
HgiShaderStageVertex
Definition:
enums.h:361
HgiStorageDefault
Definition:
enums.h:791
HgiSamplerFilterCount
Definition:
enums.h:200
HgiSamplerAddressMode
HgiSamplerAddressMode
Definition:
enums.h:173
HgiBufferUsageUniform
Definition:
enums.h:321
HgiStorageType
HgiStorageType
Definition:
enums.h:789
HgiBlendFactorCount
Definition:
enums.h:520
HgiColorMaskBits
HgiColorMaskBits
Definition:
enums.h:528
HgiDeviceCapabilitiesBitsIndirectCommandBuffers
Definition:
enums.h:99
HgiBindResourceTypeUniformBuffer
Definition:
enums.h:405
HgiPolygonMode
HgiPolygonMode
Definition:
enums.h:425
HgiStencilOp
HgiStencilOp
Definition:
enums.h:559
HgiVertexBufferStepFunction
HgiVertexBufferStepFunction
Definition:
enums.h:641
HgiShaderStageCustomBitsBegin
Definition:
enums.h:369
HgiSamplerAddressModeRepeat
Definition:
enums.h:177
HgiDeviceCapabilitiesBitsCppShaderPadding
Definition:
enums.h:92
HgiCompareFunction
HgiCompareFunction
Definition:
enums.h:541
HgiBlendFactorDstColor
Definition:
enums.h:504
HgiStencilOpDecrementClamp
Definition:
enums.h:565
HgiShaderTextureTypeArrayTexture
Definition:
enums.h:812
HgiBindResourceTypeStorageBuffer
Definition:
enums.h:406
HgiComputeDispatchConcurrent
Definition:
enums.h:829
HgiBufferUsageVertex
Definition:
enums.h:323
HgiStencilOpDecrementWrap
Definition:
enums.h:568
HgiShaderStageCompute
Definition:
enums.h:363
HgiAttachmentStoreOpCount
Definition:
enums.h:297
HgiShaderStagePostTessellationVertex
Definition:
enums.h:368
HgiMipFilterCount
Definition:
enums.h:222
HgiBindResourceTypeCombinedSamplerImage
Definition:
enums.h:403
HgiAttachmentLoadOp
HgiAttachmentLoadOp
Definition:
enums.h:272
HgiComputeDispatchSerial
Definition:
enums.h:828
HgiCullModeFront
Definition:
enums.h:452
HgiBorderColorOpaqueBlack
Definition:
enums.h:238
HgiBlendFactorSrc1Color
Definition:
enums.h:515
HgiStencilOpKeep
Definition:
enums.h:561
HgiCompareFunctionLEqual
Definition:
enums.h:546
HgiSamplingSample
Definition:
enums.h:773
HgiVertexBufferStepFunctionConstant
Definition:
enums.h:643
HgiDeviceCapabilitiesBits
HgiDeviceCapabilitiesBits
Definition:
enums.h:80
HgiBindingTypeArray
Definition:
enums.h:719
HgiMipFilter
HgiMipFilter
Definition:
enums.h:216
HgiVertexBufferStepFunctionPerDrawCommand
Definition:
enums.h:648
HgiTextureTypeCount
Definition:
enums.h:129
HgiShaderStageTessellationEval
Definition:
enums.h:365
HgiSamplerAddressModeClampToEdge
Definition:
enums.h:175
HgiDeviceCapabilitiesBitsBindlessTextures
Definition:
enums.h:89
HgiWinding
HgiWinding
Definition:
enums.h:470
HgiBlendOpCount
Definition:
enums.h:491
HgiBorderColorOpaqueWhite
Definition:
enums.h:239
HgiDeviceCapabilitiesBitsUnifiedMemory
Definition:
enums.h:85
HgiSamplingCentroid
Definition:
enums.h:772
HgiPolygonModePoint
Definition:
enums.h:429
HgiBlendFactorOneMinusDstColor
Definition:
enums.h:505
HgiDeviceCapabilitiesBitsPrimitiveIdEmulation
Definition:
enums.h:98
HgiDeviceCapabilities
HgiBits HgiDeviceCapabilities
Definition:
enums.h:102
HgiComponentSwizzleOne
Definition:
enums.h:580
HgiTextureUsageBitsColorTarget
Definition:
enums.h:158
HgiSubmitWaitTypeNoWait
Definition:
enums.h:666
HgiInterpolationNoPerspective
Definition:
enums.h:747
HgiDeviceCapabilitiesBitsConservativeRaster
Definition:
enums.h:93
HgiVertexBufferStepFunctionPerInstance
Definition:
enums.h:645
HgiShaderTextureTypeTexture
Definition:
enums.h:810
HgiCullModeFrontAndBack
Definition:
enums.h:454
HgiVertexBufferStepFunctionPerPatch
Definition:
enums.h:646
HgiSampleCount4
Definition:
enums.h:252
HgiPolygonModeLine
Definition:
enums.h:428
HgiPrimitiveTypeTriangleList
Definition:
enums.h:615
HgiPrimitiveTypeLineStrip
Definition:
enums.h:614
HgiColorMaskGreen
Definition:
enums.h:531
HgiSampleCount16
Definition:
enums.h:254
HgiCullModeCount
Definition:
enums.h:456
HgiSampleCount2
Definition:
enums.h:251
HgiBlendFactorSrcAlphaSaturate
Definition:
enums.h:514
HgiComponentSwizzleZero
Definition:
enums.h:579
HgiBorderColor
HgiBorderColor
Definition:
enums.h:235
HgiSamplingDefault
Definition:
enums.h:771
HgiBufferUsageCustomBitsBegin
Definition:
enums.h:327
HgiTextureUsage
HgiBits HgiTextureUsage
Definition:
enums.h:167
HgiCullMode
HgiCullMode
Definition:
enums.h:449
HgiStoragePatch
Definition:
enums.h:792
HgiTextureType2DArray
Definition:
enums.h:127
HgiComponentSwizzle
HgiComponentSwizzle
Definition:
enums.h:577
HgiMemoryBarrierNone
Definition:
enums.h:683
HgiPrimitiveTypeLineList
Definition:
enums.h:613
HgiWindingClockwise
Definition:
enums.h:472
HgiMipFilterLinear
Definition:
enums.h:220
HgiSubmitWaitType
HgiSubmitWaitType
Definition:
enums.h:664
HgiSampleCount8
Definition:
enums.h:253
HgiBindResourceTypeSampler
Definition:
enums.h:401
HgiWindingCounterClockwise
Definition:
enums.h:473
HgiBlendOpSubtract
Definition:
enums.h:486
HgiWindingCount
Definition:
enums.h:475
HgiAttachmentStoreOp
HgiAttachmentStoreOp
Definition:
enums.h:292
HgiVertexBufferStepFunctionCount
Definition:
enums.h:650
HgiInterpolationType
HgiInterpolationType
Definition:
enums.h:743
HgiTextureUsageBitsShaderRead
Definition:
enums.h:161
HgiComputeDispatch
HgiComputeDispatch
Definition:
enums.h:826
HgiSamplerFilterNearest
Definition:
enums.h:197
HgiTextureType2D
Definition:
enums.h:124
HgiMemoryBarrierAll
Definition:
enums.h:684
HgiDeviceCapabilitiesBitsBindlessBuffers
Definition:
enums.h:83
HgiBindingType
HgiBindingType
Definition:
enums.h:715
HgiBlendFactor
HgiBlendFactor
Definition:
enums.h:498
HgiShaderStageTessellationControl
Definition:
enums.h:364
HgiMemoryBarrierBits
HgiMemoryBarrierBits
Definition:
enums.h:681
HgiStencilOpZero
Definition:
enums.h:562
HgiBlendOpMin
Definition:
enums.h:488
HgiCompareFunctionCount
Definition:
enums.h:552
HgiBlendFactorZero
Definition:
enums.h:500
HgiComponentSwizzleR
Definition:
enums.h:581
HgiBlendFactorOneMinusConstantColor
Definition:
enums.h:511
HgiBindResourceType
HgiBindResourceType
Definition:
enums.h:399
pxr.h
HgiBlendFactorConstantColor
Definition:
enums.h:510
HgiCompareFunctionEqual
Definition:
enums.h:545
HgiTextureUsageCustomBitsBegin
Definition:
enums.h:164
HgiPrimitiveTypeCount
Definition:
enums.h:619
HgiMemoryBarrier
HgiBits HgiMemoryBarrier
Definition:
enums.h:686
HgiTextureType3D
Definition:
enums.h:125
HgiBlendOp
HgiBlendOp
Definition:
enums.h:483
HgiAttachmentLoadOpCount
Definition:
enums.h:278
HgiPrimitiveType
HgiPrimitiveType
Definition:
enums.h:610
HgiColorMaskAlpha
Definition:
enums.h:533
HgiCullModeBack
Definition:
enums.h:453
HgiSampleCount1
Definition:
enums.h:250
HgiBlendFactorSrcColor
Definition:
enums.h:502
HgiDeviceCapabilitiesBitsCustomDepthRange
Definition:
enums.h:95
HgiBufferUsageBits
HgiBufferUsageBits
Definition:
enums.h:319
HgiPrimitiveTypeLineListWithAdjacency
Definition:
enums.h:617
HgiAttachmentLoadOpLoad
Definition:
enums.h:276
HgiSamplerFilterLinear
Definition:
enums.h:198
HgiBlendFactorOneMinusSrc1Alpha
Definition:
enums.h:518
HgiSamplerAddressModeMirrorClampToEdge
Definition:
enums.h:176
HgiSamplingType
HgiSamplingType
Definition:
enums.h:769
HgiDeviceCapabilitiesBitsShaderDoublePrecision
Definition:
enums.h:90
HgiDeviceCapabilitiesBitsMetalTessellation
Definition:
enums.h:96
HgiComponentSwizzleCount
Definition:
enums.h:586
HgiComponentSwizzleG
Definition:
enums.h:582
HgiBindResourceTypeSampledImage
Definition:
enums.h:402
HgiPrimitiveTypePointList
Definition:
enums.h:612
HgiBindingTypeUniformValue
Definition:
enums.h:718
HgiSamplerAddressModeClampToBorderColor
Definition:
enums.h:179
HgiShaderStagePostTessellationControl
Definition:
enums.h:367
HgiTextureUsageBits
HgiTextureUsageBits
Definition:
enums.h:156
HgiCompareFunctionNotEqual
Definition:
enums.h:548
HgiTextureType
HgiTextureType
Definition:
enums.h:121
HgiShaderTextureTypeShadowTexture
Definition:
enums.h:811
HgiBlendFactorOneMinusSrcColor
Definition:
enums.h:503
HgiBorderColorCount
Definition:
enums.h:241
HgiDeviceCapabilitiesBitsBuiltinBarycentrics
Definition:
enums.h:86
HgiColorMaskRed
Definition:
enums.h:530
HgiShaderStageGeometry
Definition:
enums.h:366
HgiAttachmentLoadOpClear
Definition:
enums.h:275
HgiTextureType1DArray
Definition:
enums.h:126
HgiDeviceCapabilitiesBitsPresentation
Definition:
enums.h:82
HgiPolygonModeCount
Definition:
enums.h:431
HgiDeviceCapabilitiesBitsStencilReadback
Definition:
enums.h:94
HgiBindResourceTypeTessFactors
Definition:
enums.h:407
HgiSamplerAddressModeMirrorRepeat
Definition:
enums.h:178
HgiBufferUsageIndex32
Definition:
enums.h:322
api.h
PXR_NAMESPACE_OPEN_SCOPE
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition:
path.h:1432
HgiMipFilterNearest
Definition:
enums.h:219
HgiBlendOpReverseSubtract
Definition:
enums.h:487
HgiBufferUsage
HgiBits HgiBufferUsage
Definition:
enums.h:329
HgiBindingTypePointer
Definition:
enums.h:721
HgiBorderColorTransparentBlack
Definition:
enums.h:237
HgiDeviceCapabilitiesBitsBasePrimitiveOffset
Definition:
enums.h:97
HgiBlendOpMax
Definition:
enums.h:489
HgiBlendFactorDstAlpha
Definition:
enums.h:508
HgiShaderStageFragment
Definition:
enums.h:362
HgiSampleCountEnd
Definition:
enums.h:256
HgiShaderStageBits
HgiShaderStageBits
Definition:
enums.h:359
HgiPrimitiveTypePatchList
Definition:
enums.h:616
HgiDeviceCapabilitiesBitsDepthRangeMinusOnetoOne
Definition:
enums.h:91
HgiBlendFactorConstantAlpha
Definition:
enums.h:512
HgiStencilOpIncrementWrap
Definition:
enums.h:567
HgiBlendFactorSrcAlpha
Definition:
enums.h:506
HgiInterpolationDefault
Definition:
enums.h:745
HgiStencilOpReplace
Definition:
enums.h:563
HgiBindingTypeValue
Definition:
enums.h:717
HgiCompareFunctionAlways
Definition:
enums.h:550
PXR_NAMESPACE_CLOSE_SCOPE
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition:
pxr.h:91
HgiComponentSwizzleB
Definition:
enums.h:583
HgiSubmitWaitTypeWaitUntilCompleted
Definition:
enums.h:667
HgiBlendFactorOneMinusConstantAlpha
Definition:
enums.h:513
HgiComponentSwizzleA
Definition:
enums.h:584
HgiColorMaskBlue
Definition:
enums.h:532
HgiVertexBufferStepFunctionPerVertex
Definition:
enums.h:644
HgiSamplerAddressModeCount
Definition:
enums.h:181
HgiStencilOpInvert
Definition:
enums.h:566
HgiShaderStage
HgiBits HgiShaderStage
Definition:
enums.h:371
HgiCullModeNone
Definition:
enums.h:451
HgiBindingTypeUniformArray
Definition:
enums.h:720
HgiBlendFactorSrc1Alpha
Definition:
enums.h:517
HgiBlendFactorOneMinusSrcAlpha
Definition:
enums.h:507
HgiTextureUsageBitsShaderWrite
Definition:
enums.h:162
HgiPolygonModeFill
Definition:
enums.h:427
HgiBindResourceTypeCount
Definition:
enums.h:409
HgiBufferUsageIndirect
Definition:
enums.h:325
HgiShaderTextureType
HgiShaderTextureType
Definition:
enums.h:808
HgiAttachmentLoadOpDontCare
Definition:
enums.h:274
HgiBits
uint32_t HgiBits
Definition:
enums.h:33
HgiDeviceCapabilitiesBitsMultiDrawIndirect
Definition:
enums.h:88
HgiMipFilterNotMipmapped
Definition:
enums.h:218
HgiDeviceCapabilitiesBitsShaderDrawParameters
Definition:
enums.h:87
HgiStencilOpIncrementClamp
Definition:
enums.h:564
HgiBlendFactorOne
Definition:
enums.h:501
HgiBlendFactorOneMinusSrc1Color
Definition:
enums.h:516
HgiBlendOpAdd
Definition:
enums.h:485
HgiSampleCount
HgiSampleCount
Definition:
enums.h:248
HgiTextureType1D
Definition:
enums.h:123
HgiDeviceCapabilitiesBitsConcurrentDispatch
Definition:
enums.h:84
HgiBufferUsageStorage
Definition:
enums.h:324
HgiSamplerFilter
HgiSamplerFilter
Definition:
enums.h:195
HgiCompareFunctionLess
Definition:
enums.h:544
HgiInterpolationFlat
Definition:
enums.h:746
HgiCompareFunctionNever
Definition:
enums.h:543
HgiStencilOpCount
Definition:
enums.h:570
HgiBlendFactorOneMinusDstAlpha
Definition:
enums.h:509
HgiBindResourceTypeStorageImage
Definition:
enums.h:404
HgiCompareFunctionGEqual
Definition:
enums.h:549
HgiTextureUsageBitsDepthTarget
Definition:
enums.h:159
HgiCompareFunctionGreater
Definition:
enums.h:547
HgiAttachmentStoreOpDontCare
Definition:
enums.h:294
HgiTextureUsageBitsStencilTarget
Definition:
enums.h:160
HgiColorMask
HgiBits HgiColorMask
Definition:
enums.h:535
pxr
imaging
hgi
enums.h
Generated on Sat Mar 29 2025 02:44:41 for HDK by
1.8.6