Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/trunk/src/orxonox/core/CorePrereqs.h @ 1052

Last change on this file since 1052 was 1052, checked in by landauf, 16 years ago

merged core2 back to trunk
there might be some errors, wasn't able to test it yet due to some strange g++ and linker behaviour.

File size: 3.6 KB
Line 
1/*
2 *   ORXONOX - the hottest 3D action shooter ever to exist
3 *
4 *
5 *   License notice:
6 *
7 *   This program is free software; you can redistribute it and/or
8 *   modify it under the terms of the GNU General Public License
9 *   as published by the Free Software Foundation; either version 2
10 *   of the License, or (at your option) any later version.
11 *
12 *   This program is distributed in the hope that it will be useful,
13 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
14 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 *   GNU General Public License for more details.
16 *
17 *   You should have received a copy of the GNU General Public License
18 *   along with this program; if not, write to the Free Software
19 *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
20 *
21 *   Author:
22 *      Reto Grieder
23 *   Co-authors:
24 *      ...
25 *
26 */
27
28/**
29  @file
30  @brief Contains all the necessary forward declarations for all classes and structs.
31*/
32
33#ifndef _CorePrereqs_H__
34#define _CorePrereqs_H__
35
36#include <string>
37
38#include "OrxonoxPlatform.h"
39
40//-----------------------------------------------------------------------
41// Shared library settings
42//-----------------------------------------------------------------------
43#if (ORXONOX_PLATFORM == ORXONOX_PLATFORM_WIN32) && !defined( CORE_STATIC_BUILD )
44#  ifdef CORE_SHARED_BUILD
45#    define _CoreExport __declspec(dllexport)
46#  else
47#    if defined( __MINGW32__ )
48#      define _CoreExport
49#    else
50#      define _CoreExport __declspec(dllimport)
51#    endif
52#  endif
53#elif defined ( ORXONOX_GCC_VISIBILITY )
54#  define _CoreExport  __attribute__ ((visibility("default")))
55#else
56#  define _CoreExport
57#endif
58
59
60//-----------------------------------------------------------------------
61// Forward declarations
62//-----------------------------------------------------------------------
63class SignalHandler;
64
65namespace orxonox
66{
67#ifndef _XMLPort_Mode__
68#define _XMLPort_Mode__
69  namespace XMLPort
70  {
71    enum Mode
72    {
73      LoadObject,
74      SaveObject
75    };
76  }
77#endif
78
79  typedef std::string LanguageEntryLabel;
80
81  class BaseFactory;
82  class BaseMetaObjectListElement;
83  class BaseObject;
84  template <class T>
85  class ClassFactory;
86  template <class T>
87  class ClassIdentifier;
88  template <class T>
89  class ClassManager;
90  class ClassTreeMask;
91  class ClassTreeMaskIterator;
92  class ClassTreeMaskNode;
93  class CommandEvaluation;
94  class CommandExecutor;
95  class ConfigFile;
96  class ConfigFileEntry;
97  class ConfigFileEntryComment;
98  class ConfigFileEntryValue;
99  class ConfigFileManager;
100  class ConfigFileSection;
101  class ConfigValueContainer;
102  class CoreSettings;
103  class Error;
104  class Executor;
105  template <class T>
106  class ExecutorMember;
107  class ExecutorStatic;
108  class Factory;
109  class Functor;
110  template <class T>
111  class FunctorMember;
112  class FunctorStatic;
113  class Identifier;
114  class IdentifierDistributor;
115  class InputBuffer;
116  class InputBufferListener;
117  class InputHandlerGame;
118  class InputHandlerGUI;
119  class InputManager;
120  template <class T>
121  class Iterator;
122  class Language;
123  class LanguageEntry;
124  class Level;
125  class Loader;
126  class MetaObjectList;
127  template <class T>
128  class MetaObjectListElement;
129  class Namespace;
130  class NamespaceNode;
131  template <class T>
132  class ObjectList;
133  template <class T>
134  class ObjectListElement;
135  class OrxonoxClass;
136  class OutputHandler;
137  class Shell;
138  template <class T>
139  class SubclassIdentifier;
140  class Tickable;
141  template <class T, class O>
142  class XMLPortClassObjectContainer;
143  template <class T>
144  class XMLPortClassParamContainer;
145  class XMLPortObjectContainer;
146  class XMLPortParamContainer;
147}
148
149#endif /* _CorePrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.