CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
GLSampler.hpp
Go to the documentation of this file.
1//
2// CeresEngine - A game development framework
3//
4// Created by Rogiel Sulzbach.
5// Copyright (c) 2018-2022 Rogiel Sulzbach. All rights reserved.
6//
7
8#pragma once
9
10#include "OpenGL.hpp"
11
13
14namespace CeresEngine {
15
16 class GLImage;
17
18 class GLSampler final : public GPUSampler, public GLDeviceObject<GLSampler, GPUSampler> {
19 private:
22
25
26 public:
28 ~GLSampler() override;
29
30 public:
32 [[nodiscard]] GLuint handle() const { return samplerID; }
33 };
34
35} // namespace CeresEngine
unsigned int GLuint
Definition GLLoader.hpp:733
A retain-release type of smart pointer.
Definition SmartPtr.hpp:132
Definition OpenGL.hpp:117
Definition GLSampler.hpp:18
GLObjectHandle<&glad_glGenSamplers, &glad_glDeleteSamplers > samplerID
The OpenGL sampler object.
Definition GLSampler.hpp:24
GLSampler(GLDevicePtr device, const GPUSamplerDescriptor &descriptor)
const GPUSamplerDescriptor descriptorGL
A structure that describes the sampler and it's properties.
Definition GLSampler.hpp:21
GLuint handle() const
Definition GLSampler.hpp:32
GPUDevice & device
The owning device this object was created from.
Definition Common.hpp:55
Definition GPUSampler.hpp:175
const Descriptor & descriptor
A structure that describes the object and it's properties.
Definition Common.hpp:69
Definition Application.hpp:19
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25
Definition OpenGL.hpp:130
Image sampler descriptor structure.
Definition GPUSampler.hpp:61