HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
enums.h File Reference
#include "pxr/pxr.h"
#include "pxr/imaging/hgi/api.h"
#include <cstdint>
+ Include dependency graph for enums.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

using HgiBits = uint32_t
 
using HgiDeviceCapabilities = HgiBits
 
using HgiTextureUsage = HgiBits
 
using HgiBufferUsage = HgiBits
 
using HgiShaderStage = HgiBits
 

Enumerations

enum  HgiDeviceCapabilitiesBits : HgiBits { HgiDeviceCapabilitiesBitsPresentation = 1 << 0 }
 
enum  HgiTextureType { HgiTextureType1D = 0, HgiTextureType2D, HgiTextureType3D, HgiTextureTypeCount }
 
enum  HgiTextureUsageBits : HgiBits {
  HgiTextureUsageBitsColorTarget = 1 << 0, HgiTextureUsageBitsDepthTarget = 1 << 1, HgiTextureUsageBitsStencilTarget = 1 << 2, HgiTextureUsageBitsShaderRead = 1 << 3,
  HgiTextureUsageBitsShaderWrite = 1 << 4, HgiTextureUsageCustomBitsBegin = 1 << 5
}
 
enum  HgiSamplerAddressMode {
  HgiSamplerAddressModeClampToEdge = 0, HgiSamplerAddressModeMirrorClampToEdge, HgiSamplerAddressModeRepeat, HgiSamplerAddressModeMirrorRepeat,
  HgiSamplerAddressModeClampToBorderColor, HgiSamplerAddressModeCount
}
 
enum  HgiSamplerFilter { HgiSamplerFilterNearest = 0, HgiSamplerFilterLinear = 1, HgiSamplerFilterCount }
 
enum  HgiMipFilter { HgiMipFilterNotMipmapped = 0, HgiMipFilterNearest = 1, HgiMipFilterLinear = 2, HgiMipFilterCount }
 
enum  HgiSampleCount { HgiSampleCount1 = 1, HgiSampleCount4 = 4, HgiSampleCount16 = 16 }
 
enum  HgiAttachmentLoadOp { HgiAttachmentLoadOpDontCare = 0, HgiAttachmentLoadOpClear, HgiAttachmentLoadOpLoad, HgiAttachmentLoadOpCount }
 
enum  HgiAttachmentStoreOp { HgiAttachmentStoreOpDontCare = 0, HgiAttachmentStoreOpStore, HgiAttachmentStoreOpCount }
 
enum  HgiBufferUsageBits : HgiBits {
  HgiBufferUsageUniform = 1 << 0, HgiBufferUsageIndex32 = 1 << 1, HgiBufferUsageVertex = 1 << 2, HgiBufferUsageStorage = 1 << 3,
  HgiBufferUsageCustomBitsBegin = 1 << 4
}
 
enum  HgiShaderStageBits : HgiBits {
  HgiShaderStageVertex = 1 << 0, HgiShaderStageFragment = 1 << 1, HgiShaderStageCompute = 1 << 2, HgiShaderStageTessellationControl = 1 << 3,
  HgiShaderStageTessellationEval = 1 << 4, HgiShaderStageGeometry = 1 << 5
}
 
enum  HgiPipelineType { HgiPipelineTypeGraphics = 0, HgiPipelineTypeCompute, HgiPipelineTypeCount }
 
enum  HgiBindResourceType {
  HgiBindResourceTypeSampler = 0, HgiBindResourceTypeCombinedImageSampler, HgiBindResourceTypeSamplerImage, HgiBindResourceTypeStorageImage,
  HgiBindResourceTypeUniformBuffer, HgiBindResourceTypeStorageBuffer, HgiBindResourceTypeCount
}
 
enum  HgiPolygonMode { HgiPolygonModeFill = 0, HgiPolygonModeLine, HgiPolygonModePoint, HgiPolygonModeCount }
 
enum  HgiCullMode {
  HgiCullModeNone = 0, HgiCullModeFront, HgiCullModeBack, HgiCullModeFrontAndBack,
  HgiCullModeCount
}
 
