Orxonox  0.0.5 Codename: Arcturus
UtilPrereqs.h
Go to the documentation of this file.
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  * Fabian 'x3n' Landau
26  *
27  */
28 
35 #ifndef _UtilPrereqs_H__
36 #define _UtilPrereqs_H__
37 
38 #include "OrxonoxConfig.h"
39 #include <string>
40 
41 //-----------------------------------------------------------------------
42 // Shared library settings
43 //-----------------------------------------------------------------------
44 
45 #if defined(ORXONOX_PLATFORM_WINDOWS) && !defined( UTIL_STATIC_BUILD )
46 # ifdef UTIL_SHARED_BUILD
47 # define _UtilExport __declspec(dllexport)
48 # else
49 # if defined( __MINGW32__ )
50 # define _UtilExport
51 # else
52 # define _UtilExport __declspec(dllimport)
53 # endif
54 # endif
55 # define _UtilPrivate
56 #elif defined (ORXONOX_GCC_VISIBILITY)
57 # define _UtilExport __attribute__ ((visibility("default")))
58 # define _UtilPrivate __attribute__ ((visibility("hidden")))
59 #else
60 # define _UtilExport
61 # define _UtilPrivate
62 #endif
63 
64 //-----------------------------------------------------------------------
65 // Forward declarations
66 //-----------------------------------------------------------------------
67 
68 namespace orxonox
69 {
70  class AdditionalContextListener;
71  class BaseWriter;
72  class Clock;
73  class ConsoleWriter;
74  class Exception;
75  class ExprParser;
76  class LogWriter;
77  class MemoryWriter;
78  class MultiType;
79  class OutputListener;
80  class OutputManager;
81  class OutputStream;
82  class ScopeListener;
83  class SignalHandler;
84  template <class T>
85  class Singleton;
86  class SubcontextOutputListener;
87  class SubString;
88 }
89 
90 namespace Ogre
91 {
92  class Radian;
93  class Degree;
94  class Vector2;
95  class Vector3;
96  class Vector4;
97  class Matrix3;
98  class Matrix4;
99  class Quaternion;
100  class ColourValue;
101 }
102 namespace orxonox
103 {
104  using Ogre::Radian;
105  using Ogre::Degree;
106  using Ogre::Vector2;
107  using Ogre::Vector3;
108  using Ogre::Vector4;
109  using Ogre::Matrix3;
110  using Ogre::Matrix4;
111  using Ogre::Quaternion;
112  using Ogre::ColourValue;
113 }
114 
115 namespace Loki
116 {
117  class ScopeGuardImplBase;
118  typedef const ScopeGuardImplBase& ScopeGuard;
119 }
120 
121 // Just so you don't have to include StringUtils.h everywhere just for this
122 namespace orxonox
123 {
125 }
126 
127 
128 #endif /* _UtilPrereqs_H__ */
std::string BLANKSTRING
A blank string (""). Used to return a blank string by reference.
Definition: StringUtils.cc:46
Definition: NullType.h:21
#define _UtilExport
Definition: UtilPrereqs.h:60
::std::string string
Definition: gtest-port.h:756
Various constants for compiler, architecture and platform.
Die Wagnis Klasse hat die folgenden Aufgaben:
Definition: ApplicationPaths.cc:66
Definition: CorePrereqs.h:362
const ScopeGuardImplBase & ScopeGuard
Definition: ScopeGuard.h:95