Skip to content

Global Namespace

Namespaces

Name
LiteFX

Macros

NameDescription
LITEFX_IMPLEMENTATION Declares the implementation for the public interface of a class.

Using Namespace Directives

LiteFX namespace

Namespaces

NameDescription
Graphics
Logging
Math
Rendering
meta Contains type traits and meta-programming features for compile-time evaluation.

Types

NameDescription
App The base class for an application.
AppBuilder Creates a new builder for an App.
AppVersion Contains the version of an App.
ArgumentNotInitializedException An exception that is thrown, if a provided non-optional argument was not initialized.
ArgumentOutOfRangeException An exception that is thrown, if a provided argument is not within the expected range.
Builder Describes an generic builder type.
CovariantIterator Wraps an iterator and returns covariants of type T of the iterated value.
Delegate Represents a handler for an Event, that is assigned a unique token when created, so that it can be identified later.
Enumerable An input range over another range, where the returned values of type T are covariants of the values stored by the underlying range.
Event A class that is used to declare an event, which a number of listeners can subscribe to.
EventArgs Base class for additional event arguments.
Exception The base class for exceptions thrown by the SDK.
IBackend The base class for an app backend.
IResource Provides access to a resource managed by the class.
InvalidArgumentException An exception that is thrown, if a provided argument is not valid.
PimplPtr A smart pointer that manages an implementation instance for a public interface class.
ResizeEventArgs Stores event arguments of a window resize event.
Resource Implements the IResource interface.
RuntimeException An exception that is thrown, if a requested operation could not be executed.
SharedObject Base class for an object that can be shared.
type_switch A switch that can be used to select a callable from a parameter type.

Type Aliases

NameDescription
Array Represents a dynamic array.
Dictionary Represents a dictionary that maps a key to a certain value.
Generator Describes an intermediate container for elements of type T.
Handle Represents a handle type.
Optional Represents an optional value.
Queue Represents a queue.
Ref Represents a copyable and assignable reference wrapper.
SharedPtr Represents a shared pointer, that expresses non-exclusive ownership.
Span Represents a view of an array.
String
StringView
Tuple Represents a tuple of multiple objects.
UniquePtr Represents a unique pointer, that expresses exclusive ownership.
Variant Represents a variant of objects.
WString
WStringView
WeakPtr Represents a weak pointer, that expresses a reference to a shared pointer instance.

Enums

Functions

NameDescription
Join
Narrow Converts an UTF-16 multi-byte encoded string into an UTF-8 representation.
WJoin
Widen Converts an UTF-8 single-byte encoded string into an UTF-16 representation.
asShared Transfers a unique pointer to a shared pointer. The unique pointer will be released during this process.
makeShared Creates a new shared pointer.
makeUnique Creates a new unique pointer.
operator""_hash Computes the FNVa hash for string.

Variables

Concepts

NameDescription
backend Concept that can be used to refer to backend implementations.
covariant_forward_iterator Evaluates, if an iterator of type TIterator iterates values that are covariant to TValue.
is_covariant Evaluates if a type TCovariant behaves covariant to a value type TValue. In this context, covariance is expressed as the type TCovariant can be assigned a value of type TValue or can be constructed from a value of TValue.

Using Namespace Directives

Name
Logging

LiteFX::Graphics namespace

Types

NameDescription
Blitter Utility class that can be used to issue blit commands and generate mip maps.
Vertex Default definition for a simple vertex.

Using Namespace Directives

Name
LiteFX
Math

LiteFX::Logging namespace

Types

NameDescription
ConsoleSink Writes log messages to the console.
ISink Interface for a class that receives log messages.
Log A log to which messages are written to.
Logger A provider for Log instances.
RollingFileSink Writes log messages to a rolling file.
TerminationSink Forcefully terminates the application, if a log message of a certain level or higher is output.

Enums

NameDescription
LogLevel Defines the various log levels.

Using Namespace Directives

Name
LiteFX

LiteFX::Math namespace

Namespaces

NameDescription
Vectors Contains additional exported vector types.

Types

