diff options
| author | UjinT34 <41110182+UjinT34@users.noreply.github.com> | 2026-03-07 00:44:10 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-03-06 21:44:10 +0000 |
| commit | 4152ac76d0813d9d0f67d2f04653a13fa6e17433 (patch) | |
| tree | c341f1883cf5a182d32e4ad00192ba8786a9bb75 /src/render/Renderbuffer.hpp | |
| parent | a5858018d896e0e0f0db517f893cd9a0936dd881 (diff) | |
renderer: refactor Texture, Framebuffer and Renderbuffer (#13437)
Part 1 of the renderer refactors
Diffstat (limited to 'src/render/Renderbuffer.hpp')
| -rw-r--r-- | src/render/Renderbuffer.hpp | 25 |
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; |
