summaryrefslogtreecommitdiff
path: root/src/render/gl/GLElementRenderer.hpp
blob: 675714fedd52afa91913ade2340422cf2cd5f3d3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once

#include "../ElementRenderer.hpp"

namespace Render::GL {
    class CGLElementRenderer : public Render::IElementRenderer {
      public:
        CGLElementRenderer()  = default;
        ~CGLElementRenderer() = default;

      private:
        void draw(WP<CBorderPassElement> element, const Hyprutils::Math::CRegion& damage) override;
        void draw(WP<CClearPassElement> element, const CRegion& damage) override;
        void draw(WP<CFramebufferElement> element, const CRegion& damage) override;
        void draw(WP<CPreBlurElement> element, const CRegion& damage) override;
        void draw(WP<CRectPassElement> element, const CRegion& damage) override;
        void draw(WP<CShadowPassElement> element, const CRegion& damage) override;
        void draw(WP<CInnerGlowPassElement> element, const CRegion& damage) override;
        void draw(WP<CTexPassElement> element, const CRegion& damage) override;
        void draw(WP<CTextureMatteElement> element, const CRegion& damage) override;
    };
}