Nebula
Toggle main menu visibility
Loading...
Searching...
No Matches
vkmemory.h
Go to the documentation of this file.
1
#pragma once
2
//------------------------------------------------------------------------------
9
//------------------------------------------------------------------------------
10
#include "
util/array.h
"
11
#include "
coregraphics/memory.h
"
12
13
namespace
Vulkan
14
{
15
17
CoreGraphics::Alloc
AllocateMemory
(
const
VkDevice dev,
const
VkImage& img,
CoreGraphics::MemoryPoolType
type);
19
CoreGraphics::Alloc
AllocateMemory
(
const
VkDevice dev,
const
VkBuffer& buf,
CoreGraphics::MemoryPoolType
type,
size_t
alignment = 1);
21
CoreGraphics::Alloc
AllocateMemory
(
const
VkDevice dev, VkMemoryRequirements reqs, VkDeviceSize allocSize);
22
24
void
Flush
(
const
VkDevice dev,
const
CoreGraphics::Alloc
& alloc,
IndexT
offset,
SizeT
size);
26
void
Invalidate
(
const
VkDevice dev,
const
CoreGraphics::Alloc
& alloc,
IndexT
offset,
SizeT
size);
27
29
VkResult
GetMemoryType
(uint32_t bits, VkMemoryPropertyFlags flags, uint32_t& index);
30
31
}
// namespace Vulkan
array.h
CoreGraphics::MemoryPoolType
MemoryPoolType
Definition
memory.h:31
Vulkan
Vulkan implementation of GPU acceleration structure.
Definition
vkaccelerationstructure.cc:15
Vulkan::GetMemoryType
VkResult GetMemoryType(uint32_t bits, VkMemoryPropertyFlags flags, uint32_t &index)
get vulkan memory type based on resource requirements and wanted memory properties
Definition
vkmemory.cc:342
Vulkan::Flush
void Flush(const VkDevice dev, const Alloc &alloc, IndexT offset, SizeT size)
flush a mapped memory region
Definition
vkmemory.cc:302
Vulkan::AllocateMemory
CoreGraphics::Alloc AllocateMemory(const VkDevice dev, const VkImage &img, MemoryPoolType type)
allocate memory for an image
Definition
vkmemory.cc:193
Vulkan::Invalidate
void Invalidate(const VkDevice dev, const CoreGraphics::Alloc &alloc, IndexT offset, SizeT size)
invalidate a mapped memory region
Definition
vkmemory.cc:322
memory.h
Graphics memory interface.
CoreGraphics::Alloc
Definition
memory.h:41
SizeT
int SizeT
Definition
types.h:42
IndexT
int IndexT
Definition
types.h:41
code
render
coregraphics
vk
vkmemory.h
Generated on
for Nebula. Dark theme by
Tilen Majerle
. All rights reserved.