mirror of
https://github.com/hyprwm/Hyprland.git
synced 2025-05-19 08:30:22 -07:00
31 lines
664 B
C++
31 lines
664 B
C++
#pragma once
|
|
|
|
#include "../defines.hpp"
|
|
#include "Texture.hpp"
|
|
|
|
class CFramebuffer {
|
|
public:
|
|
CFramebuffer();
|
|
~CFramebuffer();
|
|
|
|
bool alloc(int w, int h, uint32_t format = GL_RGBA);
|
|
void addStencil(SP<CTexture> tex);
|
|
void bind();
|
|
void release();
|
|
void reset();
|
|
bool isAllocated();
|
|
SP<CTexture> getTexture();
|
|
SP<CTexture> getStencilTex();
|
|
GLuint getFBID();
|
|
|
|
Vector2D m_vSize;
|
|
|
|
private:
|
|
SP<CTexture> m_cTex;
|
|
GLuint m_iFb = -1;
|
|
bool m_iFbAllocated = false;
|
|
|
|
SP<CTexture> m_pStencilTex;
|
|
|
|
friend class CRenderbuffer;
|
|
}; |