enum  HgiWinding { HgiWindingClockwise = 0, HgiWindingCounterClockwise, HgiWindingCount }
 
enum  HgiBlendOp {
  HgiBlendOpAdd = 0, HgiBlendOpSubtract, HgiBlendOpReverseSubtract, HgiBlendOpMin,
  HgiBlendOpMax, HgiBlendOpCount
}
 
enum  HgiBlendFactor {
  HgiBlendFactorZero = 0, HgiBlendFactorOne, HgiBlendFactorSrcColor, HgiBlendFactorOneMinusSrcColor,
  HgiBlendFactorDstColor, HgiBlendFactorOneMinusDstColor, HgiBlendFactorSrcAlpha, HgiBlendFactorOneMinusSrcAlpha,
  HgiBlendFactorDstAlpha, HgiBlendFactorOneMinusDstAlpha, HgiBlendFactorConstantColor, HgiBlendFactorOneMinusConstantColor,
  HgiBlendFactorConstantAlpha, HgiBlendFactorOneMinusConstantAlpha, HgiBlendFactorSrcAlphaSaturate, HgiBlendFactorSrc1Color,
  HgiBlendFactorOneMinusSrc1Color, HgiBlendFactorSrc1Alpha, HgiBlendFactorOneMinusSrc1Alpha, HgiBlendFactorCount
}
 
enum  HgiCompareFunction {
  HgiCompareFunctionNever = 0, HgiCompareFunctionLess, HgiCompareFunctionEqual, HgiCompareFunctionLEqual,
  HgiCompareFunctionGreater, HgiCompareFunctionNotEqual, HgiCompareFunctionGEqual, HgiCompareFunctionAlways,
  HgiCompareFunctionCount
}
 

Typedef Documentation

using HgiBits = uint32_t

Definition at line 33 of file enums.h.

Definition at line 245 of file enums.h.

Definition at line 50 of file enums.h.

Definition at line 278 of file enums.h.

Definition at line 107 of file enums.h.

Enumeration Type Documentation

Describes what will happen to the attachment pixel data prior to rendering.

  • HgiAttachmentLoadOpDontCare: All pixels are rendered to. Pixel data in render target starts undefined.
  • HgiAttachmentLoadOpClear: The attachment pixel data is cleared to a specified color value.
  • HgiAttachmentLoadOpLoad: Previous pixel data is loaded into attachment prior to rendering.
Enumerator
HgiAttachmentLoadOpDontCare 
HgiAttachmentLoadOpClear 
HgiAttachmentLoadOpLoad 
HgiAttachmentLoadOpCount 

Definition at line 189 of file enums.h.

Describes what will happen to the attachment pixel data after rendering.

  • HgiAttachmentStoreOpDontCare: Pixel data is undefined after rendering has completed (no store cost)
  • HgiAttachmentStoreOpStore: The attachment pixel data is stored in memory.
Enumerator
HgiAttachmentStoreOpDontCare 
HgiAttachmentStoreOpStore 
HgiAttachmentStoreOpCount 

Definition at line 209 of file enums.h.

Describes the type of the resource to be bound.

  • HgiBindResourceTypeSampler: Sampler. Glsl example: uniform sampler samplerOnly
  • HgiBindResourceTypeCombinedImageSampler: Image and sampler combined in one. Glsl example: uniform sampler2D combined
  • HgiBindResourceTypeSamplerImage: Image for use with sampling ops. Glsl example: uniform texture2D textureOnly texture(sampler2D(textureOnly, samplerOnly))
  • HgiBindResourceTypeStorageImage: Storage image used for image store/load ops (Unordered Access View).
  • HgiBindResourceTypeUniformBuffer: Uniform buffer (UBO).
  • HgiBindResourceTypeStorageBuffer: Shader storage buffer (SSBO).
