glrenderbuffer.h File Reference
Go to the documentation of this file.
Source: include/ffw/graphics/glrenderbuffer.h
/* This file is part of FineFramework project */
#ifndef FFW_GRAPHICS_RENDERBUFFER
#define FFW_GRAPHICS_RENDERBUFFER
#include "glrenderextensions.h"
namespace ffw {
class FFW_API GLRenderbuffer {
public:
GLRenderbuffer();
GLRenderbuffer(const GLRenderbuffer& other) = delete;
GLRenderbuffer(GLRenderbuffer&& other) NOEXCEPT;
void swap(GLRenderbuffer& other) NOEXCEPT;
virtual ~GLRenderbuffer();
inline bool isCreated() const {
return loaded;
}
void destroy();
void bind() const;
void unbind() const;
inline GLuint getHandle() const {
return buffer;
}
inline GLsizei getWidth() const {
return width;
}
inline GLsizei getHeight() const {
return height;
}
inline GLenum getInternalFormat() const {
return internalformat;
}
inline GLsizei getSamples() const {
return samples;
}
GLRenderbuffer& operator = (const GLRenderbuffer& other) = delete;
GLRenderbuffer& operator = (GLRenderbuffer&& other) NOEXCEPT;
protected:
bool loaded;
GLenum internalformat;
GLuint buffer;
GLsizei width;
GLsizei height;
GLsizei samples;
};
};
inline void swap(ffw::GLRenderbuffer& first, ffw::GLRenderbuffer& second) NOEXCEPT {
first.swap(second);
}
#endif