Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/ois_update/src/modules/weapons/WeaponsPrereqs.h @ 7767

Last change on this file since 7767 was 7527, checked in by rgrieder, 14 years ago

Added _LibraryPrivate macros to all LibraryPrereqs.h files.
You can use these to declare classes that are only used internally and don't need to have any exported symbols.

  • Property svn:eol-style set to native
File size: 2.5 KB
RevLine 
[5686]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/**
[5929]30@file
31@brief
32    Shared library macros, enums, constants and forward declarations for the weapons module
[5686]33*/
34
[5724]35#ifndef _WeaponsPrereqs_H__
36#define _WeaponsPrereqs_H__
[5686]37
38#include "OrxonoxConfig.h"
39#include "OrxonoxPrereqs.h"
40
41//-----------------------------------------------------------------------
42// Shared library settings
43//-----------------------------------------------------------------------
[5929]44
[7163]45#if defined(ORXONOX_PLATFORM_WINDOWS) && !defined(WEAPONS_STATIC_BUILD)
[5724]46#  ifdef WEAPONS_SHARED_BUILD
47#    define _WeaponsExport __declspec(dllexport)
[5686]48#  else
49#    if defined( __MINGW32__ )
[5724]50#      define _WeaponsExport
[5686]51#    else
[5724]52#      define _WeaponsExport __declspec(dllimport)
[5686]53#    endif
54#  endif
[7527]55#  define _WeaponsPrivate
56#elif defined (ORXONOX_GCC_VISIBILITY)
[5724]57#  define _WeaponsExport  __attribute__ ((visibility("default")))
[7527]58#  define _WeaponsPrivate __attribute__ ((visibility("hidden")))
[5686]59#else
[5724]60#  define _WeaponsExport
[7527]61#  define _WeaponsPrivate
[5686]62#endif
63
64//-----------------------------------------------------------------------
65// Forward declarations
66//-----------------------------------------------------------------------
67
68namespace orxonox
69{
[5929]70    class MuzzleFlash;
[5686]71
[5929]72    // munitions
73    class FusionMunition;
74    class LaserMunition;
75    class ReplenishingMunition;
76
77    // projectiles
[5686]78    class BillboardProjectile;
[5929]79    class LightningGunProjectile;
[5686]80    class ParticleProjectile;
[5929]81    class Projectile;
[5686]82
[5929]83    // weaponmodes
84    class EnergyDrink;
85    class FusionFire;
86    class HsW01;
87    class LaserFire;
88    class LightningGun;
[5686]89}
90
[5724]91#endif /* _WeaponsPrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.