Enumerator
HgiBindResourceTypeSampler 
HgiBindResourceTypeCombinedImageSampler 
HgiBindResourceTypeSamplerImage 
HgiBindResourceTypeStorageImage 
HgiBindResourceTypeUniformBuffer 
HgiBindResourceTypeStorageBuffer 
HgiBindResourceTypeCount 

Definition at line 322 of file enums.h.

Blend factors

Enumerator
HgiBlendFactorZero 
HgiBlendFactorOne 
HgiBlendFactorSrcColor 
HgiBlendFactorOneMinusSrcColor 
HgiBlendFactorDstColor 
HgiBlendFactorOneMinusDstColor 
HgiBlendFactorSrcAlpha 
HgiBlendFactorOneMinusSrcAlpha 
HgiBlendFactorDstAlpha 
HgiBlendFactorOneMinusDstAlpha 
HgiBlendFactorConstantColor 
HgiBlendFactorOneMinusConstantColor 
HgiBlendFactorConstantAlpha 
HgiBlendFactorOneMinusConstantAlpha 
HgiBlendFactorSrcAlphaSaturate 
HgiBlendFactorSrc1Color 
HgiBlendFactorOneMinusSrc1Color 
HgiBlendFactorSrc1Alpha 
HgiBlendFactorOneMinusSrc1Alpha 
HgiBlendFactorCount 

Definition at line 420 of file enums.h.

enum HgiBlendOp

Blend operations

Enumerator
HgiBlendOpAdd 
HgiBlendOpSubtract 
HgiBlendOpReverseSubtract 
HgiBlendOpMin 
HgiBlendOpMax 
HgiBlendOpCount 

Definition at line 405 of file enums.h.

Describes the properties and usage of the buffer.

  • HgiBufferUsageUniform: Shader uniform buffer
  • HgiBufferUsageIndex32: Topology 32 bit indices.
  • HgiBufferUsageVertex: Vertex attributes.
  • HgiBufferUsageStorage: Shader storage buffer / Argument buffer.

  • HgiBufferUsageCustomBitsBegin: This bit (and any bit after) can be used to attached custom, backend specific bits to the usage bit.
Enumerator
HgiBufferUsageUniform 
HgiBufferUsageIndex32 
HgiBufferUsageVertex 
HgiBufferUsageStorage 
HgiBufferUsageCustomBitsBegin 

Definition at line 236 of file enums.h.

Compare functions.

Enumerator
HgiCompareFunctionNever 
HgiCompareFunctionLess 
HgiCompareFunctionEqual 
HgiCompareFunctionLEqual 
HgiCompareFunctionGreater 
HgiCompareFunctionNotEqual 
HgiCompareFunctionGEqual 
HgiCompareFunctionAlways 
HgiCompareFunctionCount 

Definition at line 450 of file enums.h.

Controls primitive (faces) culling.

  • HgiPolygonModeNone: No primitive are discarded.
  • HgiPolygonModeFront: Front-facing primitive are discarded.
  • HgiPolygonModeBack: Back-facing primitive are discarded.
  • HgiPolygonModeFrontAndBack: All primitive are discarded.
Enumerator
HgiCullModeNone 
HgiCullModeFront 
HgiCullModeBack 
HgiCullModeFrontAndBack 
HgiCullModeCount 

Definition at line 371 of file enums.h.

Describes what capabilities the requested device must have.

  • HgiDeviceCapabilitiesBitsPresentation: The device must be capable of presenting graphics to screen
Enumerator
HgiDeviceCapabilitiesBitsPresentation 

Definition at line 45 of file enums.h.

Sampler filtering modes that determine the pixel value that is returned.

  • HgiMipFilterNotMipmapped: Texture is always sampled at mipmap level 0. (ie. max lod=0)
  • HgiMipFilterNearest: Returns the value of a single mipmap level.
  • HgiMipFilterLinear: Linear interpolates the values of up to two mipmap levels.
Enumerator
HgiMipFilterNotMipmapped 
HgiMipFilterNearest 
HgiMipFilterLinear 
HgiMipFilterCount 

