Pyrogenesis  trunk
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
Renderer::Backend::Vulkan::CBuffer Class Referencefinal

#include <Buffer.h>

Inheritance diagram for Renderer::Backend::Vulkan::CBuffer:
Inheritance graph
[legend]
Collaboration diagram for Renderer::Backend::Vulkan::CBuffer:
Collaboration graph
[legend]

Public Member Functions

 ~CBuffer () override
 
IDeviceGetDevice () override
 
Type GetType () const override
 
uint32_t GetSize () const override
 
bool IsDynamic () const override
 
VkBuffer GetVkBuffer ()
 
void * GetMappedData ()
 
- Public Member Functions inherited from Renderer::Backend::IDeviceObject< IBuffer >
virtual ~IDeviceObject ()
 
TAs ()
 

Private Member Functions

 CBuffer ()
 

Static Private Member Functions

static std::unique_ptr< CBufferCreate (CDevice *device, const char *name, const Type type, const uint32_t size, const bool dynamic)
 

Private Attributes

CDevicem_Device = nullptr
 
Type m_Type = Type::VERTEX
 
uint32_t m_Size = 0
 
bool m_Dynamic = false
 
VkBuffer m_Buffer = VK_NULL_HANDLE
 
VmaAllocation m_Allocation = VK_NULL_HANDLE
 
VmaAllocationInfo m_AllocationInfo {}
 

Friends

class CDevice
 

Additional Inherited Members

- Public Types inherited from Renderer::Backend::IBuffer
enum  Type { Type::VERTEX, Type::INDEX, Type::UPLOAD, Type::UNIFORM }
 

Constructor & Destructor Documentation

◆ ~CBuffer()

Renderer::Backend::Vulkan::CBuffer::~CBuffer ( )
override

◆ CBuffer()

Renderer::Backend::Vulkan::CBuffer::CBuffer ( )
privatedefault

Member Function Documentation

◆ Create()

std::unique_ptr< CBuffer > Renderer::Backend::Vulkan::CBuffer::Create ( CDevice device,
const char *  name,
const Type  type,
const uint32_t  size,
const bool  dynamic 
)
staticprivate

◆ GetDevice()

IDevice * Renderer::Backend::Vulkan::CBuffer::GetDevice ( )
overridevirtual

◆ GetMappedData()

void* Renderer::Backend::Vulkan::CBuffer::GetMappedData ( )
inline
Returns
mapped data for UPLOAD buffers else returns nullptr.

◆ GetSize()

uint32_t Renderer::Backend::Vulkan::CBuffer::GetSize ( ) const
inlineoverridevirtual

◆ GetType()

Type Renderer::Backend::Vulkan::CBuffer::GetType ( ) const
inlineoverridevirtual

◆ GetVkBuffer()

VkBuffer Renderer::Backend::Vulkan::CBuffer::GetVkBuffer ( )
inline

◆ IsDynamic()

bool Renderer::Backend::Vulkan::CBuffer::IsDynamic ( ) const
inlineoverridevirtual

Friends And Related Function Documentation

◆ CDevice

friend class CDevice
friend

Member Data Documentation

◆ m_Allocation

VmaAllocation Renderer::Backend::Vulkan::CBuffer::m_Allocation = VK_NULL_HANDLE
private

◆ m_AllocationInfo

VmaAllocationInfo Renderer::Backend::Vulkan::CBuffer::m_AllocationInfo {}
private

◆ m_Buffer

VkBuffer Renderer::Backend::Vulkan::CBuffer::m_Buffer = VK_NULL_HANDLE
private

◆ m_Device

CDevice* Renderer::Backend::Vulkan::CBuffer::m_Device = nullptr
private

◆ m_Dynamic

bool Renderer::Backend::Vulkan::CBuffer::m_Dynamic = false
private

◆ m_Size

uint32_t Renderer::Backend::Vulkan::CBuffer::m_Size = 0
private

◆ m_Type

Type Renderer::Backend::Vulkan::CBuffer::m_Type = Type::VERTEX
private

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