Program.hpp
Go to the documentation of this file.
1 #ifndef _QUORI_FACE_PROGRAM_HPP_
2 #define _QUORI_FACE_PROGRAM_HPP_
3 
4 #include <cstdint>
5 #include <memory>
6 
7 #include "Shader.hpp"
8 
9 namespace quori_face
10 {
15  class Program
16  {
17  public:
18  typedef std::shared_ptr<Program> Ptr;
19  typedef std::shared_ptr<const Program> ConstPtr;
20 
21  ~Program();
22 
28  static Ptr link(const std::initializer_list<Shader::Ptr> &shaders);
29 
33  std::uint32_t getUniformLocation(const std::string &name) const;
34 
40  void use();
41 
46  std::uint32_t getHandle() const;
47 
48  private:
49  Program(const std::uint16_t handle);
50 
51  std::uint32_t handle_;
52  };
53 }
54 
55 #endif
quori_face::Program::Program
Program(const std::uint16_t handle)
Definition: Program.cpp:65
string
GLsizei const GLchar *const * string
Definition: glcorearb.h:790
quori_face::Program::getHandle
std::uint32_t getHandle() const
Definition: Program.cpp:60
quori_face::Program::Ptr
std::shared_ptr< Program > Ptr
Definition: Program.hpp:18
quori_face
Definition: Cache.hpp:9
Shader.hpp
quori_face::Program
Definition: Program.hpp:15
quori_face::Program::link
static Ptr link(const std::initializer_list< Shader::Ptr > &shaders)
Definition: Program.cpp:19
name
GLuint const GLchar * name
Definition: glcorearb.h:762
quori_face::Program::use
void use()
Definition: Program.cpp:55
quori_face::Program::~Program
~Program()
Definition: Program.cpp:14
shaders
GLsizei GLsizei GLuint * shaders
Definition: glcorearb.h:773
quori_face::Program::getUniformLocation
std::uint32_t getUniformLocation(const std::string &name) const
Definition: Program.cpp:50
quori_face::Program::ConstPtr
std::shared_ptr< const Program > ConstPtr
Definition: Program.hpp:19
quori_face::Program::handle_
std::uint32_t handle_
Definition: Program.hpp:51


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