File CustomPassProvider.h

namespace Gsage
class CustomPassProvider : public CompositorPassProvider

Public Functions

CustomPassProvider()
virtual ~CustomPassProvider()
void initialize(Engine *engine)
Ogre::CompositorPass *addPass(const Ogre::CompositorPassDef *definition, Ogre::Camera *defaultCamera, Ogre::CompositorNode *parentNode, const Ogre::CompositorChannel &target, Ogre::SceneManager *sceneManager)
Ogre::CompositorPassDef *addPassDef(Ogre::CompositorPassType passType, Ogre::IdString customId, Ogre::CompositorTargetDef *parentTargetDef, Ogre::CompositorNodeDef *parentNodeDef)
template<class C, class D>
bool registerPassDef(const std::string &customId)

Private Types

typedef std::function<Ogre::CompositorPassDef *(Ogre::CompositorTargetDef *, Ogre::CompositorNodeDef *)> DefFactoryFunc
typedef std::map<Ogre::IdString, DefFactoryFunc> DefFactoryFuncs
typedef std::function<Ogre::CompositorPass *(const Ogre::CompositorPassDef *definition, const Ogre::CompositorChannel &target, Ogre::CompositorNode *parentNode)> PassFactoryFunc
typedef std::map<std::string, PassFactoryFunc> PassFactoryFuncs

Private Members

Engine *mEngine
DefFactoryFuncs mDefFactories
PassFactoryFuncs mPassFactories