VV::V3::PhysicalDevice class

Represents a physical device.

This object only acts as a host interface to a given device object's handle.

Base classes

struct VV::V2::PhysicalDevice
Represents a physical device.

Derived classes

class VV::V4::PhysicalDevice

Public types

using Parent = V2::PhysicalDevice

Constructors, destructors, conversion operators

PhysicalDevice()
Default constructor.
PhysicalDevice(Handle _handle)
Default constructor with handle specified.
operator Handle&()
Implicit conversion to give a reference to its handle.
operator const Handle&() const
Implicit conversion to give a readonly reference to its handle.
operator const Handle*() const
Implicit conversion to give a pointer to its handle.

Public functions

void AssignHandle(Handle _handle)
Assigns the handle.
auto CheckExtensionSupport(RoCStr _extensionSpecified) const -> bool
Checks to see if the specified extensions are supported by the physical device.
auto CheckExtensionSupport(DynamicArray<RoCStr> _extensionsSpecified) const -> bool
Checks to see if the extensions specified are supported.
auto FindMemoryType(ui32 _typeFilter, Memory::PropertyFlags _properties) const -> ui32
Find the suitable memory type for the type filter and properties specified.
auto FindSupportedFormat(const DynamicArray<EFormat>& _canidates, EImageTiling _tiling, FormatFeatureFlags _features, EFormat& _format) const -> EResult
Provides the queue families for the respective device.
auto GetAvailableExtensions(RoCStr _layerName, DynamicArray<ExtensionProperties>& _extensionListing) const -> EResult
Assigns the handle.
auto GetAvailableQueueFamilies() const -> DynamicArray<QueueFamilyProperties>
Provides the available queue families in a dynamic array.
auto GetFeatures() const -> const Features&
Provides features.
auto GetFormatProperties(EFormat _format) const -> FormatProperties
Query supported format features which are properties of the physical device.
auto GetMaxSampleCount_ColorAndDepth() const -> ESampleCount
Gets the max sample count between color and depth.
auto GetMemoryProperties() const -> const MemoryProperties&
Provides the memory properties.
auto GetProperties() const -> const Properties&
Provides the properties.
auto GetProperties2() const -> const Properties2&
Provides the properties 2.
auto QueryExtensionProperties(RoCStr _layerName, ui32* _numExtensions, ExtensionProperties* _extensionPropertiesContainer) const -> EResult
Query properties of queues available on a physical device. Reports properties of the queues of the specified physical device.
void QueryQueueFamilyProperties(ui32* _numQueueFamilies, QueueFamilyProperties* _queueFamilies) const
Query properties of queues available on a physical device.
void QueryQueueFamilyProperties2(ui32* _numProperties, QueueFamilyProperties2* _properties) const
Query properties of queues available on a physical device.
auto QueryPerfomranceQueryCounters(ui32 _queueFamilyIndex, ui32* _numCounters, PerformanceCounter* _counters, PerformanceCounter::Description* _counterDescriptions) const -> EResult
Enumerate the performance query counters available on a queue family of a physical device.
auto operator==(const PhysicalDevice& _other) const -> bool
Checks to see if its the same object by checking to see if its the same handle.

Protected variables

Handle handle
EDeviceType type
EDriverID driverID
EVendorID vendorID
Features features
MemoryProperties memoryProperties
Properties properties
Properties2 properties2

Function documentation

bool VV::V3::PhysicalDevice::CheckExtensionSupport(RoCStr _extensionSpecified) const

Checks to see if the specified extensions are supported by the physical device.