Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/core5/src/orxonox/OrxonoxPrereqs.h @ 5920

Last change on this file since 5920 was 5896, checked in by rgrieder, 15 years ago

Added some basic sound classes: WorldSound (to be used for 3D sound, is a WorldEntity) and AmbientSound (BaseObject, just add it somewhere and it will play with playOnLoad=true).
Also moved the sound listener device updating to the HumanController. We might want to modify this again so that the listener is at the camera position again, not at the space ship.

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