OGRE-Next  3.0.0
Object-Oriented Graphics Rendering Engine
Ogre::VulkanDescriptorPool Class Reference

The VulkanDescriptorPool class A VulkanDescriptorPool manages the pool of a single set (i.e. More...

#include <OgreVulkanDescriptorPool.h>

+ Inheritance diagram for Ogre::VulkanDescriptorPool:

Public Member Functions

 VulkanDescriptorPool (VulkanVaoManager *vaoManager, const VulkanRootLayout *rootLayout, size_t setIdx, const size_t capacity=16u)
 
 ~VulkanDescriptorPool ()
 
void _advanceFrame ()
 
VkDescriptorSet allocate (VulkanDevice *device, VkDescriptorSetLayout setLayout)
 
void deinitialize (VulkanDevice *device)
 
size_t getCurrentCapacity () const
 
bool isAvailableInCurrentFrame () const
 
void reset (VulkanDevice *device)
 

Detailed Description

The VulkanDescriptorPool class A VulkanDescriptorPool manages the pool of a single set (i.e.

one VkDescriptorSetLayout)

It asks for a VulkanRootLayout pointer and the setIdx in order to gather all the data.

However it is not tied to a single VulkanRootLayout and may be shared by multiple VulkanRootLayouts

Constructor & Destructor Documentation

◆ VulkanDescriptorPool()

Ogre::VulkanDescriptorPool::VulkanDescriptorPool ( VulkanVaoManager vaoManager,
const VulkanRootLayout rootLayout,
size_t  setIdx,
const size_t  capacity = 16u 
)

◆ ~VulkanDescriptorPool()

Ogre::VulkanDescriptorPool::~VulkanDescriptorPool ( )

Member Function Documentation

◆ _advanceFrame()

void Ogre::VulkanDescriptorPool::_advanceFrame ( )

◆ allocate()

VkDescriptorSet Ogre::VulkanDescriptorPool::allocate ( VulkanDevice device,
VkDescriptorSetLayout  setLayout 
)

◆ deinitialize()

void Ogre::VulkanDescriptorPool::deinitialize ( VulkanDevice device)

◆ getCurrentCapacity()

size_t Ogre::VulkanDescriptorPool::getCurrentCapacity ( ) const
inline

◆ isAvailableInCurrentFrame()

bool Ogre::VulkanDescriptorPool::isAvailableInCurrentFrame ( ) const

◆ reset()

void Ogre::VulkanDescriptorPool::reset ( VulkanDevice device)

The documentation for this class was generated from the following file: