Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/buildsystem2/src/core/CorePrereqs.h @ 2640

Last change on this file since 2640 was 2639, checked in by rgrieder, 15 years ago

Cleanup in OrxonoxConfig.h.in. Made use of various CMake features like CheckInclude or CheckCompiles to determine some options and macros in the config header file.

Also removed util/Integers.h and placed the code directory in OrxonoxConfig.h.in.

  • Property svn:eol-style set to native
File size: 4.4 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 Contains all the necessary forward declarations for all classes and structs.
32*/
33
34#ifndef _CorePrereqs_H__
35#define _CorePrereqs_H__
36
37#include "OrxonoxConfig.h"
38
39#include <string>
40
41//-----------------------------------------------------------------------
42// Shared library settings
43//-----------------------------------------------------------------------
44#if defined(ORXONOX_PLATFORM_WINDOWS) && !defined( CORE_STATIC_BUILD )
45#  ifdef CORE_SHARED_BUILD
46#    define _CoreExport __declspec(dllexport)
47#  else
48#    if defined( __MINGW32__ )
49#      define _CoreExport
50#    else
51#      define _CoreExport __declspec(dllimport)
52#    endif
53#  endif
54#elif defined ( ORXONOX_GCC_VISIBILITY )
55#  define _CoreExport  __attribute__ ((visibility("default")))
56#else
57#  define _CoreExport
58#endif
59
60
61//-----------------------------------------------------------------------
62// Forward declarations
63//-----------------------------------------------------------------------
64namespace orxonox
65{
66  namespace XMLPort
67  {
68    enum Mode
69    {
70      LoadObject,
71      SaveObject
72    };
73  }
74
75  namespace KeybindMode
76  {
77    enum Enum
78    {
79      OnPress,
80      OnHold,
81      OnRelease,
82      None
83    };
84  };
85
86  typedef std::string LanguageEntryLabel;
87
88  class ArgumentCompleter;
89  class ArgumentCompletionListElement;
90  class BaseFactory;
91  class BaseMetaObjectListElement;
92  class BaseObject;
93  template <class T>
94  class ClassFactory;
95  template <class T>
96  class ClassIdentifier;
97  class ClassTreeMask;
98  class ClassTreeMaskIterator;
99  class ClassTreeMaskNode;
100  class ClassTreeMaskObjectIterator;
101  class Clock;
102  class CommandEvaluation;
103  class CommandExecutor;
104  class CommandLine;
105  class CommandLineArgument;
106  class ConfigFile;
107  class ConfigFileEntry;
108  class ConfigFileEntryComment;
109  class ConfigFileEntryValue;
110  class ConfigFileManager;
111  class ConfigFileSection;
112  class ConfigValueContainer;
113  class ConsoleCommand;
114  class Core;
115  struct Event;
116  class EventContainer;
117  class Executor;
118  template <class T>
119  class ExecutorMember;
120  class ExecutorStatic;
121  class Factory;
122  class Functor;
123  template <class T>
124  class FunctorMember;
125  class FunctorStatic;
126  class Identifier;
127  class IRC;
128  template <class T>
129  class Iterator;
130  class IteratorBase;
131  class Language;
132  class LanguageEntry;
133  class Loader;
134  class MetaObjectList;
135  class MetaObjectListElement;
136  class Namespace;
137  class NamespaceNode;
138  template <class T>
139  class ObjectList;
140  class ObjectListBase;
141  class ObjectListBaseElement;
142  template <class T>
143  class ObjectListElement;
144  template <class T>
145  class ObjectListIterator;
146  class OrxonoxClass;
147  class Shell;
148  class ShellListener;
149  template <class T>
150  class SubclassIdentifier;
151  class TclBind;
152  struct TclInterpreterBundle;
153  class TclThreadManager;
154  class Template;
155  class Tickable;
156  class XMLFile;
157  class XMLNameListener;
158  template <class T, class O>
159  class XMLPortClassObjectContainer;
160  template <class T>
161  class XMLPortClassParamContainer;
162  class XMLPortObjectContainer;
163  class XMLPortParamContainer;
164
165  // game states
166  class GameStateBase;
167  template <class ParentType>
168  class GameState;
169  class RootGameState;
170
171  // input
172  class BaseCommand;
173  class BufferedParamCommand;
174  class Button;
175  class CalibratorCallback;
176  class ExtendedInputState;
177  class HalfAxis;
178  class InputBuffer;
179  class InputManager;
180  class InputState;
181  class JoyStickHandler;
182  class MouseHandler;
183  class KeyBinder;
184  class KeyDetector;
185  class KeyHandler;
186  class ParamCommand;
187  class SimpleCommand;
188  class SimpleInputState;
189}
190
191#endif /* _CorePrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.