#ifndef _OgreTypeConverter_H__ #define _OgreTypeConverter_H__ #include "OgreAxisAlignedBox.h" #include "AxisAlignedBox3.h" #include "Vector3.h" //#include "ManualObject.h" namespace Ogre { class SceneManager; /** Class which converts preprocessor types to OGRE types */ class __declspec(dllexport) OgreTypeConverter { public: /** Converts Ogre AABB to preprocessor AABB. */ static GtpVisibilityPreprocessor::AxisAlignedBox3 ConvertFromOgre(const AxisAlignedBox &box); /** Converts Ogre vector to preprocessor vector. */ static GtpVisibilityPreprocessor::Vector3 ConvertFromOgre(const Vector3 &v); /** Converts preprocessor AABB to Ogre AABB. */ static AxisAlignedBox ConvertToOgre(const GtpVisibilityPreprocessor::AxisAlignedBox3 &box); /** Converts preprocessor vector to Ogre vector. */ static Vector3 ConvertToOgre(const GtpVisibilityPreprocessor::Vector3 &v); /** The Ogre object will be created from the mesh. */ static ManualObject *ConvertToOgre(GtpVisibilityPreprocessor::Mesh *mesh, SceneManager *sceneMgr); }; } // namespace Ogre #endif // PlatformQueryManager