NameDescription
Matrix An algebraic matrix type.
Rect
RectF
RectI
Size2d
Size3d
Size4d
Vector An algebraic vector type. The value type of a vector must be in standard layout (i.e., std::is_standard_layout_v<T> must evaluate to true). This constraint is enforced at compile time and ensures that vector types can be binary marshaled. For example, the LiteFX::Graphics::Vertex type stores nothing more than a series of vectors. The standard layout constraint ensures that a set of vertices can be converted into a plain byte array and back.
Vector1f A vector that contains a single float.
Vector1u A vector that contains a single unsigned integer.
Vector2f A vector that contains two floats.
Vector2i A vector that contains two signed integers.
Vector2u A vector that contains two unsigned integers.
Vector3f A vector that stores three floats.
Vector3i
Vector3u
Vector4f
Vector4i
Vector4u

Type Aliases

NameDescription
Byte A type for a single byte of raw memory.
Double A type for a floating point value with double precision.
Float A type for a floating point value with single precision.
Int16 A type for a signed 16 bit integer.
Int32 A type for a signed 32 bit integer.
Int64 A type for a signed 64 bit integer.
TMatrix2 A generic matrix with 2 rows and 2 columns.
TMatrix3 A generic matrix with 3 rows and 3 columns.
TMatrix3x4 A generic matrix with 3 rows and 4 columns.
TMatrix4 A generic matrix with 4 rows and 4 columns.
TVector1 A generic vector with one component.
TVector2 A generic vector with two components.
TVector3 A generic vector with three components.
TVector4 A generic vector with four components.
UInt16 A type for an unsigned 16 bit integer.
UInt32 A type for an unsigned 32 bit integer.
UInt64 A type for an unsigned 64 bit integer.
UInt8 A type for an unsigned 8 bit integer.

Functions

NameDescription
align Aligns a value size to an alignment alignment.
operator""_b A literal to define a byte.
operator""_f32 A literal to define a floating point value with single precision.
operator""_f64 A literal to define a floating point value with double precision.
operator""_i16 A literal to define a 16 bit integer.
operator""_i32 A literal to define a 32 bit integer.
operator""_i64 A literal to define a 64 bit integer.
operator""_ui16 A literal to define a 16 bit unsigned integer.
operator""_ui32 A literal to define a 32 bit unsigned integer.
operator""_ui64 A literal to define a 64 bit unsigned integer.
operator""_ui8 A literal to define a 8 bit unsigned integer.

Using Namespace Directives

Name
LiteFX

LiteFX::Math::Vectors namespace

Contains additional exported vector types.

Type Aliases

NameDescription
ByteVector1 A vector that contains a single byte.
ByteVector2 A vector that contains two bytes.
ByteVector3 A vector that contains three bytes.
ByteVector4 A vector that contains four bytes.
DoubleVector1 A vector that contains a single floating point value with double precision.
DoubleVector2 A vector that contains two floating point values with double precision.
DoubleVector3 A vector that contains three floating point values with double precision.
DoubleVector4 A vector that contains four floating point values with double precision.
FloatVector1 A vector that contains a single floating point value with single precision.
FloatVector2 A vector that contains two floating point values with single precision.
FloatVector3 A vector that contains three floating point values with single precision.
FloatVector4 A vector that contains four floating point values with single precision.
Int16Vector1 A vector that contains a single 16 bit signed integer.
Int16Vector2 A vector that contains two 16 bit signed integers.
Int16Vector3 A vector that contains three 16 bit signed integers.
Int16Vector4 A vector that contains four 16 bit signed integers.
Int32Vector1 A vector that contains a single 32 bit signed integer.
Int32Vector2 A vector that contains two 32 bit signed integers.
Int32Vector3 A vector that contains three 32 bit signed integers.
Int32Vector4 A vector that contains four 32 bit signed integers.
Int64Vector1 A vector that contains a single 64 bit signed integer.
Int64Vector2 A vector that contains two 64 bit signed integers.
Int64Vector3 A vector that contains three 64 bit signed integers.
Int64Vector4 A vector that contains four 64 bit signed integers.
UInt16Vector1 A vector that contains a single 16 bit unsigned integer.
UInt16Vector2 A vector that contains two 16 bit unsigned integers.
UInt16Vector3 A vector that contains three 16 bit unsigned integers.
UInt16Vector4 A vector that contains four 16 bit unsigned integers.
UInt32Vector1 A vector that contains a single 32 bit unsigned integer.
UInt32Vector2 A vector that contains two 32 bit unsigned integers.
UInt32Vector3 A vector that contains three 32 bit unsigned integers.
UInt32Vector4 A vector that contains four 32 bit unsigned integers.
UInt64Vector1 A vector that contains a single 64 bit unsigned integer.
UInt64Vector2 A vector that contains two 64 bit unsigned integers.
UInt64Vector3 A vector that contains three 64 bit unsigned integers.
UInt64Vector4 A vector that contains four 64 bit unsigned integers.

