Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/weapons/src/orxonox/OrxonoxPrereqs.h @ 2912

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

Several small adjustments in the weaponsystem (like additional const keyword, includes moved from .h to .cc where possible, …)

Firemode is now an unsigned int instead of an Enum. Instead of "fire" and "altFire" use "fire 0" and "fire 1"

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