neoGFX
Cross-platform C++ app/game engine
|
#include <i_standard_shader_program.hpp>
Public Types | |
typedef i_standard_shader_program | abstract_type |
Public Types inherited from neogfx::i_shader_program | |
typedef i_shader_program | abstract_type |
typedef neolib::i_ref_ptr< i_shader_stage > | i_stage_t |
typedef neolib::i_vector< i_stage_t > | i_stages_t |
Public Member Functions | |
virtual const i_standard_vertex_shader & | standard_vertex_shader () const =0 |
virtual i_standard_vertex_shader & | standard_vertex_shader ()=0 |
virtual const i_gradient_shader & | gradient_shader () const =0 |
virtual i_gradient_shader & | gradient_shader ()=0 |
virtual const i_texture_shader & | texture_shader () const =0 |
virtual i_texture_shader & | texture_shader ()=0 |
virtual const i_filter_shader & | filter_shader () const =0 |
virtual i_filter_shader & | filter_shader ()=0 |
virtual const i_glyph_shader & | glyph_shader () const =0 |
virtual i_glyph_shader & | glyph_shader ()=0 |
virtual const i_stipple_shader & | stipple_shader () const =0 |
virtual i_stipple_shader & | stipple_shader ()=0 |
virtual const i_shape_shader & | shape_shader () const =0 |
virtual i_shape_shader & | shape_shader ()=0 |
Public Member Functions inherited from neogfx::i_shader_program | |
virtual | ~i_shader_program ()=default |
virtual shader_program_type | type () const =0 |
virtual const i_string & | name () const =0 |
virtual bool | supports (vertex_buffer_type aBufferType) const =0 |
virtual bool | created () const =0 |
virtual void * | handle () const =0 |
virtual const i_stages_t & | stages () const =0 |
virtual i_stages_t & | stages ()=0 |
virtual const i_stage_t & | stage (shader_type aStage) const =0 |
virtual i_stage_t & | stage (shader_type aStage)=0 |
virtual const i_shader & | shader (const neolib::i_string &aName) const =0 |
virtual i_shader & | shader (const neolib::i_string &aName)=0 |
virtual const i_vertex_shader & | vertex_shader () const =0 |
virtual i_vertex_shader & | vertex_shader ()=0 |
virtual const i_fragment_shader & | fragment_shader () const =0 |
virtual i_fragment_shader & | fragment_shader ()=0 |
virtual bool | is_first_in_stage (const i_shader &aShader) const =0 |
virtual bool | is_last_in_stage (const i_shader &aShader) const =0 |
virtual const i_shader & | first_in_stage (shader_type aStage) const =0 |
virtual const i_shader & | next_in_stage (const i_shader &aPreviousShader) const =0 |
virtual const i_shader & | last_in_stage (shader_type aStage) const =0 |
virtual i_shader & | add_shader (const neolib::i_ref_ptr< i_shader > &aShader)=0 |
virtual bool | dirty () const =0 |
virtual void | set_clean ()=0 |
virtual void | prepare_uniforms (const i_rendering_context &aContext)=0 |
virtual void | make ()=0 |
virtual void | compile ()=0 |
virtual void | link ()=0 |
virtual void | use ()=0 |
virtual void | update_uniform_storage ()=0 |
virtual void | update_uniform_locations ()=0 |
virtual bool | uniforms_changed () const =0 |
virtual void | update_uniforms (const i_rendering_context &aContext)=0 |
virtual bool | active () const =0 |
virtual void | activate (const i_rendering_context &aContext)=0 |
virtual void | deactivate ()=0 |
virtual void | instantiate (const i_rendering_context &aContext)=0 |
template<typename T > | |
const T & | as () const |
template<typename T > | |
T & | as () |
bool | have_stage (shader_type aStage) const |
bool | stage_clean (shader_type aStage) const |
bool | stage_dirty (shader_type aStage) const |
Public Member Functions inherited from neolib::i_reference_counted | |
virtual | ~i_reference_counted ()=default |
virtual void | add_ref () const noexcept=0 |
virtual void | release () const =0 |
virtual int32_t | use_count () const noexcept=0 |
virtual const i_reference_counted * | release_and_take_ownership () const =0 |
virtual i_reference_counted * | release_and_take_ownership ()=0 |
virtual void | pin () const noexcept=0 |
virtual void | unpin () const =0 |
virtual i_ref_control_block & | control_block ()=0 |
Definition at line 35 of file i_standard_shader_program.hpp.
Definition at line 38 of file i_standard_shader_program.hpp.
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |