Skip to content

ludus::graphics::rhi::DeviceProfile

Ludus Wiki · API overview · Browse API

Struct

Immutable effective profile snapshot while the device is ready; zero otherwise. Formats are indexed by RasterFormat's underlying value, in declaration order. This describes enabled engine operations, not an unbounded raw adapter catalog.

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/profile.h

#include <ludus/graphics/rhi/profile.h>
struct ludus::graphics::rhi::DeviceProfile final

Fields

Raster

RasterCapabilities ludus::graphics::rhi::DeviceProfile::Raster
Negotiated bounded resource/draw limits.

Related types: RasterCapabilities

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/profile.h

Interface

RasterInterfaceCapabilities ludus::graphics::rhi::DeviceProfile::Interface
Public interface limits; zero if portable raster is unavailable.

Related types: RasterInterfaceCapabilities

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/profile.h

Compute

ComputeCapabilities ludus::graphics::rhi::DeviceProfile::Compute
Negotiated bounded buffer-compute limits; zero if unavailable.

Related types: ComputeCapabilities

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/profile.h

Binding

BindingCapabilities ludus::graphics::rhi::DeviceProfile::Binding
Independently enabled descriptor arrays, dynamic offsets and optional indexing.

Related types: BindingCapabilities

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/profile.h

Storage

StorageLimits ludus::graphics::rhi::DeviceProfile::Storage {
        .ResourcesPerKind = 0,
        .BindingDescriptors = 0,
        .DescriptorsPerSet = 0,
        .RayResourcesPerKind = 0,
        .RayInstances = 0,
        .DrawsPerFrame = 0,
        .Batches = 0,
        .DrawsPerPlan = 0,
        .Graphs = 0,
        .ResourcesPerGraph = 0,
        .PassesPerGraph = 0,
        .DependenciesPerGraph = 0,
        .TransientTextures = 0,
        .RasterPassStates = 0,
        .Submissions = 0,
        .TransferSlices = 0,
        .TransferBytes = 0,
        .HostBytes = 0,
        .ResourceBytes = 0,
    }
Immutable configured resource/plan/staging maxima and budgets; all zero outside Ready.

Related types: StorageLimits

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/profile.h

Formats

ludus::foundation::StaticArray<FormatCapabilities, RASTER_FORMAT_COUNT> ludus::graphics::rhi::DeviceProfile::Formats {}
Known format entries indexed by RasterFormat, including unsupported uses.

Related types: ludus::foundation::StaticArray · RASTER_FORMAT_COUNT · FormatCapabilities

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/profile.h