Shkyera Engine
Easy to use, game engine for Python
Loading...
Searching...
No Matches
shkyera::Shader Class Reference

#include <Shader.hpp>

Public Types

enum class  Type { Vertex , Geometry , Fragment }
 

Public Member Functions

 Shader (const std::filesystem::path &filepath, Type type)
 
 Shader (const Shader &other)=delete
 
Shaderoperator= (const Shader &other)=delete
 
 Shader (Shader &&other) noexcept
 
Shaderoperator= (Shader &&other) noexcept
 
 ~Shader ()
 
GLuint getID () const
 

Private Member Functions

std::string loadFromFile (const std::string &filepath)
 
void compile (const std::string &source)
 
GLenum shaderTypeToGLenum (Type type)
 

Private Attributes

GLuint _id
 
Type _type
 

Member Enumeration Documentation

◆ Type

Enumerator
Vertex 
Geometry 
Fragment 

Constructor & Destructor Documentation

◆ Shader() [1/3]

shkyera::Shader::Shader ( const std::filesystem::path &  filepath,
Type  type 
)

◆ Shader() [2/3]

shkyera::Shader::Shader ( const Shader other)
delete

◆ Shader() [3/3]

shkyera::Shader::Shader ( Shader &&  other)
noexcept

◆ ~Shader()

shkyera::Shader::~Shader ( )

Member Function Documentation

◆ compile()

void shkyera::Shader::compile ( const std::string &  source)
private

◆ getID()

GLuint shkyera::Shader::getID ( ) const
inline

◆ loadFromFile()

std::string shkyera::Shader::loadFromFile ( const std::string &  filepath)
private

◆ operator=() [1/2]

Shader & shkyera::Shader::operator= ( const Shader other)
delete

◆ operator=() [2/2]

Shader & shkyera::Shader::operator= ( Shader &&  other)
noexcept

◆ shaderTypeToGLenum()

GLenum shkyera::Shader::shaderTypeToGLenum ( Type  type)
private

Member Data Documentation

◆ _id

GLuint shkyera::Shader::_id
private

◆ _type

Type shkyera::Shader::_type
private

The documentation for this class was generated from the following files: