Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/pCuts/src/orxonox/OrxonoxPrereqs.h @ 9352

Last change on this file since 9352 was 9024, checked in by jo, 13 years ago

I restructured the inheritance of gametypes: The base class of teamgametypes is now the class 'TeamGametype'. Now it is possible to create teamgametypes without needing the messages contained in TeamDeathmatch. By doing so the class 'TeamDeathmatch' exactly does the same as the Deathmatch class.

  • Property svn:eol-style set to native
File size: 5.2 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
32    Shared library macros, enums, constants and forward declarations for the orxonox library
33*/
34
35#ifndef _OrxonoxPrereqs_H__
36#define _OrxonoxPrereqs_H__
37
38#include "OrxonoxConfig.h"
39#include "tools/ToolsPrereqs.h"
40
41//-----------------------------------------------------------------------
42// Shared library settings
43//-----------------------------------------------------------------------
44
45#if defined(ORXONOX_PLATFORM_WINDOWS) && !defined(ORXONOX_STATIC_BUILD)
46#  ifdef ORXONOX_SHARED_BUILD
47#    define _OrxonoxExport __declspec(dllexport)
48#  else
49#    if defined( __MINGW32__ )
50#      define _OrxonoxExport
51#    else
52#      define _OrxonoxExport __declspec(dllimport)
53#    endif
54#  endif
55#  define _OrxonoxPrivate
56#elif defined (ORXONOX_GCC_VISIBILITY)
57#  define _OrxonoxExport  __attribute__ ((visibility("default")))
58#  define _OrxonoxPrivate __attribute__ ((visibility("hidden")))
59#else
60#  define _OrxonoxExport
61#  define _OrxonoxPrivate
62#endif
63
64//-----------------------------------------------------------------------
65// Forward declarations
66//-----------------------------------------------------------------------
67
68namespace orxonox
69{
70    class CameraManager;
71    class Level;
72    class LevelInfo;
73    class LevelInfoItem;
74    class LevelManager;
75    class PawnManager;
76    class PlayerManager;
77    class Radar;
78    class Scene;
79
80    // chat
81    class ChatHistory;
82    class ChatInputHandler;
83    class ChatListener;
84    class ChatManager;
85
86    // collisionshapes
87    class CollisionShape;
88    class CompoundCollisionShape;
89    class WorldEntityCollisionShape;
90
91    // controllers
92    class AIController;
93    class ArtificialController;
94    class Controller;
95    class DroneController;
96    class HumanController;
97    class ScriptController;
98    class WaypointController;
99    class WaypointPatrolController;
100
101    // gametypes
102    class Asteroids;
103    class Deathmatch;
104    class Dynamicmatch;
105    class Gametype;
106    class LastManStanding;
107    class LastTeamStanding;
108    class TeamBaseMatch;
109    class TeamDeathmatch;
110    class UnderAttack;
111    class TeamGametype;
112
113    // graphics
114    class Backlight;
115    class Billboard;
116    class BlinkingBillboard;
117    class Camera;
118    class FadingBillboard;
119    class GlobalShader;
120    class Light;
121    class Model;
122    class ParticleEmitter;
123    class ParticleSpawner;
124
125    // infos
126    class Bot;
127    class GametypeInfo;
128    class HumanPlayer;
129    class Info;
130    class PlayerInfo;
131
132    // interfaces
133    class GametypeMessageListener;
134    class NotificationListener;
135    class Pickupable;
136    class PickupCarrier;
137    class PlayerTrigger;
138    class RadarListener;
139    class RadarViewable;
140    class Rewardable;
141    class TeamColourable;
142
143    // items
144    class Engine;
145    class Item;
146    class MultiStateEngine;
147
148    // overlays
149    class InGameConsole;
150    class Map;
151    class OrxonoxOverlay;
152    class OverlayGroup;
153
154    // pickup
155    class PickupIdentifier;
156
157    //sound
158    class AmbientSound;
159    class BaseSound;
160    class SoundBuffer;
161    class SoundManager;
162    class SoundStreamer;
163    class WorldSound;
164    class WorldAmbientSound;
165
166    // weaponsystem
167    class DefaultWeaponmodeLink;
168    class Munition;
169    class Weapon;
170    class WeaponMode;
171    class WeaponPack;
172    class WeaponSet;
173    class WeaponSlot;
174    class WeaponSystem;
175
176    // worldentities
177    class BigExplosion;
178    class CameraPosition;
179    class ControllableEntity;
180    class Drone;
181    class EffectContainer;
182    class ExplosionChunk;
183    class MobileEntity;
184    class MovableEntity;
185    class SpawnPoint;
186    class StaticEntity;
187    class TeamSpawnPoint;
188    class WorldEntity;
189    class Rocket;
190    // worldentities, pawns
191    class Destroyer;
192    class Pawn;
193    class SpaceShip;
194    class Spectator;
195    class TeamBaseMatchBase;
196}
197
198// Bullet Physics Engine
199class btTransform;
200class btVector3;
201
202class btRigidBody;
203class btCollisionObject;
204class btGhostObject;
205class btManifoldPoint;
206
207class btCollisionShape;
208class btSphereShape;
209class btCompoundShape;
210class btStaticPlaneShape;
211
212class btDiscreteDynamicsWorld;
213class bt32BitAxisSweep3;
214class btDefaultCollisionConfiguration;
215class btCollisionDispatcher;
216class btSequentialImpulseConstraintSolver;
217
218// ALUT
219typedef struct ALCcontext_struct ALCcontext;
220typedef struct ALCdevice_struct ALCdevice;
221typedef unsigned int ALuint;
222typedef int ALint;
223typedef int ALenum;
224
225#endif /* _OrxonoxPrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.