WIP: GUI Toolkit
This commit is contained in:
@@ -2,20 +2,26 @@
|
||||
#define __OPENGLPLAYGROUND_VBOMANAGER_HH__
|
||||
|
||||
#include <map>
|
||||
#include <tuple>
|
||||
#include <vector>
|
||||
#include <list>
|
||||
#include <memory>
|
||||
#include <cassert>
|
||||
|
||||
#include <glbinding/gl/types.h>
|
||||
|
||||
class VBOManager {
|
||||
public:
|
||||
VBOManager();
|
||||
|
||||
static VBOManager& getInstance();
|
||||
|
||||
~VBOManager();
|
||||
|
||||
VBOManager(VBOManager const& copy) = delete;
|
||||
VBOManager& operator=(VBOManager const& copy) = delete;
|
||||
|
||||
private:
|
||||
VBOManager();
|
||||
|
||||
static void init();
|
||||
static std::unique_ptr<VBOManager> instance;
|
||||
|
||||
class VBO;
|
||||
|
||||
@@ -53,6 +59,10 @@ public:
|
||||
assert(_vbo);
|
||||
return _vbo->getID();
|
||||
}
|
||||
|
||||
explicit operator bool() const noexcept {
|
||||
return (_vbo != nullptr);
|
||||
}
|
||||
|
||||
private:
|
||||
VBOAlloc(VBO &vbo, size_t ofs, size_t size);
|
||||
|
||||
Reference in New Issue
Block a user