orxonox::Shader Class Reference

#include <src/orxonox/tools/Shader.h>

Inheritance diagram for orxonox::Shader:

orxonox::Tickable orxonox::OrxonoxClass

List of all members.

Public Member Functions

void changedCompositor ()
const std::stringgetCompositor () const
Ogre::SceneManager * getSceneManager () const
bool isVisible () const
void setCompositor (const std::string &compositor)
void setParameter (const std::string &material, size_t technique, size_t pass, const std::string &parameter, int value)
void setParameter (const std::string &material, size_t technique, size_t pass, const std::string &parameter, float value)
void setSceneManager (Ogre::SceneManager *scenemanager)
void setVisible (bool bVisible)
 Shader (Ogre::SceneManager *scenemanager=0)
virtual void tick (float dt)
 Gets called every frame.
void updateVisibility ()
virtual ~Shader ()

Static Public Member Functions

static bool _setParameter (const std::string &material, size_t technique, size_t pass, const std::string &parameter, int value)
static bool _setParameter (const std::string &material, size_t technique, size_t pass, const std::string &parameter, float value)
static float getParameter (const std::string &material, size_t technique, size_t pass, const std::string &parameter)
static bool getParameterIsFloat (const std::string &material, size_t technique, size_t pass, const std::string &parameter)
static bool getParameterIsInt (const std::string &material, size_t technique, size_t pass, const std::string &parameter)
static ParameterPointergetParameterPointer (const std::string &material, size_t technique, size_t pass, const std::string &parameter)

Private Types

typedef std::map< std::string,
TechniqueVector
MaterialMap
typedef std::map< std::string,
ParameterPointer
ParameterMap
typedef std::pair< bool, void * > ParameterPointer
typedef std::vector< ParameterMapPassVector
typedef std::vector< PassVectorTechniqueVector

Private Attributes

bool bLoadCompositor_
bool bViewportInitialized_
bool bVisible_
std::string compositor_
Ogre::CompositorInstance * compositorInstance_
std::string oldcompositor_
Ogre::SceneManager * scenemanager_

Static Private Attributes

static bool bLoadedCgPlugin_s = false
static MaterialMap parameters_s


Member Typedef Documentation

typedef std::pair<bool, void*> orxonox::Shader::ParameterPointer [private]

typedef std::vector<ParameterMap> orxonox::Shader::PassVector [private]

typedef std::vector<PassVector> orxonox::Shader::TechniqueVector [private]


Constructor & Destructor Documentation

orxonox::Shader::Shader ( Ogre::SceneManager *  scenemanager = 0  ) 

orxonox::Shader::~Shader (  )  [virtual]


Member Function Documentation

bool orxonox::Shader::_setParameter ( const std::string material,
size_t  technique,
size_t  pass,
const std::string parameter,
int  value 
) [static]

References getParameterPointer().

bool orxonox::Shader::_setParameter ( const std::string material,
size_t  technique,
size_t  pass,
const std::string parameter,
float  value 
) [static]

References getParameterPointer().

Referenced by setParameter().

void orxonox::Shader::changedCompositor (  ) 

const std::string& orxonox::Shader::getCompositor (  )  const [inline]

float orxonox::Shader::getParameter ( const std::string material,
size_t  technique,
size_t  pass,
const std::string parameter 
) [static]

References getParameterPointer().

bool orxonox::Shader::getParameterIsFloat ( const std::string material,
size_t  technique,
size_t  pass,
const std::string parameter 
) [static]

References getParameterPointer().

bool orxonox::Shader::getParameterIsInt ( const std::string material,
size_t  technique,
size_t  pass,
const std::string parameter 
) [static]

References getParameterPointer().

Shader::ParameterPointer * orxonox::Shader::getParameterPointer ( const std::string material,
size_t  technique,
size_t  pass,
const std::string parameter 
) [static]

Ogre::SceneManager* orxonox::Shader::getSceneManager (  )  const [inline]

bool orxonox::Shader::isVisible (  )  const [inline]

void orxonox::Shader::setCompositor ( const std::string compositor  )  [inline]

Referenced by orxonox::Engine::tick().

void orxonox::Shader::setParameter ( const std::string material,
size_t  technique,
size_t  pass,
const std::string parameter,
int  value 
)

void orxonox::Shader::setParameter ( const std::string material,
size_t  technique,
size_t  pass,
const std::string parameter,
float  value 
)

void orxonox::Shader::setSceneManager ( Ogre::SceneManager *  scenemanager  ) 

void orxonox::Shader::setVisible ( bool  bVisible  )  [inline]

void orxonox::Shader::tick ( float  dt  )  [virtual]

Gets called every frame.

Parameters:
dt The time since the last frame in seconds

Implements orxonox::Tickable.

References bLoadCompositor_, bViewportInitialized_, scenemanager_, SUPER, and updateVisibility().

void orxonox::Shader::updateVisibility (  ) 

References compositorInstance_, isVisible(), and scenemanager_.

Referenced by tick().


Member Data Documentation

bool orxonox::Shader::bLoadedCgPlugin_s = false [static, private]

Referenced by getParameterPointer(), and Shader().

Referenced by Shader().

Referenced by changedCompositor(), Shader(), and ~Shader().

Ogre::CompositorInstance* orxonox::Shader::compositorInstance_ [private]

Referenced by changedCompositor(), and Shader().

Referenced by getParameterPointer().

Ogre::SceneManager* orxonox::Shader::scenemanager_ [private]


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

Generated on Tue Jul 28 16:23:02 2009 for Orxonox by  doxygen 1.5.6