FResourceHeapManager

Inheritance Hierarchy

FDeviceChild

FResourceHeapManager

Syntax

class FResourceHeapManager : public VulkanRHI::FDeviceChild

Remarks

Manages heaps and their interactions.

Variables

Constructors

Name Description

Public function

FResourceHeapManager

(
    FVulkanDevice* InDevice
)

Destructors

Name Description

Public function

~FResourceHeapManager()

Functions

Name Description

Public function

FBufferSubal ...

 

AllocateBuffer

(
    uint32 Size,
    VkBufferUsageFlags BufferUsageFlags,
    VkMemoryPropertyFlags MemoryPropert...,
    const char* File,
    uint32 Line
)

Returns a sub-allocation, as there can be space inside a previously allocated VkBuffer to be reused; to release a sub allocation, just delete the pointer.

Public function

FOldResource ...

 

AllocateBufferMemory

(
    const VkMemoryRequirements& Memory...,
    VkMemoryPropertyFlags MemoryPropert...,
    const char* File,
    uint32 Line
)

Public function

FOldResource ...

 

AllocateImageMemory

(
    const VkMemoryRequirements& Memory...,
    VkMemoryPropertyFlags MemoryPropert...,
    const char* File,
    uint32 Line
)

Public function

void

 

Deinit()

Protected function

void

 

DestroyResourceAllocations()

Protected function

EPoolSizes

 

GetPoolTypeForAlloc

(
    uint32 Size,
    uint32 Alignment
)

Public function

void

 

Init()

Public function

void

 

ReleaseBuffer

(
    FBufferAllocation * BufferAlloc...
)

Release a whole allocation; this is only called from within a FBufferAllocation .

Public function

void

 

ReleaseFreedPages()

Protected function

void

 

ReleaseFreedResources

(
    bool bImmediately
)

Enums

Name

Description

Protected enum

EPoolSizes

Pool sizes that we support

Constants

References

Module

VulkanRHI

Header

Runtime/VulkanRHI/Public/VulkanMemory.h