MxEngine
ChunkAllocator.h
1 #pragma once
2 
3 #include <cstdint>
4 #include <memory>
5 
6 namespace MxEngine
7 {
8  /*
9  ChunkAllocator class by #Momo
10  uses std::malloc to allocate chunks (each 4KB)
11  chunks can are freed in any order usind std::free
12  */
14  {
15  public:
19  static constexpr size_t ChunkSize = 4096;
20 
26  static uint8_t* RawAlloc(size_t chunkCount)
27  {
28  return (uint8_t*)std::malloc(chunkCount * ChunkSize);
29  }
30 
35  static void Free(uint8_t* chunk)
36  {
37  std::free(chunk);
38  }
39  };
40 }
static void Free(uint8_t *chunk)
Definition: ChunkAllocator.h:35
static uint8_t * RawAlloc(size_t chunkCount)
Definition: ChunkAllocator.h:26
static constexpr size_t ChunkSize
Definition: ChunkAllocator.h:19
Definition: Application.cpp:49
Definition: ChunkAllocator.h:13