]> git.tdb.fi Git - libs/gl.git/blobdiff - source/backends/opengl/framebuffer_backend.h
Rework multisample resolve to use resolve attachments
[libs/gl.git] / source / backends / opengl / framebuffer_backend.h
index 7a7ebfbe82d3da5a8fa577ab3cb0c67b59d6faf9..b2e936147d73ce3c707ef15cabf5cc2af2d054cf 100644 (file)
@@ -2,29 +2,34 @@
 #define MSP_GL_FRAMEBUFFER_BACKEND_H_
 
 #include <string>
+#include <msp/core/noncopyable.h>
 #include "frameformat.h"
 
 namespace Msp {
 namespace GL {
 
-class OpenGLFramebuffer
+class OpenGLFramebuffer: public NonCopyable
 {
        friend class OpenGLCommands;
        friend class OpenGLPipelineState;
 
 protected:
        unsigned id = 0;
+       unsigned resolve_id = 0;
        mutable unsigned status;
 
        OpenGLFramebuffer(bool);
+       OpenGLFramebuffer(OpenGLFramebuffer &&);
        ~OpenGLFramebuffer();
 
        void set_system_format(const FrameFormat &);
        static bool is_format_supported(const FrameFormat &);
+       void format_changed(const FrameFormat &);
        static void require_layered();
 
        void resize_system(unsigned, unsigned);
        void update(unsigned) const;
+       void update(unsigned, bool) const;
        void require_complete() const;
 
        void set_debug_name(const std::string &);