#pragma once #include "TechniqueGroup.h" #include "OgreSharedRuns.h" #include "OgreRenderTechnique.h" #include "Ogre.h" using namespace Ogre; /** @brief Base class of a SharedRuns in an OGRE environment. */ class OgreTechniqueGroup : public TechniqueGroup, public UserDefinedObject { public: //inherited void addRenderTechnique(RenderTechnique* technique); //inherited void update(unsigned long frameNum); //inherited void runChanged(RenderingRunType runType, RenderingRun* run); //inherited void runUpdated(RenderingRunType runType, RenderingRun* run); //inherited void updateBounds() { renderTechniques.at(0)->getParentRenderable()->updateBounds(); parentSharedRuns->updateBounds(); } protected: /** @brief Collection of OgreRenderTechniques All messages will be forwarded to each element of this vector. */ std::vector renderTechniques; };