xoreos  0.0.5
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Graphics::Shader::ShaderRenderable Class Reference

#include <shaderrenderable.h>

Collaboration diagram for Graphics::Shader::ShaderRenderable:
Collaboration graph
[legend]

Public Member Functions

 ShaderRenderable ()
 
 ShaderRenderable (Shader::ShaderSurface *surface, Shader::ShaderMaterial *material, Mesh::Mesh *mesh)
 
 ShaderRenderable (Shader::ShaderRenderable *src)
 
 ShaderRenderable (const ShaderRenderable &src)
 
 ~ShaderRenderable ()
 
const ShaderRenderableoperator= (const ShaderRenderable &src)
 
ShaderSurfacegetSurface ()
 
ShaderMaterialgetMaterial ()
 
ShaderProgramgetProgram ()
 
Mesh::MeshgetMesh ()
 
void setSurface (Shader::ShaderSurface *surface, bool rebuildProgram=true)
 
void setMaterial (Shader::ShaderMaterial *material, bool rebuildProgram=true)
 
void setMesh (Mesh::Mesh *mesh)
 
void copyRenderable (Shader::ShaderRenderable *src)
 
void renderImmediate (const glm::mat4 &tform, float alpha=1.0f)
 

Private Member Functions

void updateProgram ()
 

Private Attributes

ShaderSurface_surface
 
ShaderMaterial_material
 
ShaderProgram_program
 
Mesh::Mesh_mesh
 

Detailed Description

Definition at line 40 of file shaderrenderable.h.

Constructor & Destructor Documentation

◆ ShaderRenderable() [1/4]

Graphics::Shader::ShaderRenderable::ShaderRenderable ( )

Definition at line 33 of file shaderrenderable.cpp.

◆ ShaderRenderable() [2/4]

Graphics::Shader::ShaderRenderable::ShaderRenderable ( Shader::ShaderSurface surface,
Shader::ShaderMaterial material,
Mesh::Mesh mesh 
)

◆ ShaderRenderable() [3/4]

Graphics::Shader::ShaderRenderable::ShaderRenderable ( Shader::ShaderRenderable src)

Definition at line 44 of file shaderrenderable.cpp.

References _material, _mesh, _surface, setMaterial(), setMesh(), setSurface(), and updateProgram().

Here is the call graph for this function:

◆ ShaderRenderable() [4/4]

Graphics::Shader::ShaderRenderable::ShaderRenderable ( const ShaderRenderable src)

◆ ~ShaderRenderable()

Graphics::Shader::ShaderRenderable::~ShaderRenderable ( )

Member Function Documentation

◆ copyRenderable()

void Graphics::Shader::ShaderRenderable::copyRenderable ( Shader::ShaderRenderable src)

Definition at line 138 of file shaderrenderable.cpp.

References getMaterial(), getMesh(), getSurface(), setMaterial(), setMesh(), setSurface(), and updateProgram().

Here is the call graph for this function:

◆ getMaterial()

ShaderMaterial * Graphics::Shader::ShaderRenderable::getMaterial ( )

Definition at line 89 of file shaderrenderable.cpp.

References _material.

Referenced by copyRenderable(), Graphics::Render::RenderQueue::queueItem(), and Graphics::Render::RenderManager::queueRenderable().

Here is the caller graph for this function:

◆ getMesh()

Mesh::Mesh * Graphics::Shader::ShaderRenderable::getMesh ( )

Definition at line 97 of file shaderrenderable.cpp.

References _mesh.

Referenced by copyRenderable(), Graphics::Render::RenderQueue::queueItem(), and Graphics::Render::RenderManager::queueRenderable().

Here is the caller graph for this function:

◆ getProgram()

ShaderProgram * Graphics::Shader::ShaderRenderable::getProgram ( )

Definition at line 93 of file shaderrenderable.cpp.

References _program.

Referenced by Graphics::Render::RenderQueue::queueItem(), Graphics::Aurora::ABCFont::renderBind(), and Graphics::Aurora::TextureFont::renderBind().

Here is the caller graph for this function:

◆ getSurface()

ShaderSurface * Graphics::Shader::ShaderRenderable::getSurface ( )

◆ operator=()

const ShaderRenderable & Graphics::Shader::ShaderRenderable::operator= ( const ShaderRenderable src)

Definition at line 65 of file shaderrenderable.cpp.

References _material, _mesh, _program, _surface, setMaterial(), setMesh(), and setSurface().

Here is the call graph for this function:

◆ renderImmediate()

void Graphics::Shader::ShaderRenderable::renderImmediate ( const glm::mat4 &  tform,
float  alpha = 1.0f 
)

◆ setMaterial()

void Graphics::Shader::ShaderRenderable::setMaterial ( Shader::ShaderMaterial material,
bool  rebuildProgram = true 
)

◆ setMesh()

void Graphics::Shader::ShaderRenderable::setMesh ( Mesh::Mesh mesh)

Definition at line 128 of file shaderrenderable.cpp.

References _mesh, Graphics::Mesh::Mesh::useDecrement(), and Graphics::Mesh::Mesh::useIncrement().

Referenced by copyRenderable(), Graphics::Aurora::Model::Model(), operator=(), and ShaderRenderable().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setSurface()

void Graphics::Shader::ShaderRenderable::setSurface ( Shader::ShaderSurface surface,
bool  rebuildProgram = true 
)

Definition at line 101 of file shaderrenderable.cpp.

References _surface, updateProgram(), Graphics::Shader::ShaderSurface::useDecrement(), and Graphics::Shader::ShaderSurface::useIncrement().

Referenced by copyRenderable(), Graphics::Aurora::Model::Model(), operator=(), and ShaderRenderable().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateProgram()

void Graphics::Shader::ShaderRenderable::updateProgram ( )
private

Definition at line 167 of file shaderrenderable.cpp.

References _material, _program, _surface, Graphics::Shader::ShaderMaterial::getFragmentShader(), Graphics::Shader::ShaderSurface::getVertexShader(), and ShaderMan.

Referenced by copyRenderable(), setMaterial(), setSurface(), and ShaderRenderable().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ _material

ShaderMaterial* Graphics::Shader::ShaderRenderable::_material
private

◆ _mesh

Mesh::Mesh* Graphics::Shader::ShaderRenderable::_mesh
private

◆ _program

ShaderProgram* Graphics::Shader::ShaderRenderable::_program
private

Definition at line 67 of file shaderrenderable.h.

Referenced by getProgram(), operator=(), renderImmediate(), and updateProgram().

◆ _surface

ShaderSurface* Graphics::Shader::ShaderRenderable::_surface
private

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