Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/buildsystem2/src/orxonox/OrxonoxPrereqs.h @ 2643

Last change on this file since 2643 was 2639, checked in by rgrieder, 15 years ago

Cleanup in OrxonoxConfig.h.in. Made use of various CMake features like CheckInclude or CheckCompiles to determine some options and macros in the config header file.

Also removed util/Integers.h and placed the code directory in OrxonoxConfig.h.in.

  • Property svn:eol-style set to native
File size: 4.6 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 GraphicsEngine;
77    class Settings;
78
79    class RadarViewable;
80    class Radar;
81    class RadarListener;
82
83    class CameraManager;
84    class LevelManager;
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 QuestEffectBeacon;
103    class QuestHint;
104    class QuestItem;
105    class QuestManager;
106    class Rewardable;
107
108    class WorldEntity;
109    class PositionableEntity;
110    class MovableEntity;
111    class ControllableEntity;
112    class Sublevel;
113
114    class Model;
115    class Billboard;
116    class BlinkingBillboard;
117    class Light;
118    class Backlight;
119    class ParticleEmitter;
120    class ParticleSpawner;
121
122    class Camera;
123    class CameraPosition;
124    class SpawnPoint;
125
126    class Spectator;
127    class Pawn;
128    class SpaceShip;
129
130    class Trigger;
131    class DistanceTrigger;
132    class EventTrigger;
133    class PlayerTrigger;
134
135    class WeaponSystem;
136    class WeaponSet;
137    class WeaponSlot;
138    class Weapon;
139    class Munition;
140
141    class EventListener;
142    class EventDispatcher;
143    class EventTarget;
144
145    class Controller;
146    class HumanController;
147
148    class Info;
149    class PlayerInfo;
150    class HumanPlayer;
151
152    class Gametype;
153
154    class Scores;
155
156    // tools
157    class BillboardSet;
158    class Light;
159    class Mesh;
160    class ParticleInterface;
161    template <class T>
162    class Timer;
163
164    // overlays
165    class BarColour;
166    class DebugFPSText;
167    class DebugRTRText;
168    class HUDBar;
169    class HUDNavigation;
170    class HUDRadar;
171    class HUDSpeedBar;
172    class InGameConsole;
173    class OrxonoxOverlay;
174    class OverlayGroup;
175    class OverlayText;
176
177    //gui
178    class GUIManager;
179
180    // game states
181    class GSRoot;
182    class GSGraphics;
183    class GSIO;
184    class GSIOConsole;
185    class GSLevel;
186    class GSStandalone;
187    class GSServer;
188    class GSClient;
189    class GSGUI;
190}
191
192namespace Ogre
193{
194    // some got forgotten in OgrePrerequisites
195    class BorderPanelOverlayElement;
196    class PanelOverlayElement;
197    class TextAreaOverlayElement;
198}
199
200namespace CEGUI
201{
202    class LuaScriptModule;
203
204    class OgreCEGUIRenderer;
205    class OgreCEGUIResourceProvider;
206    class OgreCEGUITexture;
207}
208
209struct lua_State;
210
211#endif /* _OrxonoxPrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.