LiteFX::Rendering namespace

Namespaces

Name
Backends

Types

NameDescription
Barrier A barrier used for GPU resource synchronization.
BarrierBuilder Base class for a builder that builds a Barrier.
BufferAttribute Stores meta data about a buffer attribute, i.e. a member or field of a descriptor or buffer.
CommandBuffer Represents a command buffer, that buffers commands that should be submitted to a CommandQueue.
CommandQueue Represents a command queue.
ComputePipeline Represents a compute Pipeline.
ComputePipelineBuilder Describes the interface of a compute pipeline builder.
DepthStencilState Stores the depth/stencil state of a see IRasterizer.
DescriptorBinding Describes a resource binding to a descriptor or descriptor set.
DescriptorBindingPoint Describes a single descriptor binding point within a IShaderModule.
DescriptorSet Defines a set of descriptors.
DescriptorSetLayout Describes the layout of a descriptor set.
DescriptorSetLayoutBuilder Builds a DescriptorSetLayout for a PipelineLayout.
DetailedMemoryStatistics Stores extended memory statistics, that can be queried by calling IGraphicsFactory::detailedMemoryStatistics.
DeviceState A class that can be used to manage the state of a IGraphicsDevice.
FrameBuffer Stores the images used by a RenderPass to either read from using input attachments or write to using render targets.
FrameBuffer Stores the images used by a RenderPass to either read from using input attachments or write to using render targets.
GraphicsDevice Represents the graphics device that a rendering back-end is doing work on.
GraphicsDeviceFeatures Describes optional features that can be supported by a device.
GraphicsFactory Describes a factory that creates objects for a GraphicsDevice.
IAccelerationStructure Base interface for a ray tracing acceleration structure.
IBarrier The interface for a barrier.
IBottomLevelAccelerationStructure A structure that holds a singular entity of geometry for hardware ray-tracing.
IBuffer Base interface for buffer objects.
IBufferLayout Describes a buffer layout.
ICommandBuffer The interface for a command buffer.
ICommandQueue The interface for a command queue.
IComputePipeline The interface for a compute pipeline.
IDescriptorLayout Describes a the layout of a single descriptor within a DescriptorSet.
IDescriptorSet The interface for a descriptor set.
IDescriptorSetLayout The interface for a descriptor set layout.
IDeviceMemory Describes a chunk of device memory.
IFrameBuffer The interface for a frame buffer.
IGraphicsAdapter Represents a physical graphics adapter.
IGraphicsDevice The interface for a graphics device that.
IGraphicsFactory The interface for a graphics factory.
IImage Describes a generic image.
IIndexBuffer The interface for an index buffer.
IIndexBufferLayout Describes a index buffer layout.
IInputAssembler The interface for an input assembler state.
IMappable Allows for data to be mapped into the object.
IPipeline The interface for a pipeline.
IPipelineLayout The interface for a pipeline layout.
IPushConstantsLayout The interface for a push constants layout.
IPushConstantsRange Describes a range within a IPushConstantsLayout.
IRasterizer Represents the rasterizer state of a RenderPipeline.
IRayTracingPipeline The interface for a ray tracing pipeline.
IRenderBackend The interface to access a render backend.
IRenderPass The interface for a render pass.
IRenderPipeline The interface for a render pipeline.
IRenderTarget Represents a render target, i.e. an abstract view of the output of an RenderPass.
ISampler Describes a texture sampler.
IScissor The interface of a scissor.
IShaderModule Represents a single shader module, i.e. a part of a IShaderProgram.
IShaderProgram The interface for a shader program.
IShaderRecord Describes a record within a shader binding table.
IStateResource The interface for a state resource.
ISurface Represents a surface to render to.
ISwapChain Interface for a swap chain.
ITopLevelAccelerationStructure A structure that stores the instance data for a IBottomLevelAccelerationStructure.
IVertexBuffer The interface for a vertex buffer.
IVertexBufferLayout Describes a vertex buffer layout.
IViewport Interface for a viewport.
IndexBuffer Describes an index buffer.
IndirectBatch An indirect batch used to execute an standard draw call.
IndirectDispatchBatch An indirect batch used to dispatch a compute shader kernel.
IndirectIndexedBatch An indirect batch used to execute an indexed draw call.
InputAssembler Represents a the input assembler state of a RenderPipeline.
InputAssemblerBuilder Builds a InputAssembler.
MemoryHeapStatistics Stores simple memory heap statistics, that can be quickly queried by calling IGraphicsFactory::memoryStatistics
Pipeline Represents a pipeline state.
Pipeline Represents a pipeline state.
PipelineBindingHint A hint used during shader reflection to control the pipeline layout.
PipelineLayout Represents a the layout of a RenderPipeline, ComputePipeline or RayTracingPipeline.
PipelineLayoutBuilder Base class for a builder of a PipelineLayout.
PushConstantsLayout Describes the layout of the pipelines push constant ranges.
PushConstantsLayoutBuilder Builds a PushConstantsLayout for a PipelineLayout.
Rasterizer Implements a IRasterizer.
RasterizerBuilder Builds a Rasterizer.
RayTracingPipeline Represents a ray-tracing Pipeline.
RayTracingPipelineBuilder Describes the interface of a ray-tracing pipeline builder.
RenderBackend Defines a back-end, that provides a device instance for a certain surface and graphics adapter.
RenderPass Represents a render pass.
RenderPass Represents a render pass.
RenderPassBuilder Describes the interface of a render pass builder.
RenderPassDependency Represents a mapping between a set of RenderTarget instances and the input attachments of a IRenderPass.
RenderPipeline Represents a graphics Pipeline.
RenderPipeline Represents a graphics Pipeline.
RenderPipelineBuilder Describes the interface of a render pipeline builder.
RenderTarget Implements a render target.
ResourceAllocationInfo Contains the parameters for a resource allocation.
ResourceAllocationResult Stores the result of a resource allocation.
Scissor Implements a scissor.
ShaderBindingTableOffsets Describes the offsets and sizes of a shader group within a shader binding table buffer.
ShaderProgram Represents a shader program, consisting of multiple IShaderModule "IShaderModules".
ShaderProgramBuilder Base class for a builder that builds a ShaderProgram.
ShaderRecord Defines a generic shader record.
ShaderRecordCollection Stores a set of IShaderRecord "IShaderRecords" in that later form a shader binding table used for ray-tracing.
StateResource Base class for a resource that can be identified by a name string within a DeviceState.
SwapChain Represents a swap chain, i.e. a chain of multiple IImage instances, that can be presented to a ISurface.
TimingEvent An event that is used to measure timestamps in a command queue.
VertexBuffer Describes a vertex buffer.
VertexBufferLayoutBuilder Builds a IVertexBufferLayout.
Viewport Implements a viewport.
VirtualAllocator Represents a virtual allocator that manages memory distribution from a piece of raw memory.

