Castor3D  0.11.0
Multiplatform 3D engine
Fonctions membres publiques | Attributs publics | Attributs publics statiques | Liste de tous les membres
Référence de la structure castor3d::RenderDevice
Graphe de collaboration de castor3d::RenderDevice:
Collaboration graph
[légende]

Fonctions membres publiques

C3D_API RenderDevice (RenderSystem &renderSystem, ashes::PhysicalDevice const &gpu, AshPluginDescription const &desc, ashes::SurfacePtr surface)
 
C3D_API VkFormat selectSuitableDepthFormat (VkFormatFeatureFlags requiredFeatures) const
 
C3D_API VkFormat selectSuitableStencilFormat (VkFormatFeatureFlags requiredFeatures) const
 
C3D_API VkFormat selectSuitableDepthStencilFormat (VkFormatFeatureFlags requiredFeatures) const
 
C3D_API VkFormat selectSuitableFormat (std::vector< VkFormat > const &formats, VkFormatFeatureFlags requiredFeatures) const
 
ashes::Device const * operator-> () const
 
ashes::Device * operator-> ()
 
ashes::Device & operator * ()
 
ashes::Device const & operator * () const
 
uint32_t getGraphicsQueueFamilyIndex () const
 
uint32_t getPresentQueueFamilyIndex () const
 
uint32_t getComputeQueueFamilyIndex () const
 
uint32_t getTransferQueueFamilyIndex () const
 

Attributs publics

RenderSystemrenderSystem
 
ashes::PhysicalDevice const & gpu
 
AshPluginDescription const & desc
 
ashes::SurfacePtr surface
 
VkPhysicalDeviceMemoryProperties memoryProperties {}
 
VkPhysicalDeviceFeatures features {}
 
VkPhysicalDeviceProperties properties {}
 
std::array< uint32_t, 4u > queueFamiliesIndex
 
ashes::DevicePtr device
 
std::vector< ashes::CommandPoolPtr > commandPools
 
ashes::CommandPool * presentCommandPool { nullptr }
 
ashes::CommandPool * graphicsCommandPool { nullptr }
 
ashes::CommandPool * computeCommandPool { nullptr }
 
ashes::CommandPool * transferCommandPool { nullptr }
 
ashes::QueuePtr presentQueue { nullptr }
 
ashes::QueuePtr graphicsQueue { nullptr }
 
ashes::QueuePtr computeQueue { nullptr }
 
ashes::QueuePtr transferQueue { nullptr }
 
GpuBufferPoolSPtr bufferPool
 
UniformBufferPoolsSPtr uboPools
 

Attributs publics statiques

static constexpr size_t GraphicsIdx = 0u
 
static constexpr size_t PresentIdx = 1u
 
static constexpr size_t ComputeIdx = 2u
 
static constexpr size_t TransferIdx = 3u
 

Documentation des constructeurs et destructeur

◆ RenderDevice()

C3D_API castor3d::RenderDevice::RenderDevice ( RenderSystem renderSystem,
ashes::PhysicalDevice const &  gpu,
AshPluginDescription const &  desc,
ashes::SurfacePtr  surface 
)

Documentation des fonctions membres

◆ getComputeQueueFamilyIndex()

uint32_t castor3d::RenderDevice::getComputeQueueFamilyIndex ( ) const
inline

Références ComputeIdx, et queueFamiliesIndex.

◆ getGraphicsQueueFamilyIndex()

uint32_t castor3d::RenderDevice::getGraphicsQueueFamilyIndex ( ) const
inline

Références GraphicsIdx, et queueFamiliesIndex.

◆ getPresentQueueFamilyIndex()

uint32_t castor3d::RenderDevice::getPresentQueueFamilyIndex ( ) const
inline

Références PresentIdx, et queueFamiliesIndex.

◆ getTransferQueueFamilyIndex()

uint32_t castor3d::RenderDevice::getTransferQueueFamilyIndex ( ) const
inline

Références queueFamiliesIndex, et TransferIdx.

◆ operator *() [1/2]

ashes::Device& castor3d::RenderDevice::operator * ( )
inline

