Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/questsystem5/src/orxonox/OrxonoxPrereqs.h @ 2893

Last change on this file since 2893 was 2779, checked in by dafrick, 16 years ago

Updated questsystem to current trunk. Synchronized it with my local state of things. The Notifications are not yet working, though.

  • Property svn:eol-style set to native
File size: 6.3 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 QuestNotification;
132    class Rewardable;
133
134    class WorldEntity;
135    class StaticEntity;
136    class MobileEntity;
137    class ControllableEntity;
138    class MovableEntity;
139    class Sublevel;
140
141    class Model;
142    class Billboard;
143    class BlinkingBillboard;
144    class ExplosionChunk;
145    class FadingBillboard;
146    class GlobalShader;
147    class Light;
148    class Backlight;
149    class ParticleEmitter;
150    class ParticleSpawner;
151
152    class Camera;
153    class CameraPosition;
154    class SpawnPoint;
155
156    class Spectator;
157    class Pawn;
158    class SpaceShip;
159
160    class Item;
161    class Engine;
162    class MultiStateEngine;
163    class RotatingEngine;
164
165    class Trigger;
166    class DistanceTrigger;
167    class EventTrigger;
168    class PlayerTrigger;
169
170    class WeaponSystem;
171    class WeaponSet;
172    class WeaponSlot;
173    class WeaponPack;
174    class Weapon;
175    class Munition;
176    class LaserGun;
177    class LaserGunMunition;
178
179    class EventListener;
180    class EventDispatcher;
181    class EventTarget;
182
183    class Controller;
184    class HumanController;
185    class ArtificialController;
186    class AIController;
187    class ScriptController;
188
189    class Info;
190    class PlayerInfo;
191    class HumanPlayer;
192    class Bot;
193    class GametypeInfo;
194
195    class Gametype;
196
197    class Scores;
198    class CreateLines;
199    class Scoreboard;
200    class Stats;
201
202    // collision
203    class CollisionShape;
204    class SphereCollisionShape;
205    class CompoundCollisionShape;
206    class PlaneCollisionShape;
207    class WorldEntityCollisionShape;
208
209    // tools
210    class BillboardSet;
211    class Light;
212    class Mesh;
213    class ParticleInterface;
214    class Shader;
215    template <class T>
216    class Timer;
217
218    // overlays
219    class BarColour;
220    class DebugFPSText;
221    class DebugRTRText;
222    class HUDBar;
223    class HUDNavigation;
224    class HUDRadar;
225    class HUDSpeedBar;
226    class HUDHealthBar;
227    class InGameConsole;
228    class Notification;
229    class NotificationManager;
230    class NotificationOverlay;
231    class NotificationQueue;
232    class OrxonoxOverlay;
233    class OverlayGroup;
234    class OverlayText;
235    class GametypeStatus;
236    class CreateLines;
237    class Scoreboard;
238
239    //gui
240    class GUIManager;
241
242    // game states
243    class GSRoot;
244    class GSGraphics;
245    class GSIO;
246    class GSIOConsole;
247    class GSLevel;
248    class GSStandalone;
249    class GSServer;
250    class GSClient;
251    class GSGUI;
252}
253
254namespace Ogre
255{
256    // some got forgotten in OgrePrerequisites
257    class BorderPanelOverlayElement;
258    class PanelOverlayElement;
259    class TextAreaOverlayElement;
260}
261
262namespace CEGUI
263{
264    class LuaScriptModule;
265
266    class OgreCEGUIRenderer;
267    class OgreCEGUIResourceProvider;
268    class OgreCEGUITexture;
269}
270
271// Bullet Physics Engine
272
273class btTransform;
274class btVector3;
275
276class btRigidBody;
277class btCollisionObject;
278class btGhostObject;
279class btManifoldPoint;
280
281class btCollisionShape;
282class btSphereShape;
283class btCompoundShape;
284class btStaticPlaneShape;
285
286class btDiscreteDynamicsWorld;
287class bt32BitAxisSweep3;
288class btDefaultCollisionConfiguration;
289class btCollisionDispatcher;
290class btSequentialImpulseConstraintSolver;
291
292// lua
293struct lua_State;
294
295#endif /* _OrxonoxPrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.