|
|
Donner SVG 0.8.0-pre
SVG editor and embeddable C++20 engine.
|
Typed immutable descriptors for donner::gpu resource creation.
More...
#include <array>#include <cstdint>#include <optional>#include <ostream>#include <type_traits>#include <variant>#include <vector>#include "donner/base/RcString.h"#include "donner/gpu/Handles.h"Classes | |
| struct | donner::gpu::IsBitmaskEnum< T > |
| Marks an enum as a bitmask, enabling operator|, operator&, operator|=, and HasAllFlags. More... | |
| struct | donner::gpu::NativeSurfaceHandle |
| The platform object a surface presents to. More... | |
| struct | donner::gpu::SurfaceDescriptor |
| Descriptor for Device::createSurface. More... | |
| struct | donner::gpu::MapWaitParams |
| Bounds of a wait for a pending buffer mapping. More... | |
| struct | donner::gpu::Extent2d |
| A 2D extent in texels. More... | |
| struct | donner::gpu::Origin2d |
| A 2D texel coordinate, used as the corner a copy region starts at. The default (0, 0) is the whole-rect-from-the-origin convention every copy used before sub-rectangle copies existed. More... | |
| struct | donner::gpu::BufferDescriptor |
| Descriptor for Device::createBuffer. More... | |
| struct | donner::gpu::TextureDescriptor |
| Descriptor for Device::createTexture. All Donner textures are 2D, single-mip. More... | |
| struct | donner::gpu::TextureViewDescriptor |
| Descriptor for Device::createTextureView. Views cover the whole texture. More... | |
| struct | donner::gpu::SurfaceConfiguration |
| Configuration a surface presents under. More... | |
| struct | donner::gpu::SurfaceCapabilities |
| What a surface supports, for choosing a SurfaceConfiguration. More... | |
| struct | donner::gpu::SamplerDescriptor |
| Descriptor for Device::createSampler. More... | |
| struct | donner::gpu::BindGroupLayoutEntry |
| One entry of a BindGroupLayoutDescriptor. More... | |
| struct | donner::gpu::BindGroupLayoutDescriptor |
| Descriptor for Device::createBindGroupLayout. More... | |
| struct | donner::gpu::PipelineLayoutDescriptor |
| Descriptor for Device::createPipelineLayout. More... | |
| struct | donner::gpu::WorkgroupSize |
| Workgroup size a compute entry point declares. More... | |
| struct | donner::gpu::ComputeEntryPointInfo |
| One compute entry point a shader module contains, with the workgroup size compiled into it. More... | |
| struct | donner::gpu::ShaderModuleDescriptor |
| Descriptor for Device::createShaderModule. Source is trusted generated build output, never runtime input from documents. Exactly one source representation must be populated: text kinds (ShaderSourceKind::Wgsl, ShaderSourceKind::Msl) require nonempty sourceText and empty spirvWords; ShaderSourceKind::Spirv requires nonempty spirvWords and empty sourceText. Device::createShaderModule fails closed on any other combination. More... | |
| struct | donner::gpu::VertexAttribute |
| One vertex attribute within a VertexBufferLayout. More... | |
| struct | donner::gpu::VertexBufferLayout |
| Layout of one vertex buffer slot of a render pipeline. More... | |
| struct | donner::gpu::BlendComponent |
| One blend term (color or alpha) of a BlendState. More... | |
| struct | donner::gpu::BlendState |
| Blend state for one color target. More... | |
| struct | donner::gpu::ColorTargetState |
| One color target of a render pipeline's fragment stage. More... | |
| struct | donner::gpu::VertexState |
| Vertex stage of a RenderPipelineDescriptor. More... | |
| struct | donner::gpu::FragmentState |
| Fragment stage of a RenderPipelineDescriptor. More... | |
| struct | donner::gpu::ComputeState |
| Compute stage of a ComputePipelineDescriptor. More... | |
| struct | donner::gpu::ComputePipelineDescriptor |
| Descriptor for Device::createComputePipeline. More... | |
| struct | donner::gpu::ComputePassDescriptor |
| Descriptor for CommandEncoder::beginComputePass. More... | |
| struct | donner::gpu::RenderPipelineDescriptor |
| Descriptor for Device::createRenderPipeline. More... | |
| struct | donner::gpu::RenderPassColorAttachment |
| One color attachment of a RenderPassDescriptor. More... | |
| struct | donner::gpu::RenderPassDescriptor |
| Descriptor for CommandEncoder::beginRenderPass. More... | |
| struct | donner::gpu::TexelCopyTextureInfo |
| Source texture of a texture-to-buffer copy. Copies start at texel (0, 0). More... | |
| struct | donner::gpu::TexelCopyBufferLayout |
| Byte layout of texel rows in buffer or host memory for copy operations. More... | |
| struct | donner::gpu::BufferBinding |
| A buffer range bound through a bind group. More... | |
| struct | donner::gpu::TextureViewBinding |
| A texture view bound through a bind group. More... | |
| struct | donner::gpu::SamplerBinding |
| A sampler bound through a bind group. More... | |
| struct | donner::gpu::BindGroupEntry |
| One entry of a BindGroupDescriptor. The resource alternative must match the BindingType of the layout entry with the same binding index. More... | |
| struct | donner::gpu::BindGroupDescriptor |
| Descriptor for Device::createBindGroup. More... | |
Namespaces | |
| namespace | donner |
| Top-level Donner namespace, which is split into different sub-namespaces such as donner::svg and donner::css. | |
Concepts | |
| concept | donner::gpu::BitmaskEnum |
| Concept satisfied by enums marked with IsBitmaskEnum. | |
Enumerations | |
| enum class | donner::gpu::TextureFormat : uint8_t { RGBA8Unorm , BGRA8Unorm , R8Unorm } |
| Texture formats used by Donner render targets, masks, and image uploads. More... | |
| enum class | donner::gpu::TextureUsage : uint32_t { None = 0 , RenderAttachment = 1 << 0 , Sampled = 1 << 1 , CopySrc = 1 << 2 , CopyDst = 1 << 3 , StorageBinding = 1 << 4 } |
| Texture usage flags. Combinable with |. More... | |
| enum class | donner::gpu::BufferUsage : uint32_t { None = 0 , Vertex = 1 << 0 , Index = 1 << 1 , Uniform = 1 << 2 , Storage = 1 << 3 , CopySrc = 1 << 4 , CopyDst = 1 << 5 , MapRead = 1 << 6 } |
| Buffer usage flags. Combinable with |. More... | |
| enum class | donner::gpu::NativeSurfaceKind : uint8_t { MetalLayer , XlibWindow , WaylandSurface , CanvasSelector } |
| Platform object kind a NativeSurfaceHandle names. More... | |
| enum class | donner::gpu::PresentMode : uint8_t { Fifo , Immediate , Mailbox } |
| How presented frames are paced. More... | |
| enum class | donner::gpu::SurfaceAlphaMode : uint8_t { Opaque , Premultiplied , Inherit } |
| How a surface composites its alpha channel with what is behind it. More... | |
| enum class | donner::gpu::MapMode : uint8_t { Read } |
| How a mapped buffer range is accessed from the host. More... | |
| enum class | donner::gpu::MapSliceState : uint8_t { Pending , Ready , DeviceLost , Failed } |
| State of a pending buffer mapping after one backend wait slice. More... | |
| enum class | donner::gpu::MapWaitOutcome : uint8_t { Ready , TimedOut , Cancelled , DeviceLost , Failed } |
| Outcome of a bounded wait for a pending buffer mapping. More... | |
| enum class | donner::gpu::ShaderStage : uint32_t { None = 0 , Vertex = 1 << 0 , Fragment = 1 << 1 , Compute = 1 << 2 } |
| Shader stage visibility flags for bindings. Combinable with |. More... | |
| enum class | donner::gpu::ColorWriteMask : uint32_t { None = 0 , Red = 1 << 0 , Green = 1 << 1 , Blue = 1 << 2 , Alpha = 1 << 3 , All = Red | Green | Blue | Alpha } |
| Per-channel color write mask for a color target. Combinable with |. More... | |
| enum class | donner::gpu::FilterMode : uint8_t { Nearest , Linear } |
| Sampler minification/magnification filter. More... | |
| enum class | donner::gpu::AddressMode : uint8_t { ClampToEdge , Repeat } |
| Sampler texture addressing mode. More... | |
| enum class | donner::gpu::VertexFormat : uint8_t { Float32x2 , Float32x4 , Uint32 } |
| Vertex attribute formats used by Donner pipelines. More... | |
| enum class | donner::gpu::VertexStepMode : uint8_t { Vertex , Instance } |
| Rate at which a vertex buffer is stepped through during a draw. More... | |
| enum class | donner::gpu::PrimitiveTopology : uint8_t { TriangleList , TriangleStrip } |
| Primitive topology for render pipelines. More... | |
| enum class | donner::gpu::CullMode : uint8_t { None , Back } |
| Face culling mode for render pipelines. More... | |
| enum class | donner::gpu::BlendFactor : uint8_t { Zero , One , SrcAlpha , OneMinusSrcAlpha , OneMinusDstAlpha } |
| Blend factors used by Donner pipelines (premultiplied-alpha compositing). More... | |
| enum class | donner::gpu::BlendOperation : uint8_t { Add , Max } |
| Blend operations used by Donner pipelines. More... | |
| enum class | donner::gpu::BindingType : uint8_t { UniformBuffer , ReadOnlyStorageBuffer , SampledTexture2dFloat , FilteringSampler , WriteOnlyStorageTexture2d } |
| Type of resource a bind group layout entry expects. More... | |
| enum class | donner::gpu::LoadOp : uint8_t { Clear , Load } |
| Load operation for a render pass color attachment. More... | |
| enum class | donner::gpu::StoreOp : uint8_t { Store , Discard } |
| Store operation for a render pass color attachment. More... | |
| enum class | donner::gpu::ShaderSourceKind : uint8_t { Wgsl , Msl , Spirv } |
| Shader source language of a ShaderModuleDescriptor. More... | |
| enum class | donner::gpu::SurfaceStatus : uint8_t { Success , Outdated , Lost , DeviceLost , Timeout } |
| Outcome of acquiring from or presenting to a surface. More... | |
Functions | |
| template<BitmaskEnum T> | |
| constexpr T | donner::gpu::operator| (T lhs, T rhs) |
| Bitwise-or for bitmask enums. | |
| template<BitmaskEnum T> | |
| constexpr T | donner::gpu::operator& (T lhs, T rhs) |
| Bitwise-and for bitmask enums. | |
| template<BitmaskEnum T> | |
| constexpr T & | donner::gpu::operator|= (T &lhs, T rhs) |
| Bitwise-or-assign for bitmask enums. | |
| template<BitmaskEnum T> | |
| constexpr bool | donner::gpu::HasAllFlags (T value, T flags) |
Returns true if value contains every flag in flags. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, TextureFormat value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, TextureUsage value) |
| Ostream output operator, e.g. RenderAttachment|CopySrc, or None when no flags are set. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, BufferUsage value) |
| Ostream output operator, e.g. Vertex|CopyDst, or None when no flags are set. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, ShaderStage value) |
| Ostream output operator, e.g. Vertex|Fragment, or None when no flags are set. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, ColorWriteMask value) |
| Ostream output operator, e.g. Red|Green|Blue|Alpha, or None when no flags are set. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, FilterMode value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, AddressMode value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, VertexFormat value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, VertexStepMode value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, PrimitiveTopology value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, CullMode value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, BlendFactor value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, BlendOperation value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, BindingType value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, LoadOp value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, StoreOp value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, ShaderSourceKind value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, NativeSurfaceKind value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, PresentMode value) |
| Ostream output operator. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, SurfaceAlphaMode value) |
| Ostream output operator. | |
| bool | donner::gpu::IsKnownEnumValue (TextureFormat value) |
Returns true if value is a known enumerator. Every enum arriving through a descriptor is checked with these overloads so out-of-range casts fail closed with GpuErrorType::InvalidDescriptor instead of flowing into layout or copy math. | |
| bool | donner::gpu::IsKnownEnumValue (FilterMode value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (AddressMode value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (VertexFormat value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (VertexStepMode value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (PrimitiveTopology value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (CullMode value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (BlendFactor value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (BlendOperation value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (BindingType value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (LoadOp value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (StoreOp value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (ShaderSourceKind value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (NativeSurfaceKind value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (PresentMode value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsKnownEnumValue (SurfaceAlphaMode value) |
Returns true if value is a known enumerator. | |
| bool | donner::gpu::IsValidBitmask (TextureUsage value) |
Returns true if value contains only known flag bits (an empty mask is bit-valid; emptiness is validated separately where required). | |
| bool | donner::gpu::IsValidBitmask (BufferUsage value) |
Returns true if value contains only known flag bits. | |
| bool | donner::gpu::IsValidBitmask (ShaderStage value) |
Returns true if value contains only known flag bits. | |
| bool | donner::gpu::IsValidBitmask (ColorWriteMask value) |
Returns true if value contains only known flag bits. | |
| uint32_t | donner::gpu::TextureFormatBytesPerTexel (TextureFormat format) |
| Bytes per texel for a TextureFormat. | |
| uint32_t | donner::gpu::VertexFormatByteSize (VertexFormat format) |
| Byte size of a VertexFormat. | |
| std::ostream & | donner::gpu::operator<< (std::ostream &os, SurfaceStatus value) |
| Ostream output operator. | |
Typed immutable descriptors for donner::gpu resource creation.
The enum and descriptor surface is intentionally narrow: it covers the operations Geode's rendering, filtering, and the editor actually use, not a general GPU API. Descriptors are plain value types, immutable by convention; all validation happens in donner::gpu::Device operations, which fail closed on malformed input.
|
strong |
|
strong |
Type of resource a bind group layout entry expects.
|
strong |
|
strong |
|
strong |
Buffer usage flags. Combinable with |.
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
How a mapped buffer range is accessed from the host.
| Enumerator | |
|---|---|
| Read | Host reads the range; the buffer needs BufferUsage::MapRead. |
|
strong |
State of a pending buffer mapping after one backend wait slice.
This is what a backend reports; MapWaitOutcome is what the caller of a bounded wait sees, and the two differ because the deadline and the caller's cancellation are decisions the runtime makes, not the backend.
|
strong |
Outcome of a bounded wait for a pending buffer mapping.
Every way a wait can end is its own value. A caller that stopped the wait itself, one whose budget ran out, and one whose device died have different recoveries, so folding them into a single failure would throw away the only information that distinguishes them.
|
strong |
Platform object kind a NativeSurfaceHandle names.
One kind per windowing system this runtime can present to. A browser canvas is named by a CSS selector rather than by a pointer, which is why the handle below carries a string field alongside its pointer fields.
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
Outcome of acquiring from or presenting to a surface.
The three failures are different problems with different recoveries, so each is its own value. A surface whose configuration no longer matches its window is Outdated and recovers by reconfiguring; a surface whose platform object is gone is Lost and recovers only by creating a new surface from a fresh native handle; a lost device recovers by neither.
|
strong |
|
strong |
Texture usage flags. Combinable with |.
|
strong |
|
strong |
|
constexpr |
Returns true if value contains every flag in flags.
| value | Flags to test. |
| flags | Required flags. |
| bool donner::gpu::IsKnownEnumValue | ( | AddressMode | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | BindingType | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | BlendFactor | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | BlendOperation | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | CullMode | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | FilterMode | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | LoadOp | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | NativeSurfaceKind | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | PresentMode | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | PrimitiveTopology | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | ShaderSourceKind | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | StoreOp | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | SurfaceAlphaMode | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | TextureFormat | value | ) |
Returns true if value is a known enumerator. Every enum arriving through a descriptor is checked with these overloads so out-of-range casts fail closed with GpuErrorType::InvalidDescriptor instead of flowing into layout or copy math.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | VertexFormat | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsKnownEnumValue | ( | VertexStepMode | value | ) |
Returns true if value is a known enumerator.
| value | Value to check. |
| bool donner::gpu::IsValidBitmask | ( | BufferUsage | value | ) |
Returns true if value contains only known flag bits.
| value | Bitmask to check. |
| bool donner::gpu::IsValidBitmask | ( | ColorWriteMask | value | ) |
Returns true if value contains only known flag bits.
| value | Bitmask to check. |
| bool donner::gpu::IsValidBitmask | ( | ShaderStage | value | ) |
Returns true if value contains only known flag bits.
| value | Bitmask to check. |
| bool donner::gpu::IsValidBitmask | ( | TextureUsage | value | ) |
Returns true if value contains only known flag bits (an empty mask is bit-valid; emptiness is validated separately where required).
| value | Bitmask to check. |
|
constexpr |
Bitwise-and for bitmask enums.
| lhs | First operand. |
| rhs | Second operand. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| AddressMode | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| BindingType | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| BlendFactor | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| BlendOperation | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| BufferUsage | value ) |
Ostream output operator, e.g. Vertex|CopyDst, or None when no flags are set.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| ColorWriteMask | value ) |
Ostream output operator, e.g. Red|Green|Blue|Alpha, or None when no flags are set.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| CullMode | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| FilterMode | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| LoadOp | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| NativeSurfaceKind | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| PresentMode | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| PrimitiveTopology | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| ShaderSourceKind | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| ShaderStage | value ) |
Ostream output operator, e.g. Vertex|Fragment, or None when no flags are set.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| StoreOp | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| SurfaceAlphaMode | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| SurfaceStatus | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| TextureFormat | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| TextureUsage | value ) |
Ostream output operator, e.g. RenderAttachment|CopySrc, or None when no flags are set.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| VertexFormat | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
| std::ostream & donner::gpu::operator<< | ( | std::ostream & | os, |
| VertexStepMode | value ) |
Ostream output operator.
| os | Output stream. |
| value | Value to output. |
|
constexpr |
Bitwise-or for bitmask enums.
| lhs | First operand. |
| rhs | Second operand. |
|
constexpr |
Bitwise-or-assign for bitmask enums.
| lhs | Value to update. |
| rhs | Flags to add. |
| uint32_t donner::gpu::TextureFormatBytesPerTexel | ( | TextureFormat | format | ) |
Bytes per texel for a TextureFormat.
| format | Texture format. |
| uint32_t donner::gpu::VertexFormatByteSize | ( | VertexFormat | format | ) |
Byte size of a VertexFormat.
| format | Vertex attribute format. |