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
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Mar 12 14:37:47 2006