37#ifndef H_OGF_SCENE_GRAPH_GFX_SHADERS_SHADER_MANAGER_H
38#define H_OGF_SCENE_GRAPH_GFX_SHADERS_SHADER_MANAGER_H
40#include <OGF/scene_graph_gfx/common/common.h>
53 class SceneGraphShaderManager;
79 return current_shader_;
108 return sg_shader_manager_;
117 void set_shader(
const std::string& value);
130 gom_attribute(aggregate_properties,
"true")
132 return current_shader_;
142 typedef std::map<std::string, Shader_var> ShaderMap;
A smart pointer with reference-counted copy semantics.
Base class for all 3D Graphite objects.
Base class for all objects in the GOM system.
Manages the shaders and full screen effects for the entire SceneGraph.
Manages the Shader objects associated with a Grob.
std::string get_shader() const
Gets the class name of the current shader.
ShaderManager(Grob *grob, SceneGraphShaderManager *sg_shader_manager)
ShaderManager constructor.
void draw()
Draws the Grob using the current Shader.
SceneGraphShaderManager * scene_graph_shader_manager() const
Gets the SceneGraphShaderManager.
Grob * grob()
Gets the Grob.
~ShaderManager() override
ShaderManager destructor.
void update()
Updates the current shader.
Base class for Grob shader.
Global Graphite namespace.
SmartPointer< ShaderManager > ShaderManager_var
An automatic reference-counted pointer to a ShaderManager.
The base class for all composite objects in the GOM system.
The base class for all object shaders.