Enums

NameDescription
AccelerationStructureFlags Controls how an acceleration structure should be built.
AllocationAlgorithm The allocation algorithm used by VirtualAllocator "VirtualAllocators".
AllocationBehavior Controls the allocation behavior of IGraphicsFactory.
AllocationStrategy The allocation strategy used by allocators (IGraphicsFactory and VirtualAllocator) when allocating new chunks of memory.
AttributeSemantic Describes the semantic of a buffer attribute.
BlendFactor Specifies a blend factor.
BlendOperation Specifies a blend operation.
BorderMode Describes how to treat texture coordinates that are outside the domain [0..1].
BufferFormat Describes a buffer attribute format.
BufferType Describes the type of a IBuffer.
CompareOperation Describes the operation used to compare depth or stencil values during depth/stencil tests.
CullMode Describes which faces are culled by the Rasterizer stage.
CullOrder Describes the order or vertex winding, that is used to determine, whether a polygon is facing towards or away from the camera.
DefragmentationStrategy The strategy to apply to a defragmentation pass.
DescriptorHeapType The target heap type for a descriptor.
DescriptorType Describes the type of a IDescriptorLayout.
FilterMode Describes the filter operation when accessing a pixel from a texture coordinate.
Format Describes a texel format.
GeometryFlags Controls how a geometry that is part of a bottom-level acceleration structure (BLAS) behaves during ray-tracing.
GpuPreference Provides a preference setting when selecting an adapter.
GraphicsAdapterType Defines different types of graphics adapters.
ImageDimensions Describes the dimensions of a image resource, i.e. the dimensions that are required to access a texel or describe the image extent.
ImageLayout Specifies the layout of an IImage resource.
IndexType Describes the element type of an index buffer.
InstanceFlags Controls how an instance within a ITopLevelAccelerationStructure behaves during ray-tracing.
MipMapMode Describes the filter operation between two mip-map levels.
MultiSamplingLevel Describes the number of samples with which a IImage is sampled.
PipelineStage Defines pipeline stages as points where synchronization may occur.
PolygonMode Describes the draw mode for polygons.
PrimitiveTopology Describes the topology of a mesh primitive.
QueuePriority Specifies the priority with which a queue is scheduled on the GPU.
QueueType Represents the type of a CommandQueue.
RenderTargetFlags Describes the behavior of render targets.
RenderTargetType Describes the type of a render target.
ResourceAccess Defines how a IBuffer or IImage resource is accessed.
ResourceHeap Defines where a resource (buffer or image) memory is located and from where it can be accessed.
ResourceUsage Describes the intended usage for a resource.
ShaderBindingGroup Describes a group or combination of groups of a shader binding table.
ShaderRecordType Describes the type of a shader module record within a shader collection or shader binting table.
ShaderStage Describes the valid shader stages of a graphics pipeline.
StencilOperation An operation that is applied to the stencil buffer.
VertexBufferInputRate The rate at which a vertex buffer of a certain IVertexBufferLayout is made available for vertex shaders.
WriteMask Specifies a write mask for a color buffer.

