Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/objecthierarchy/src/orxonox/OrxonoxPrereqs.h @ 2168

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

Split up LevelManager into LevelManager and PlayerManager where LevelManager handles all levels and is only active on the server, while PlayerManager handles client connections and passes new players to the LevelManager (if running on a server). If running on a client, PlayerManager just maps PlayerInfos with clientIDs.

Also added a small hack in Level.cc to show the ChatOverlay on clients.

  • Property svn:eol-style set to native
File size: 4.0 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 PlayerManager;
85
86    // objects
87    class Scene;
88
89    class WorldEntity;
90    class PositionableEntity;
91    class MovableEntity;
92    class ControllableEntity;
93    class Sublevel;
94
95    class Model;
96    class Billboard;
97    class BlinkingBillboard;
98    class Light;
99    class Backlight;
100    class ParticleEmitter;
101    class ParticleSpawner;
102
103    class Camera;
104    class CameraPosition;
105    class SpawnPoint;
106
107    class Spectator;
108    class Pawn;
109    class SpaceShip;
110
111    class Trigger;
112    class DistanceTrigger;
113    class EventTrigger;
114
115    class EventListener;
116    class EventDispatcher;
117    class EventTarget;
118
119    class Controller;
120    class HumanController;
121
122    class Info;
123    class Level;
124    class PlayerInfo;
125    class HumanPlayer;
126
127    class Gametype;
128
129    class Scores;
130
131    // tools
132    class BillboardSet;
133    class Light;
134    class Mesh;
135    class ParticleInterface;
136    template <class T>
137    class Timer;
138
139    // overlays
140    class BarColour;
141    class DebugFPSText;
142    class DebugRTRText;
143    class HUDBar;
144    class HUDNavigation;
145    class HUDRadar;
146    class HUDSpeedBar;
147    class InGameConsole;
148    class OrxonoxOverlay;
149    class OverlayGroup;
150    class OverlayText;
151
152    //gui
153    class GUIManager;
154
155    // game states
156    class GSRoot;
157    class GSGraphics;
158    class GSIO;
159    class GSIOConsole;
160    class GSLevel;
161    class GSStandalone;
162    class GSServer;
163    class GSClient;
164    class GSGUI;
165}
166
167namespace Ogre
168{
169    // some got forgotten in OgrePrerequisites
170    class BorderPanelOverlayElement;
171    class PanelOverlayElement;
172    class TextAreaOverlayElement;
173}
174
175namespace CEGUI
176{
177    class LuaScriptModule;
178
179    class OgreCEGUIRenderer;
180    class OgreCEGUIResourceProvider;
181    class OgreCEGUITexture;
182}
183
184struct lua_State;
185
186#endif /* _OrxonoxPrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.