Definition at line 156 of file enums.h.

Describes the intended bind point for this pipeline.

  • HgiPipelineTypeGraphics: The pipeline is meant to be bound to the graphics pipeline.
  • HgiPipelineTypeCompute: The pipeline is meant to be bound to the compute pipeline.
Enumerator
HgiPipelineTypeGraphics 
HgiPipelineTypeCompute 
HgiPipelineTypeCount 

Definition at line 291 of file enums.h.

Controls polygon mode during rasterization

  • HgiPolygonModeFill: Polygons are filled.
  • HgiPolygonModeLine: Polygon edges are drawn as line segments.
  • HgiPolygonModePoint: Polygon vertices are drawn as points.
Enumerator
HgiPolygonModeFill 
HgiPolygonModeLine 
HgiPolygonModePoint 
HgiPolygonModeCount 

Definition at line 347 of file enums.h.

Sample count for multi-sampling

Enumerator
HgiSampleCount1 
HgiSampleCount4 
HgiSampleCount16 

Definition at line 169 of file enums.h.

Various modes used during sampling of a texture.

Enumerator
HgiSamplerAddressModeClampToEdge 
HgiSamplerAddressModeMirrorClampToEdge 
HgiSamplerAddressModeRepeat 
HgiSamplerAddressModeMirrorRepeat 
HgiSamplerAddressModeClampToBorderColor 
HgiSamplerAddressModeCount 

Definition at line 113 of file enums.h.

Sampler filtering modes that determine the pixel value that is returned.

  • HgiSamplerFilterNearest: Returns the value of a single mipmap level.
  • HgiSamplerFilterLinear: Combines the values of multiple mipmap levels.
Enumerator
HgiSamplerFilterNearest 
HgiSamplerFilterLinear 
HgiSamplerFilterCount 

Definition at line 135 of file enums.h.

Enumerator
HgiShaderStageVertex 
HgiShaderStageFragment 
HgiShaderStageCompute 
HgiShaderStageTessellationControl 
HgiShaderStageTessellationEval 
HgiShaderStageGeometry 

Definition at line 269 of file enums.h.

Describes the kind of texture.

  • HgiTextureType1D: A one-dimensional texture.
  • HgiTextureType2D: A two-dimensional texture.
  • HgiTextureType3D: A three-dimensional texture.
Enumerator
HgiTextureType1D 
HgiTextureType2D 
HgiTextureType3D 
HgiTextureTypeCount 

Definition at line 65 of file enums.h.

Describes how the texture will be used. If a texture has multiple uses you can combine multiple bits.

  • HgiTextureUsageBitsColorTarget: The texture is a color attachment rendered into via a render pass.
  • HgiTextureUsageBitsDepthTarget: The texture is a depth attachment rendered into via a render pass.
  • HgiTextureUsageBitsStencilTarget: The texture is a stencil attachment rendered into via a render pass.
  • HgiTextureUsageBitsShaderRead: The texture is sampled from in a shader (image load / sampling)
  • HgiTextureUsageBitsShaderWrite: The texture is written into from in a shader (image store)

  • HgiTextureUsageCustomBitsBegin: This bit (and any bit after) can be used to attached custom, backend specific bits to the usage bit.
Enumerator
HgiTextureUsageBitsColorTarget 
HgiTextureUsageBitsDepthTarget 
HgiTextureUsageBitsStencilTarget 
HgiTextureUsageBitsShaderRead 
HgiTextureUsageBitsShaderWrite 
HgiTextureUsageCustomBitsBegin 

Definition at line 96 of file enums.h.

enum HgiWinding

Determines the front-facing orientation of a primitive (face).

  • HgiWindingClockwise: Primitives with clockwise vertex-order are front facing.
  • HgiWindingCounterClockwise: Primitives with counter-clockwise vertex-order are front facing.
Enumerator
HgiWindingClockwise 
HgiWindingCounterClockwise 
HgiWindingCount 

Definition at line 392 of file enums.h.