mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-25 13:13:38 +00:00
31 lines
841 B
C++
31 lines
841 B
C++
#pragma once
|
|
#include <format>
|
|
#include <unordered_map>
|
|
#include <vector>
|
|
|
|
class ByteBuffer;
|
|
class IntBuffer;
|
|
class FloatBuffer;
|
|
|
|
/** Original comment
|
|
* This class is used so we can release all memory (allocated on the graphics
|
|
* card on shutdown)
|
|
*/
|
|
// 4J - all member functions in here were synchronized
|
|
class MemoryTracker {
|
|
private:
|
|
static std::unordered_map<int, int> GL_LIST_IDS;
|
|
static std::vector<int> TEXTURE_IDS;
|
|
|
|
public:
|
|
static int genLists(int count);
|
|
static int genTextures();
|
|
static void releaseLists(int id);
|
|
static void releaseTextures();
|
|
static void release();
|
|
// 4J - note - have removed buffer types from here that we aren't using
|
|
static ByteBuffer* createByteBuffer(int size);
|
|
static IntBuffer* createIntBuffer(int size);
|
|
static FloatBuffer* createFloatBuffer(int size);
|
|
};
|