Texture.cpp
Go to the documentation of this file.
1 #include "quori_face/Texture.hpp"
2 
3 #include <GL/gl3w.h>
4 
5 #include "trace.hpp"
6 
7 using namespace quori_face;
8 
10 {
12 }
13 
14 Texture::Ptr Texture::create(std::size_t rows, std::size_t cols, float *const data)
15 {
16  std::uint32_t handle;
17  QUORI_FACE_TRACE(glGenTextures(1, &handle));
18 
20 
23 
26 
29 
30  return Ptr(new Texture(handle));
31 }
32 
33 Texture::Ptr Texture::create(std::size_t rows, std::size_t cols, const std::uint32_t format, const std::uint8_t *const data)
34 {
35  std::uint32_t handle;
36  QUORI_FACE_TRACE(glGenTextures(1, &handle));
37 
39 
42 
45 
48 
49  return Ptr(new Texture(handle));
50 }
51 
52 
54 {
56 }
57 
58 std::uint32_t Texture::getHandle() const
59 {
60  return handle_;
61 }
62 
63 
64 Texture::Texture(const std::uint32_t handle)
65  : handle_(handle)
66 {
67 }
glGenerateMipmap
#define glGenerateMipmap
Definition: gl3w.h:906
GL_TEXTURE_WRAP_S
#define GL_TEXTURE_WRAP_S
Definition: glcorearb.h:242
GL_TEXTURE_MIN_FILTER
#define GL_TEXTURE_MIN_FILTER
Definition: glcorearb.h:241
GL_RGB32F
#define GL_RGB32F
Definition: glcorearb.h:1001
format
GLint GLint GLsizei GLint GLenum format
Definition: glcorearb.h:256
GL_FLOAT
#define GL_FLOAT
Definition: glcorearb.h:192
GL_TEXTURE_2D
#define GL_TEXTURE_2D
Definition: glcorearb.h:179
GL_RGB8
#define GL_RGB8
Definition: glcorearb.h:368
quori_face::Texture::getHandle
std::uint32_t getHandle() const
Definition: Texture.cpp:58
GL_CLAMP_TO_BORDER
#define GL_CLAMP_TO_BORDER
Definition: glcorearb.h:522
GL_UNSIGNED_BYTE
#define GL_UNSIGNED_BYTE
Definition: glcorearb.h:187
glTexImage2D
#define glTexImage2D
Definition: gl3w.h:1193
trace.hpp
quori_face::Texture::Texture
Texture(const std::uint32_t handle)
Definition: Texture.cpp:64
glBindTexture
#define glBindTexture
Definition: gl3w.h:747
glDeleteTextures
#define glDeleteTextures
Definition: gl3w.h:840
quori_face
Definition: Cache.hpp:9
glTexParameteri
#define glTexParameteri
Definition: gl3w.h:1201
Texture.hpp
gl3w.h
GL_TEXTURE_MAG_FILTER
#define GL_TEXTURE_MAG_FILTER
Definition: glcorearb.h:240
GL_TEXTURE_WRAP_T
#define GL_TEXTURE_WRAP_T
Definition: glcorearb.h:243
quori_face::Texture::create
static Ptr create(std::size_t rows, std::size_t cols, float *const data)
Definition: Texture.cpp:14
QUORI_FACE_TRACE
#define QUORI_FACE_TRACE(stmt)
Definition: quori_face/trace.hpp:16
quori_face::Texture::Ptr
std::shared_ptr< Texture > Ptr
Definition: Texture.hpp:17
glGenTextures
#define glGenTextures
Definition: gl3w.h:903
data
GLboolean * data
Definition: glcorearb.h:279
quori_face::Texture::bind
void bind()
Definition: Texture.cpp:53
GL_LINEAR
#define GL_LINEAR
Definition: glcorearb.h:235
quori_face::Texture::handle_
std::uint32_t handle_
Definition: Texture.hpp:45
GL_RGB
#define GL_RGB
Definition: glcorearb.h:221
quori_face::Texture::~Texture
~Texture()
Definition: Texture.cpp:9


quori_face
Author(s):
autogenerated on Wed Mar 2 2022 00:53:20