Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/steering/src/orxonox/OrxonoxPrereqs.h @ 8353

Last change on this file since 8353 was 7854, checked in by landauf, 14 years ago

detached AmbientSound from BaseObject - AmbientSound can not be placed directly in a level file anymore
instead added WorldAmbientSound, a BaseObject which can be placed in a level file to create and control ambient sound

with this change, the level can be destroyed completely because WorldAmbientSound can be deleted immediately at the end of the level, while the AmbientSound remains active until it faded out.

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