Références device.

◆ operator *() [2/2]

ashes::Device const& castor3d::RenderDevice::operator * ( ) const
inline

Références device.

◆ operator->() [1/2]

ashes::Device const* castor3d::RenderDevice::operator-> ( ) const
inline

Références device.

◆ operator->() [2/2]

ashes::Device* castor3d::RenderDevice::operator-> ( )
inline

Références device.

◆ selectSuitableDepthFormat()

C3D_API VkFormat castor3d::RenderDevice::selectSuitableDepthFormat ( VkFormatFeatureFlags  requiredFeatures) const

◆ selectSuitableDepthStencilFormat()

C3D_API VkFormat castor3d::RenderDevice::selectSuitableDepthStencilFormat ( VkFormatFeatureFlags  requiredFeatures) const

◆ selectSuitableFormat()

C3D_API VkFormat castor3d::RenderDevice::selectSuitableFormat ( std::vector< VkFormat > const &  formats,
VkFormatFeatureFlags  requiredFeatures 
) const

◆ selectSuitableStencilFormat()

C3D_API VkFormat castor3d::RenderDevice::selectSuitableStencilFormat ( VkFormatFeatureFlags  requiredFeatures) const

Documentation des données membres

◆ bufferPool

GpuBufferPoolSPtr castor3d::RenderDevice::bufferPool

◆ commandPools

std::vector< ashes::CommandPoolPtr > castor3d::RenderDevice::commandPools

◆ computeCommandPool

ashes::CommandPool* castor3d::RenderDevice::computeCommandPool { nullptr }

◆ ComputeIdx

constexpr size_t castor3d::RenderDevice::ComputeIdx = 2u
static

Référencé par getComputeQueueFamilyIndex().

◆ computeQueue

ashes::QueuePtr castor3d::RenderDevice::computeQueue { nullptr }

◆ desc

AshPluginDescription const& castor3d::RenderDevice::desc

◆ device

ashes::DevicePtr castor3d::RenderDevice::device

Référencé par operator *(), et operator->().

◆ features

VkPhysicalDeviceFeatures castor3d::RenderDevice::features {}

◆ gpu

ashes::PhysicalDevice const& castor3d::RenderDevice::gpu

◆ graphicsCommandPool

ashes::CommandPool* castor3d::RenderDevice::graphicsCommandPool { nullptr }

◆ GraphicsIdx

constexpr size_t castor3d::RenderDevice::GraphicsIdx = 0u
static

Référencé par getGraphicsQueueFamilyIndex().

◆ graphicsQueue

ashes::QueuePtr castor3d::RenderDevice::graphicsQueue { nullptr }

◆ memoryProperties

VkPhysicalDeviceMemoryProperties castor3d::RenderDevice::memoryProperties {}

◆ presentCommandPool

ashes::CommandPool* castor3d::RenderDevice::presentCommandPool { nullptr }

◆ PresentIdx

constexpr size_t castor3d::RenderDevice::PresentIdx = 1u
static

Référencé par getPresentQueueFamilyIndex().

◆ presentQueue

ashes::QueuePtr castor3d::RenderDevice::presentQueue { nullptr }

◆ properties

VkPhysicalDeviceProperties castor3d::RenderDevice::properties {}

◆ queueFamiliesIndex

std::array< uint32_t, 4u > castor3d::RenderDevice::queueFamiliesIndex

◆ renderSystem

RenderSystem& castor3d::RenderDevice::renderSystem

◆ surface

ashes::SurfacePtr castor3d::RenderDevice::surface

◆ transferCommandPool

ashes::CommandPool* castor3d::RenderDevice::transferCommandPool { nullptr }

◆ TransferIdx

constexpr size_t castor3d::RenderDevice::TransferIdx = 3u
static

Référencé par getTransferQueueFamilyIndex().

◆ transferQueue

ashes::QueuePtr castor3d::RenderDevice::transferQueue { nullptr }

◆ uboPools

UniformBufferPoolsSPtr castor3d::RenderDevice::uboPools

La documentation de cette structure a été générée à partir du fichier suivant :