Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/objecthierarchy2/src/orxonox/OrxonoxPrereqs.h @ 2369

Last change on this file since 2369 was 2369, checked in by landauf, 15 years ago
  • Added a health bar
  • Some changes in CameraManager to handle the case when no camera exists after removing the last one, but this is still somehow buggy (freezes and later crashes reproducible but inexplicable after a few respawns)
  • Added PawnManager to handle destruction of Pawns without using delete within tick()
  • Property svn:eol-style set to native
File size: 4.8 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 "util/OrxonoxPlatform.h"
38
39//-----------------------------------------------------------------------
40// Shared library settings
41//-----------------------------------------------------------------------
42#if (ORXONOX_PLATFORM == ORXONOX_PLATFORM_WIN32) && !(defined(ORXONOX_STATIC_BUILD) || defined(ORXONOX_NO_EXPORTS))
43#  ifdef ORXONOX_SHARED_BUILD
44#    define _OrxonoxExport __declspec(dllexport)
45#  else
46#    if defined( __MINGW32__ )
47#      define _OrxonoxExport
48#    else
49#      define _OrxonoxExport __declspec(dllimport)
50#    endif
51#  endif
52#elif defined ( ORXONOX_GCC_VISIBILITY )
53#  define _OrxonoxExport  __attribute__ ((visibility("default")))
54#else
55#  define _OrxonoxExport
56#endif
57
58//-----------------------------------------------------------------------
59// Forward declarations
60//-----------------------------------------------------------------------
61
62namespace orxonox
63{
64    namespace LODParticle
65    {
66        enum LOD
67        {
68            off = 0,
69            low = 1,
70            normal = 2,
71            high = 3
72        };
73    }
74
75    class GraphicsEngine;
76    class Settings;
77
78    class RadarViewable;
79    class Radar;
80    class RadarListener;
81
82    class CameraManager;
83    class LevelManager;
84    class PawnManager;
85    class PlayerManager;
86
87    // objects
88    class Level;
89    class Scene;
90
91    class AddQuest;
92    class AddQuestHint;
93    class AddReward;
94    class ChangeQuestStatus;
95    class CompleteQuest;
96    class FailQuest;
97    class GlobalQuest;
98    class LocalQuest;
99    class Quest;
100    class QuestDescription;
101    class QuestEffect;
102    class QuestHint;
103    class QuestItem;
104    class QuestManager;
105    class Rewardable;
106
107    class WorldEntity;
108    class PositionableEntity;
109    class MovableEntity;
110    class ControllableEntity;
111    class Sublevel;
112
113    class Model;
114    class Billboard;
115    class BlinkingBillboard;
116    class FadingBillboard;
117    class GlobalShader;
118    class Light;
119    class Backlight;
120    class ParticleEmitter;
121    class ParticleSpawner;
122
123    class Camera;
124    class CameraPosition;
125    class SpawnPoint;
126
127    class Spectator;
128    class Pawn;
129    class SpaceShip;
130
131    class Item;
132    class Engine;
133    class MultiStateEngine;
134    class RotatingEngine;
135
136    class Trigger;
137    class DistanceTrigger;
138    class EventTrigger;
139
140    class WeaponSystem;
141    class WeaponSet;
142    class WeaponSlot;
143    class Weapon;
144    class Munition;
145
146    class EventListener;
147    class EventDispatcher;
148    class EventTarget;
149
150    class Controller;
151    class HumanController;
152    class ArtificialController;
153    class AIController;
154    class ScriptController;
155
156    class Info;
157    class PlayerInfo;
158    class HumanPlayer;
159    class Bot;
160
161    class Gametype;
162
163    class Scores;
164
165    // tools
166    class BillboardSet;
167    class Light;
168    class Mesh;
169    class ParticleInterface;
170    class Shader;
171    template <class T>
172    class Timer;
173
174    // overlays
175    class BarColour;
176    class DebugFPSText;
177    class DebugRTRText;
178    class HUDBar;
179    class HUDNavigation;
180    class HUDRadar;
181    class HUDSpeedBar;
182    class HUDHealthBar;
183    class InGameConsole;
184    class OrxonoxOverlay;
185    class OverlayGroup;
186    class OverlayText;
187
188    //gui
189    class GUIManager;
190
191    // game states
192    class GSRoot;
193    class GSGraphics;
194    class GSIO;
195    class GSIOConsole;
196    class GSLevel;
197    class GSStandalone;
198    class GSServer;
199    class GSClient;
200    class GSGUI;
201}
202
203namespace Ogre
204{
205    // some got forgotten in OgrePrerequisites
206    class BorderPanelOverlayElement;
207    class PanelOverlayElement;
208    class TextAreaOverlayElement;
209}
210
211namespace CEGUI
212{
213    class LuaScriptModule;
214
215    class OgreCEGUIRenderer;
216    class OgreCEGUIResourceProvider;
217    class OgreCEGUITexture;
218}
219
220struct lua_State;
221
222#endif /* _OrxonoxPrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.