Euphoria
shaderuniform.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "render/gltypes.h"
4 
5 
6 namespace eu::render
7 {
8  struct ShaderProgram;
9 
11  {
12  public:
13  ShaderUniform(std::string aname, gl::Int aid, render::ShaderProgram* ashader);
14 
15  ~ShaderUniform() = default;
16  ShaderUniform(const ShaderUniform&) = default;
20 
21  [[nodiscard]] static const ShaderUniform&
22  create_null();
23 
24  [[nodiscard]] bool
25  is_null() const;
26 
27  std::string name;
30 
31  private:
32  ShaderUniform(); // creates a null shader
33  };
34 
35  bool
36  operator==(const ShaderUniform& lhs, const ShaderUniform& rhs);
37 }
bool operator==(const ShaderAttribute &lhs, const ShaderAttribute &rhs)
ShaderUniform & operator=(const ShaderUniform &)=default
ShaderUniform & operator=(ShaderUniform &&)=default
render::ShaderProgram * shader
Definition: shaderuniform.h:29
ShaderUniform(ShaderUniform &&)=default
ShaderUniform(const ShaderUniform &)=default
static const ShaderUniform & create_null()