Diligent Engine  v.2.4.g
Public Types | Public Member Functions | Static Public Attributes | List of all members
Diligent::VulkanDynamicMemoryManager Class Reference

#include <VulkanDynamicHeap.hpp>

Inheritance diagram for Diligent::VulkanDynamicMemoryManager:
Diligent::DynamicHeap::MasterBlockListBasedManager

Public Types

using TBase = DynamicHeap::MasterBlockListBasedManager
 
using OffsetType = TBase::OffsetType
 
using MasterBlock = TBase::MasterBlock
 
- Public Types inherited from Diligent::DynamicHeap::MasterBlockListBasedManager
using OffsetType = VariableSizeAllocationsManager::OffsetType
 
using MasterBlock = VariableSizeAllocationsManager::Allocation
 

Public Member Functions

 VulkanDynamicMemoryManager (IMemoryAllocator &Allocator, class RenderDeviceVkImpl &DeviceVk, Uint32 Size, Uint64 CommandQueueMask)
 
 ~VulkanDynamicMemoryManager ()
 
 VulkanDynamicMemoryManager (const VulkanDynamicMemoryManager &)=delete
 
 VulkanDynamicMemoryManager (VulkanDynamicMemoryManager &&)=delete
 
VulkanDynamicMemoryManageroperator= (const VulkanDynamicMemoryManager &)=delete
 
VulkanDynamicMemoryManageroperator= (VulkanDynamicMemoryManager &&)=delete
 
VkBuffer GetVkBuffer () const
 
Uint8GetCPUAddress () const
 
void Destroy ()
 
MasterBlock AllocateMasterBlock (OffsetType SizeInBytes, OffsetType Alignment)
 
- Public Member Functions inherited from Diligent::DynamicHeap::MasterBlockListBasedManager
 MasterBlockListBasedManager (IMemoryAllocator &Allocator, Uint32 Size)
 
 MasterBlockListBasedManager (const MasterBlockListBasedManager &)=delete
 
 MasterBlockListBasedManager (MasterBlockListBasedManager &&)=delete
 
MasterBlockListBasedManageroperator= (const MasterBlockListBasedManager &)=delete
 
MasterBlockListBasedManageroperator= (MasterBlockListBasedManager &&)=delete
 
 ~MasterBlockListBasedManager ()
 
template<typename RenderDeviceImplType >
void ReleaseMasterBlocks (std::vector< MasterBlock > &Blocks, RenderDeviceImplType &Device, Uint64 CmdQueueMask)
 
OffsetType GetSize () const
 
OffsetType GetUsedSize () const
 

Static Public Attributes

static constexpr const Uint32 MasterBlockAlignment = 1024
 

Additional Inherited Members

- Protected Member Functions inherited from Diligent::DynamicHeap::MasterBlockListBasedManager
MasterBlock AllocateMasterBlock (OffsetType SizeInBytes, OffsetType Alignment)
 

Member Typedef Documentation

◆ MasterBlock

◆ OffsetType

◆ TBase

Constructor & Destructor Documentation

◆ VulkanDynamicMemoryManager() [1/3]

Diligent::VulkanDynamicMemoryManager::VulkanDynamicMemoryManager ( IMemoryAllocator Allocator,
class RenderDeviceVkImpl DeviceVk,
Uint32  Size,
Uint64  CommandQueueMask 
)

◆ ~VulkanDynamicMemoryManager()

Diligent::VulkanDynamicMemoryManager::~VulkanDynamicMemoryManager ( )

◆ VulkanDynamicMemoryManager() [2/3]

Diligent::VulkanDynamicMemoryManager::VulkanDynamicMemoryManager ( const VulkanDynamicMemoryManager )
delete

◆ VulkanDynamicMemoryManager() [3/3]

Diligent::VulkanDynamicMemoryManager::VulkanDynamicMemoryManager ( VulkanDynamicMemoryManager &&  )
delete

Member Function Documentation

◆ AllocateMasterBlock()

VulkanDynamicMemoryManager::MasterBlock Diligent::VulkanDynamicMemoryManager::AllocateMasterBlock ( OffsetType  SizeInBytes,
OffsetType  Alignment 
)

◆ Destroy()

void Diligent::VulkanDynamicMemoryManager::Destroy ( )

◆ GetCPUAddress()

Uint8* Diligent::VulkanDynamicMemoryManager::GetCPUAddress ( ) const
inline

◆ GetVkBuffer()

VkBuffer Diligent::VulkanDynamicMemoryManager::GetVkBuffer ( ) const
inline

◆ operator=() [1/2]

VulkanDynamicMemoryManager& Diligent::VulkanDynamicMemoryManager::operator= ( const VulkanDynamicMemoryManager )
delete

◆ operator=() [2/2]

VulkanDynamicMemoryManager& Diligent::VulkanDynamicMemoryManager::operator= ( VulkanDynamicMemoryManager &&  )
delete

Member Data Documentation

◆ MasterBlockAlignment

constexpr const Uint32 Diligent::VulkanDynamicMemoryManager::MasterBlockAlignment = 1024
staticconstexpr

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