Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/trunk/src/orxonox/OrxonoxPrereqs.h @ 2781

Last change on this file since 2781 was 2710, checked in by rgrieder, 16 years ago

Merged buildsystem3 containing buildsystem2 containing Adi's buildsystem branch back to the trunk.
Please update the media directory if you were not using buildsystem3 before.

  • Property svn:eol-style set to native
File size: 6.2 KB
Line 
1/*
2 *   ORXONOX - the hottest 3D action shooter ever to exist
3 *                    > www.orxonox.net <
4 *
5 *
6 *   License notice:
7 *
8 *   This program is free software; you can redistribute it and/or
9 *   modify it under the terms of the GNU General Public License
10 *   as published by the Free Software Foundation; either version 2
11 *   of the License, or (at your option) any later version.
12 *
13 *   This program is distributed in the hope that it will be useful,
14 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
15 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 *   GNU General Public License for more details.
17 *
18 *   You should have received a copy of the GNU General Public License
19 *   along with this program; if not, write to the Free Software
20 *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
21 *
22 *   Author:
23 *      Reto Grieder
24 *   Co-authors:
25 *      ...
26 *
27 */
28
29/**
30  @file
31  @brief Contains all the necessary forward declarations for all classes and structs.
32*/
33
34#ifndef _OrxonoxPrereqs_H__
35#define _OrxonoxPrereqs_H__
36
37#include "OrxonoxConfig.h"
38
39//-----------------------------------------------------------------------
40// Shared library settings
41//-----------------------------------------------------------------------
42#define ORXONOX_NO_EXPORTS // This is an executable that needs no exports
43#if defined(ORXONOX_PLATFORM_WINDOWS) && !(defined(ORXONOX_STATIC_BUILD) || defined(ORXONOX_NO_EXPORTS))
44#  ifdef ORXONOX_SHARED_BUILD
45#    define _OrxonoxExport __declspec(dllexport)
46#  else
47#    if defined( __MINGW32__ )
48#      define _OrxonoxExport
49#    else
50#      define _OrxonoxExport __declspec(dllimport)
51#    endif
52#  endif
53#elif defined ( ORXONOX_GCC_VISIBILITY )
54#  define _OrxonoxExport  __attribute__ ((visibility("default")))
55#else
56#  define _OrxonoxExport
57#endif
58
59//-----------------------------------------------------------------------
60// Forward declarations
61//-----------------------------------------------------------------------
62
63namespace orxonox
64{
65    namespace LODParticle
66    {
67        enum LOD
68        {
69            off = 0,
70            low = 1,
71            normal = 2,
72            high = 3
73        };
74    }
75
76    //put here all existing munitionTypes
77    namespace MunitionType
78    {
79
80
81
82        enum Enum
83        { laserGunMunition };
84    }
85
86    //put here all weapon fire modes.
87    //they have to be added to Pawn and HumanController, too.
88    namespace WeaponMode
89    {
90        enum Enum
91        {
92            fire     = 0x1,
93            altFire  = 0x2,
94            altFire2 = 0x4
95        };
96    }
97
98
99    class GraphicsEngine;
100    class Settings;
101
102    class RadarViewable;
103    class Radar;
104    class RadarListener;
105
106    class CameraManager;
107    class LevelManager;
108    class PawnManager;
109    class PlayerManager;
110
111    // objects
112    class Level;
113    class Scene;
114
115    class AddQuest;
116    class AddQuestHint;
117    class AddReward;
118    class ChangeQuestStatus;
119    class CompleteQuest;
120    class FailQuest;
121    class GlobalQuest;
122    class LocalQuest;
123    class Quest;
124    class QuestDescription;
125    class QuestEffect;
126    class QuestEffectBeacon;
127    class QuestHint;
128    class QuestItem;
129    class QuestListener;
130    class QuestManager;
131    class Rewardable;
132
133    class WorldEntity;
134    class StaticEntity;
135    class MobileEntity;
136    class ControllableEntity;
137    class MovableEntity;
138    class Sublevel;
139
140    class Model;
141    class Billboard;
142    class BlinkingBillboard;
143    class ExplosionChunk;
144    class FadingBillboard;
145    class GlobalShader;
146    class Light;
147    class Backlight;
148    class ParticleEmitter;
149    class ParticleSpawner;
150
151    class Camera;
152    class CameraPosition;
153    class SpawnPoint;
154
155    class Spectator;
156    class Pawn;
157    class SpaceShip;
158
159    class Item;
160    class Engine;
161    class MultiStateEngine;
162    class RotatingEngine;
163
164    class Trigger;
165    class DistanceTrigger;
166    class EventTrigger;
167    class PlayerTrigger;
168
169    class WeaponSystem;
170    class WeaponSet;
171    class WeaponSlot;
172    class WeaponPack;
173    class Weapon;
174    class Munition;
175    class LaserGun;
176    class LaserGunMunition;
177
178    class EventListener;
179    class EventDispatcher;
180    class EventTarget;
181
182    class Controller;
183    class HumanController;
184    class ArtificialController;
185    class AIController;
186    class ScriptController;
187
188    class Info;
189    class PlayerInfo;
190    class HumanPlayer;
191    class Bot;
192    class GametypeInfo;
193
194    class Gametype;
195
196    class Scores;
197    class CreateLines;
198    class Scoreboard;
199    class Stats;
200
201    // collision
202    class CollisionShape;
203    class SphereCollisionShape;
204    class CompoundCollisionShape;
205    class PlaneCollisionShape;
206    class WorldEntityCollisionShape;
207
208    // tools
209    class BillboardSet;
210    class Light;
211    class Mesh;
212    class ParticleInterface;
213    class Shader;
214    template <class T>
215    class Timer;
216
217    // overlays
218    class BarColour;
219    class DebugFPSText;
220    class DebugRTRText;
221    class HUDBar;
222    class HUDNavigation;
223    class HUDRadar;
224    class HUDSpeedBar;
225    class HUDHealthBar;
226    class InGameConsole;
227    class Notification;
228    class NotificationManager;
229    class NotificationQueue;
230    class OrxonoxOverlay;
231    class OverlayGroup;
232    class OverlayText;
233    class GametypeStatus;
234    class CreateLines;
235    class Scoreboard;
236
237    //gui
238    class GUIManager;
239
240    // game states
241    class GSRoot;
242    class GSGraphics;
243    class GSIO;
244    class GSIOConsole;
245    class GSLevel;
246    class GSStandalone;
247    class GSServer;
248    class GSClient;
249    class GSGUI;
250}
251
252namespace Ogre
253{
254    // some got forgotten in OgrePrerequisites
255    class BorderPanelOverlayElement;
256    class PanelOverlayElement;
257    class TextAreaOverlayElement;
258}
259
260namespace CEGUI
261{
262    class LuaScriptModule;
263
264    class OgreCEGUIRenderer;
265    class OgreCEGUIResourceProvider;
266    class OgreCEGUITexture;
267}
268
269// Bullet Physics Engine
270
271class btTransform;
272class btVector3;
273
274class btRigidBody;
275class btCollisionObject;
276class btGhostObject;
277class btManifoldPoint;
278
279class btCollisionShape;
280class btSphereShape;
281class btCompoundShape;
282class btStaticPlaneShape;
283
284class btDiscreteDynamicsWorld;
285class bt32BitAxisSweep3;
286class btDefaultCollisionConfiguration;
287class btCollisionDispatcher;
288class btSequentialImpulseConstraintSolver;
289
290// lua
291struct lua_State;
292
293#endif /* _OrxonoxPrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.