Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

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

Last change on this file since 2911 was 2911, checked in by landauf, 15 years ago

Merged r1-2096 of questsystem5 back to trunk

I hope there weren't more "hidden merge changes" in r2909 than the one in OverlayGroup (removeElement) (and related to this the adjustments in NotificationQueue).

The corresponding media commit seems not yet to be done, but it doesn't break the build.

  • Property svn:eol-style set to native
File size: 6.4 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        enum Enum
80        { laserGunMunition };
81    }
82
83    //put here all weapon fire modes.
84    //they have to be added to Pawn and HumanController, too.
85    namespace WeaponMode
86    {
87        enum Enum
88        {
89            fire     = 0x1,
90            altFire  = 0x2,
91            altFire2 = 0x4
92        };
93    }
94
95
96    class GraphicsManager;
97    class OgreWindowEventListener;
98    class Settings;
99
100    class RadarViewable;
101    class Radar;
102    class RadarListener;
103
104    class Teamcolourable;
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 PongCenterpoint;
153    class PongBall;
154    class PongBat;
155
156    class Camera;
157    class CameraPosition;
158    class SpawnPoint;
159    class TeamSpawnPoint;
160
161    class Spectator;
162    class Pawn;
163    class SpaceShip;
164
165    class Item;
166    class Engine;
167    class MultiStateEngine;
168    class RotatingEngine;
169
170    class Trigger;
171    class DistanceTrigger;
172    class EventTrigger;
173    class PlayerTrigger;
174
175    class WeaponSystem;
176    class WeaponSet;
177    class WeaponSlot;
178    class WeaponPack;
179    class Weapon;
180    class Munition;
181    class LaserGun;
182    class LaserGunMunition;
183    class FusionMunition;
184
185    class EventListener;
186    class EventDispatcher;
187    class EventTarget;
188
189    class Controller;
190    class HumanController;
191    class ArtificialController;
192    class AIController;
193    class ScriptController;
194    class PongAI;
195
196    class Info;
197    class PlayerInfo;
198    class HumanPlayer;
199    class Bot;
200    class PongBot;
201    class GametypeInfo;
202
203    class Gametype;
204    class Deathmatch;
205    class TeamDeathmatch;
206    class Pong;
207
208    class Scores;
209    class CreateLines;
210    class Scoreboard;
211    class Stats;
212
213    // collision
214    class CollisionShape;
215    class SphereCollisionShape;
216    class CompoundCollisionShape;
217    class PlaneCollisionShape;
218    class WorldEntityCollisionShape;
219
220    // tools
221    class BillboardSet;
222    class Light;
223    class Mesh;
224    class ParticleInterface;
225    class Shader;
226    template <class T>
227    class Timer;
228
229    // overlays
230    class BarColour;
231    class DebugFPSText;
232    class DebugRTRText;
233    class HUDBar;
234    class HUDNavigation;
235    class HUDRadar;
236    class HUDSpeedBar;
237    class HUDHealthBar;
238    class InGameConsole;
239    class Notification;
240    class NotificationManager;
241    class NotificationOverlay;
242    class NotificationQueue;
243    class OrxonoxOverlay;
244    class OverlayGroup;
245    class OverlayText;
246    class GametypeStatus;
247    class CreateLines;
248    class Scoreboard;
249
250    //gui
251    class GUIManager;
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.