Functions

NameDescription
getBufferFormatChannelSize Returns the number of bytes used by a channel of a buffer format.
getBufferFormatChannels Returns the number of channels for a buffer format.
getBufferFormatType Returns the underlying data type of a buffer format.
getSize Returns the size of an element of a specified format.
hasDepth Returns true, if the format contains a depth channel.
hasStencil Returns true, if the format contains a stencil channel.
operator& Bitwise conjunction operators
operator&= Bitwise conjunction assignment operators
operator| Bitwise disjunction operators
operator|= Bitwise disjunction assignment operators

Variables

NameDescription
SHADER_RECORD_LOCAL_DATA_ALIGNMENT The size (in bytes) to which shader record local data must be aligned.

Concepts

NameDescription
render_backend Concept that can be used to refer to render backend implementations.

Using Namespace Directives

Name
LiteFX
Math

LiteFX::Rendering::Backends namespace

Namespaces

NameDescription
DX12 Contains conversion helpers for DirectX 12.
Vk Contains conversion helpers for Vulkan.

Types

NameDescription
DX12PlatformException An exception that is thrown, if a requested D3D12 operation could not be executed.
DirectX12Backend Implements the DirectX 12 RenderBackend.
DirectX12Barrier Implements a DirectX 12 resource barrier.
DirectX12BarrierBuilder Builds a DirectX 12 Barrier.
DirectX12BottomLevelAccelerationStructure Implements a DirectX 12 bottom-level acceleration structure (BLAS).
DirectX12CommandBuffer Records commands for a DirectX12Queue
DirectX12ComputePipeline Implements a DirectX 12 ComputePipeline.
DirectX12ComputePipelineBuilder Builds a DirectX 12 ComputePipeline.
DirectX12DescriptorLayout Implements a DirectX 12 IDescriptorLayout
DirectX12DescriptorSet Implements a DirectX 12 DescriptorSet.
DirectX12DescriptorSetLayout Implements a DirectX 12 DescriptorSetLayout.
DirectX12DescriptorSetLayoutBuilder Builds a DirectX12DescriptorSetLayout for a pipeline layout.
DirectX12Device Implements a DirectX 12 graphics device.
DirectX12FrameBuffer Implements a DirectX 12 frame buffer.
DirectX12GraphicsAdapter Implements a DirectX12 IGraphicsAdapter.
DirectX12GraphicsFactory A graphics factory that produces objects for a DirectX12Device.
DirectX12Image Implements a DirectX12 IImage.
DirectX12IndexBufferLayout Implements a DirectX 12 index buffer layout.
DirectX12InputAssembler Implements the DirectX 12 input assembler state.
DirectX12InputAssemblerBuilder Builds a DirectX12InputAssembler.
DirectX12PipelineLayout Implements a DirectX 12 PipelineLayout.
DirectX12PipelineLayoutBuilder Builds a DirectX 12 PipelineLayout for a pipeline.
DirectX12PipelineState Defines the base class for DirectX 12 pipeline state objects.
DirectX12PushConstantsLayout Implements the DirectX 12 PushConstantsLayout.
DirectX12PushConstantsLayoutBuilder Builds a DirectX 12 PushConstantsLayout for a pipeline layout.
DirectX12PushConstantsRange Implements the DirectX 12 IPushConstantsRange.
DirectX12Queue Implements a DirectX 12 command queue.
DirectX12Rasterizer Implements a DirectX 12 IRasterizer.
DirectX12RasterizerBuilder Builds a DirectX 12 IRasterizer.
DirectX12RayTracingPipeline Implements a DirectX 12 RayTracingPipeline.
DirectX12RayTracingPipelineBuilder Builds a DirectX 12 RayTracingPipeline.
DirectX12RenderPass Implements a DirectX 12 render pass.
DirectX12RenderPassBuilder Implements the DirectX 12 RenderPassBuilder.
DirectX12RenderPipeline Implements a DirectX 12 RenderPipeline.
DirectX12RenderPipelineBuilder Builds a DirectX 12 RenderPipeline.
DirectX12ShaderModule Implements a DirectX 12 IShaderModule.
DirectX12ShaderProgram Implements a DirectX 12 ShaderProgram.
DirectX12ShaderProgramBuilder Builds a DirectX 12 ShaderProgram.
DirectX12Surface Implements a DirectX12 ISurface.
DirectX12SwapChain Implements a DirectX 12 swap chain.
DirectX12TopLevelAccelerationStructure Implements a DirectX 12 top-level acceleration structure (TLAS).
DirectX12VertexBufferLayout Implements a DirectX 12 vertex buffer layout.
DirectX12VertexBufferLayoutBuilder Builds a see DirectX12VertexBufferLayout.
IDirectX12AccelerationStructure Represents the base interface for a DirectX 12 acceleration structure implementation.
IDirectX12Buffer Represents the base interface for a DirectX 12 buffer implementation.
IDirectX12Image Represents a DirectX 12 sampled image or the base interface for a texture.
IDirectX12IndexBuffer Represents a DirectX 12 index buffer.
IDirectX12Sampler Represents a DirectX 12 sampler.
IDirectX12VertexBuffer Represents a DirectX 12 vertex buffer.
IVulkanAccelerationStructure Represents the base interface for a Vulkan acceleration structure implementation.
IVulkanBuffer Represents the base interface for a Vulkan buffer implementation.
IVulkanImage Represents a Vulkan sampled image or the base interface for a texture.
IVulkanIndexBuffer Represents a Vulkan index buffer.
IVulkanSampler Represents a Vulkan sampler.
IVulkanVertexBuffer Represents a Vulkan vertex buffer.
VulkanBackend Defines a rendering backend that creates a Vulkan device.
VulkanBarrier Implements a Vulkan resource barrier.
VulkanBarrierBuilder Builds a Vulkan Barrier.
VulkanBottomLevelAccelerationStructure Implements a Vulkan bottom-level acceleration structure (BLAS).
VulkanCommandBuffer Records commands for a VulkanQueue
VulkanComputePipeline Implements a Vulkan ComputePipeline.
VulkanComputePipelineBuilder Builds a Vulkan ComputePipeline.
VulkanDescriptorLayout Implements a Vulkan IDescriptorLayout
VulkanDescriptorSet Implements a Vulkan DescriptorSet.
VulkanDescriptorSetLayout Implements a Vulkan DescriptorSetLayout.
VulkanDescriptorSetLayoutBuilder Builds a VulkanDescriptorSetLayout for a VulkanPipelineLayout.
VulkanDevice Implements a Vulkan graphics device.
VulkanFrameBuffer Implements a Vulkan frame buffer.
VulkanGraphicsAdapter Represents a Vulkan IGraphicsAdapter.
VulkanGraphicsFactory A graphics factory that produces objects for a VulkanDevice.
VulkanImage Implements a Vulkan IImage.
VulkanIndexBufferLayout Implements a Vulkan index buffer layout.
VulkanInputAssembler Implements the Vulkan input assembler state.
VulkanInputAssemblerBuilder Builds a VulkanInputAssembler.
VulkanPipelineLayout Implements a Vulkan PipelineLayout.
VulkanPipelineLayoutBuilder Builds a Vulkan PipelineLayout for a pipeline.
VulkanPipelineState Defines the base class for Vulkan pipeline state objects.
VulkanPlatformException An exception that is thrown, if a requested Vulkan operation could not be executed.
VulkanPushConstantsLayout Implements the Vulkan PushConstantsLayout.
VulkanPushConstantsLayoutBuilder Builds a Vulkan PushConstantsLayout for a VulkanPipelineLayout.
VulkanPushConstantsRange Implements the Vulkan IPushConstantsRange.
VulkanQueue Implements a Vulkan command queue.
VulkanRasterizer Implements a Vulkan IRasterizer.
VulkanRasterizerBuilder Builds a Vulkan IRasterizer.
VulkanRayTracingPipeline Implements a Vulkan RayTracingPipeline.
VulkanRayTracingPipelineBuilder Builds a Vulkan RayTracingPipeline.
VulkanRenderPass Implements a Vulkan render pass.
VulkanRenderPassBuilder Implements the Vulkan RenderPassBuilder.
VulkanRenderPipeline Implements a Vulkan RenderPipeline.
VulkanRenderPipelineBuilder Builds a Vulkan RenderPipeline.
VulkanShaderModule Implements a Vulkan IShaderModule.
VulkanShaderProgram Implements a Vulkan ShaderProgram.
VulkanShaderProgramBuilder Builds a Vulkan ShaderProgram.
VulkanSurface Represents a Vulkan ISurface.
VulkanSwapChain Implements a Vulkan swap chain.
VulkanTopLevelAccelerationStructure Implements a Vulkan top-level acceleration structure (TLAS).
VulkanVertexBufferLayout Implements a Vulkan vertex buffer layout.
VulkanVertexBufferLayoutBuilder Builds a see VulkanVertexBufferLayout.

