summaryrefslogtreecommitdiff
path: root/src/render/Renderbuffer.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/render/Renderbuffer.hpp')
-rw-r--r--src/render/Renderbuffer.hpp25
1 files changed, 10 insertions, 15 deletions
diff --git a/src/render/Renderbuffer.hpp b/src/render/Renderbuffer.hpp
index 90c539b1..c33144d3 100644
--- a/src/render/Renderbuffer.hpp
+++ b/src/render/Renderbuffer.hpp
@@ -5,27 +5,22 @@
#include "Framebuffer.hpp"
#include <aquamarine/buffer/Buffer.hpp>
-class CMonitor;
-
-class CRenderbuffer {
+class IRenderbuffer {
public:
- CRenderbuffer(SP<Aquamarine::IBuffer> buffer, uint32_t format);
- ~CRenderbuffer();
+ IRenderbuffer(SP<Aquamarine::IBuffer> buffer, uint32_t format);
+ virtual ~IRenderbuffer() = default;
bool good();
- void bind();
- void unbind();
- CFramebuffer* getFB();
- uint32_t getFormat();
+ SP<IFramebuffer> getFB();
+
+ virtual void bind() = 0;
+ virtual void unbind() = 0;
WP<Aquamarine::IBuffer> m_hlBuffer;
- private:
- void* m_image = nullptr;
- GLuint m_rbo = 0;
- CFramebuffer m_framebuffer;
- uint32_t m_drmFormat = 0;
- bool m_good = false;
+ protected:
+ SP<IFramebuffer> m_framebuffer;
+ bool m_good = false;
struct {
CHyprSignalListener destroyBuffer;