21#ifndef GF_GRAPHICS_HANDLE_H
22#define GF_GRAPHICS_HANDLE_H
29#ifndef DOXYGEN_SHOULD_SKIP_THIS
47 template<GraphicsTag Tag>
56 template<GraphicsTag Tag>
105 : m_name(std::exchange(other.m_name, 0))
116 std::swap(m_name, other.m_name);
143 operator unsigned () const noexcept {
151#ifndef DOXYGEN_SHOULD_SKIP_THIS
A GL handle.
Definition: GraphicsHandle.h:57
GraphicsHandle()
Constructor.
Definition: GraphicsHandle.h:64
bool isValid() const noexcept
Check if the handle is valid.
Definition: GraphicsHandle.h:125
unsigned getName() const noexcept
Get the underlying name of the handle.
Definition: GraphicsHandle.h:134
GraphicsHandle & operator=(GraphicsHandle &&other) noexcept
Move assignment.
Definition: GraphicsHandle.h:115
~GraphicsHandle() noexcept
Destructor.
Definition: GraphicsHandle.h:83
constexpr GraphicsHandle(NoneType) noexcept
Constructor.
Definition: GraphicsHandle.h:75
GraphicsHandle & operator=(const GraphicsHandle &)=delete
Deleted copy assignment.
GraphicsHandle(GraphicsHandle &&other) noexcept
Move constructor.
Definition: GraphicsHandle.h:104
GraphicsHandle(const GraphicsHandle &)=delete
Deleted copy constructor.
A texture for colored images.
Definition: Texture.h:313
GraphicsTag
A tag to represent various GPU resources.
Definition: GraphicsHandle.h:37
@ Framebuffer
A GPU framebuffer.
The namespace for gf classes.
A trait to handle creation and deletion of GPU resources.
Definition: GraphicsHandle.h:48
Semantic type to represent "none".
Definition: Types.h:37