Type Aliases

NameDescription
ComResource A resource that is hold by a ComPtr.

Functions

NameDescription
raiseIfFailed raiseIfFailed overloads

Variables

Using Namespace Directives

LiteFX::Rendering::Backends::DX12 namespace

Contains conversion helpers for DirectX 12.

Functions

LiteFX::Rendering::Backends::Vk namespace

Contains conversion helpers for Vulkan.

Functions

LiteFX::meta namespace

Contains type traits and meta-programming features for compile-time evaluation.

Types

NameDescription
has_builder_t Trait that is evaluated, if a class does not have an builder member type defined.
is_explicitly_constructible_t Evaluates to either true or false, if T can be constructed using the provided arguments, whilst not being able to be converted from TArg.
is_implicitly_constructible_t Evaluates to either true or false, if T can be constructed using the provided arguments and at the same time can also be converted from TArg.

Variables

NameDescription
has_builder_v Evaluates to either true or false, if T contains an builder member definition.
is_explicitly_constructible_v Evalues to true or false, depending if T contains an explicit constructor that takes TArg and TArgs as arguments.
is_implicitly_constructible_v Evalues to true or false, depending if T contains an implicit constructor that takes TArg and TArgs as arguments.

Concepts

NameDescription
are_same Checks if a set of types are all equal to the type T.
has_builder Checks if a type contains a builder.
implements Checks if a type TDerived is derived from another type TBase and is non-abstract.
is_explicitly_constructible Checks if a type can be constructed using the provided arguments, whilst not being able to be converted from TArg.
is_implicitly_constructible Checks if a type can be constructed using the provided arguments and at the same time can also be converted from TArg.