Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

OgreRefAppPrerequisites.h

Go to the documentation of this file.
00001 /*
00002 -----------------------------------------------------------------------------
00003 This source file is part of the OGRE Reference Application, a layer built
00004 on top of OGRE(Object-oriented Graphics Rendering Engine)
00005 For the latest info, see http://www.ogre3d.org/
00006 
00007 Copyright (c) 2000-2005 The OGRE Team
00008 Also see acknowledgements in Readme.html
00009 
00010 This program is free software; you can redistribute it and/or modify it under
00011 the terms of the GNU Lesser General Public License as published by the Free Software
00012 Foundation; either version 2 of the License, or (at your option) any later
00013 version.
00014 
00015 This program is distributed in the hope that it will be useful, but WITHOUT
00016 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
00017 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
00018 
00019 You should have received a copy of the GNU Lesser General Public License along with
00020 this program; if not, write to the Free Software Foundation, Inc., 59 Temple
00021 Place - Suite 330, Boston, MA 02111-1307, USA, or go to
00022 http://www.gnu.org/copyleft/lesser.txt.
00023 -----------------------------------------------------------------------------
00024 */
00025 #ifndef __REFAPP_PREREQUISITES_H__
00026 #define __REFAPP_PREREQUISITES_H__
00027 
00028 // Include ODE standard C header
00029 #include <ode/ode.h>
00030 // Include ODE C++ headers
00031 #include <ode/odecpp.h>
00032 #include <ode/odecpp_collision.h>
00033 
00034 // Include main application-facing Ogre header
00035 #include <Ogre.h>
00036 
00037 
00038 // To save us some typing
00039 using namespace Ogre;
00040 
00041 namespace OgreRefApp {
00042 
00043     #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
00044     // Export control
00045     #   if defined( REFERENCEAPPLAYER_EXPORTS )
00046     #       define _OgreRefAppExport __declspec( dllexport )
00047     #   else
00048     #       define _OgreRefAppExport __declspec( dllimport )
00049     #   endif
00050     #else // Linux / Mac OSX etc
00051     #   define _OgreRefAppExport
00052     #endif
00053 
00054     // Quick conversions
00055     inline void OgreToOde(const Matrix3& ogre, dMatrix3& ode)
00056     {
00057         ode[0] = ogre[0][0];
00058         ode[1] = ogre[0][1];
00059         ode[2] = ogre[0][2];
00060         ode[3] = ogre[0][3];
00061         ode[4] = ogre[1][0];
00062         ode[5] = ogre[1][1];
00063         ode[6] = ogre[1][2];
00064         ode[7] = ogre[1][3];
00065         ode[8] = ogre[2][0];
00066         ode[9] = ogre[2][1];
00067         ode[10] = ogre[2][2];
00068         ode[11] = ogre[2][3];
00069     }
00070 
00071 
00072     // Forward definitions of classes to reduce dependencies
00073     class ApplicationObject;
00074     class OgreHead;
00075     class FinitePlane;
00076     class Ball;
00077     class Box;
00078     class CollideCamera;
00079 
00080 }
00081 
00082 
00083 
00084 #endif
00085 

Copyright © 2000-2005 by The OGRE Team
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Feb 12 12:59:50 2006