Skip to content

Vp::Shaders

#include "Viewport/shader/Shaders.h"

Public Functions

Name
Shaders &instance()
boolreloadShader(Shader & shader, const std::string & vertSource, const std::string & fragSource)
boolreloadShader(Shader & shader, const std::string & vertSource, const std::string & fragSource, const std::string & geoSource, const std::string & sourceToInject)
Shaders(Shaders const & ) =delete
template <typename T ,typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type =true&gt; <br>boolcreateShader(const std::string & vertSource)
template <typename T ,typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type =true&gt; <br>boolcreateShader(const std::string & vertSource, const std::string & fragSource)
template <typename T ,typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type =true&gt; <br>boolcreateShader(const std::string & vertSource, const std::string & fragSource, const std::string & geoSource)
template <typename T ,typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type =true&gt; <br>boolcreateShader(const std::string & vertSource, const std::string & fragSource, const std::string & geoSource, const std::string & sourceToInject)
template <typename T &gt; <br>std::shared_ptr< T >getShader()
template <typename T &gt; <br>T *getShaderPtr()
boolload()
voidoperator=(Shaders const & ) =delete
boolreload()

Public Attributes

Name
boolloaded
std::unordered_map< std::size_t, std::shared_ptr< Shader > >m_shaders

Public Functions Documentation

function instance

cpp
static inline Shaders & instance()
static inline Shaders & instance()

function reloadShader

cpp
static bool reloadShader(
    Shader & shader,
    const std::string & vertSource,
    const std::string & fragSource
)
static bool reloadShader(
    Shader & shader,
    const std::string & vertSource,
    const std::string & fragSource
)

function reloadShader

cpp
static bool reloadShader(
    Shader & shader,
    const std::string & vertSource,
    const std::string & fragSource,
    const std::string & geoSource,
    const std::string & sourceToInject
)
static bool reloadShader(
    Shader & shader,
    const std::string & vertSource,
    const std::string & fragSource,
    const std::string & geoSource,
    const std::string & sourceToInject
)

function Shaders

cpp
Shaders(
    Shaders const & 
) =delete
Shaders(
    Shaders const & 
) =delete

function createShader

cpp
template <typename T ,
typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type  =true>
inline bool createShader(
    const std::string & vertSource
)
template <typename T ,
typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type  =true>
inline bool createShader(
    const std::string & vertSource
)

function createShader

cpp
template <typename T ,
typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type  =true>
inline bool createShader(
    const std::string & vertSource,
    const std::string & fragSource
)
template <typename T ,
typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type  =true>
inline bool createShader(
    const std::string & vertSource,
    const std::string & fragSource
)

function createShader

cpp
template <typename T ,
typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type  =true>
inline bool createShader(
    const std::string & vertSource,
    const std::string & fragSource,
    const std::string & geoSource
)
template <typename T ,
typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type  =true>
inline bool createShader(
    const std::string & vertSource,
    const std::string & fragSource,
    const std::string & geoSource
)

function createShader

cpp
template <typename T ,
typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type  =true>
inline bool createShader(
    const std::string & vertSource,
    const std::string & fragSource,
    const std::string & geoSource,
    const std::string & sourceToInject
)
template <typename T ,
typename std::enable_if< std::is_base_of< Shader, T >::value, bool >::type  =true>
inline bool createShader(
    const std::string & vertSource,
    const std::string & fragSource,
    const std::string & geoSource,
    const std::string & sourceToInject
)

function getShader

cpp
template <typename T >
inline std::shared_ptr< T > getShader()
template <typename T >
inline std::shared_ptr< T > getShader()

function getShaderPtr

cpp
template <typename T >
inline T * getShaderPtr()
template <typename T >
inline T * getShaderPtr()

function load

cpp
bool load()
bool load()

function operator=

cpp
void operator=(
    Shaders const & 
) =delete
void operator=(
    Shaders const & 
) =delete

function reload

cpp
bool reload()
bool reload()

Public Attributes Documentation

variable loaded

cpp
bool loaded {false};
bool loaded {false};

variable m_shaders

cpp
std::unordered_map< std::size_t, std::shared_ptr< Shader > > m_shaders;
std::unordered_map< std::size_t, std::shared_ptr< Shader > > m_shaders;

Updated on 2025-05-31 at 12:55:31 +0000