Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

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

Last change on this file since 3080 was 3079, checked in by landauf, 16 years ago

Added forward declarations to OrxonoxPrereqs.h.

  • Property svn:eol-style set to native
File size: 6.9 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    class GraphicsManager;
77    class OgreWindowEventListener;
78    class Settings;
79
80    class RadarViewable;
81    class Radar;
82    class RadarListener;
83
84    class Teamcolourable;
85
86    class CameraManager;
87    class LevelManager;
88    class PawnManager;
89    class PlayerManager;
90
91    // objects
92    class Level;
93    class Scene;
94
95    class AddQuest;
96    class AddQuestHint;
97    class AddReward;
98    class ChangeQuestStatus;
99    class CompleteQuest;
100    class FailQuest;
101    class GlobalQuest;
102    class LocalQuest;
103    class Quest;
104    class QuestDescription;
105    class QuestEffect;
106    class QuestEffectBeacon;
107    class QuestHint;
108    class QuestItem;
109    class QuestListener;
110    class QuestManager;
111    class QuestNotification;
112    class Rewardable;
113
114    class WorldEntity;
115    class StaticEntity;
116    class MobileEntity;
117    class ControllableEntity;
118    class MovableEntity;
119    class Sublevel;
120    class ForceField;
121    class Attacher;
122
123    class Model;
124    class Billboard;
125    class BlinkingBillboard;
126    class ExplosionChunk;
127    class FadingBillboard;
128    class GlobalShader;
129    class Light;
130    class Backlight;
131    class ParticleEmitter;
132    class ParticleSpawner;
133
134    class PongCenterpoint;
135    class PongBall;
136    class PongBat;
137
138    class Camera;
139    class CameraPosition;
140    class SpawnPoint;
141    class TeamSpawnPoint;
142
143    class Spectator;
144    class Pawn;
145    class SpaceShip;
146    class TeamBaseMatchBase;
147    class Destroyer;
148
149    class BaseItem;
150    class DroppedItem;
151    class EquipmentItem;
152    class ModifierPickup;
153    class PassiveItem;
154    class PickupCollection;
155    class PickupInventory;
156    class PickupSpawner;
157    class UsableItem;
158
159    class Jump;
160    class HealthUsable;
161    class PassiveItem;
162
163    class Item;
164    class Engine;
165    class MultiStateEngine;
166    class RotatingEngine;
167
168    class Trigger;
169    class DistanceTrigger;
170    class EventTrigger;
171    class PlayerTrigger;
172    class CheckPoint;
173
174    class WeaponSystem;
175    class WeaponSet;
176    class WeaponSlot;
177    class WeaponPack;
178    class Weapon;
179    class WeaponMode;
180    class DefaultWeaponmodeLink;
181    class MuzzleFlash;
182
183    class LaserFire;
184    class FusionFire;
185    class HsW01;
186    class LightningGun;
187    class EnergyDrink;
188
189    class ReplenishingMunition;
190    class Munition;
191    class LaserMunition;
192    class FusionMunition;
193
194    class Projectile;
195    class BillboardProjectile;
196    class ParticleProjectile;
197    class LightningGunProjectile;
198
199    class EventListener;
200    class EventDispatcher;
201    class EventTarget;
202
203    class Controller;
204    class HumanController;
205    class ArtificialController;
206    class AIController;
207    class ScriptController;
208    class WaypointController;
209    class WaypointPatrolController;
210    class PongAI;
211
212    class Info;
213    class PlayerInfo;
214    class HumanPlayer;
215    class Bot;
216    class PongBot;
217    class GametypeInfo;
218
219    class Gametype;
220    class Deathmatch;
221    class TeamDeathmatch;
222    class Asteroids;
223    class TeamBaseMatch;
224    class UnderAttack;
225    class Pong;
226
227    class Scores;
228    class CreateLines;
229    class Scoreboard;
230    class Stats;
231
232    // collision
233    class CollisionShape;
234    class SphereCollisionShape;
235    class CompoundCollisionShape;
236    class PlaneCollisionShape;
237    class WorldEntityCollisionShape;
238
239    // tools
240    class BillboardSet;
241    class Light;
242    class Mesh;
243    class ParticleInterface;
244    class Shader;
245    template <class T>
246    class Timer;
247
248    // overlays
249    class BarColour;
250    class DebugFPSText;
251    class DebugRTRText;
252    class HUDBar;
253    class HUDNavigation;
254    class HUDRadar;
255    class HUDSpeedBar;
256    class HUDHealthBar;
257    class HUDTimer;
258    class InGameConsole;
259    class Notification;
260    class NotificationManager;
261    class NotificationOverlay;
262    class NotificationQueue;
263    class OrxonoxOverlay;
264    class OverlayGroup;
265    class OverlayText;
266    class GametypeStatus;
267    class CreateLines;
268    class Scoreboard;
269
270    //gui
271    class GUIManager;
272
273    //sound
274    class SoundBase;
275    class SoundManager;
276    class SoundMainMenu;
277}
278
279namespace Ogre
280{
281    // some got forgotten in OgrePrerequisites
282    class BorderPanelOverlayElement;
283    class PanelOverlayElement;
284    class TextAreaOverlayElement;
285}
286
287namespace CEGUI
288{
289    class LuaScriptModule;
290
291    class OgreCEGUIRenderer;
292    class OgreCEGUIResourceProvider;
293    class OgreCEGUITexture;
294}
295
296// Bullet Physics Engine
297
298class btTransform;
299class btVector3;
300
301class btRigidBody;
302class btCollisionObject;
303class btGhostObject;
304class btManifoldPoint;
305
306class btCollisionShape;
307class btSphereShape;
308class btCompoundShape;
309class btStaticPlaneShape;
310
311class btDiscreteDynamicsWorld;
312class bt32BitAxisSweep3;
313class btDefaultCollisionConfiguration;
314class btCollisionDispatcher;
315class btSequentialImpulseConstraintSolver;
316
317// lua
318struct lua_State;
319
320#endif /* _OrxonoxPrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.