Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/core3/src/core/CorePrereqs.h @ 1606

Last change on this file since 1606 was 1606, checked in by rgrieder, 16 years ago
  • removed struct ObjectListBase::Export from the forward declarations (not allowed for nested classes, but were possible with the use of a template..)
  • moved Error from core to util (since Debug.h has moved too)
  • Property svn:eol-style set to native
File size: 4.1 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 "util/OrxonoxPlatform.h"
38
39#include <string>
40
41//-----------------------------------------------------------------------
42// Shared library settings
43//-----------------------------------------------------------------------
44#if (ORXONOX_PLATFORM == ORXONOX_PLATFORM_WIN32) && !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//-----------------------------------------------------------------------
64class SignalHandler;
65
66namespace orxonox
67{
68  namespace XMLPort
69  {
70    enum Mode
71    {
72      LoadObject,
73      SaveObject
74    };
75  }
76
77  namespace KeybindMode
78  {
79    enum Enum
80    {
81      OnPress,
82      OnHold,
83      OnRelease,
84      None
85    };
86  };
87
88  typedef std::string LanguageEntryLabel;
89
90  class ArgumentCompleter;
91  class ArgumentCompletionListElement;
92  class BaseFactory;
93  class BaseMetaObjectListElement;
94  class BaseObject;
95  template <class T>
96  class ClassFactory;
97  template <class T>
98  class ClassIdentifier;
99  class ClassTreeMask;
100  class ClassTreeMaskIterator;
101  class ClassTreeMaskNode;
102  class CommandEvaluation;
103  class CommandExecutor;
104  class ConfigFile;
105  class ConfigFileEntry;
106  class ConfigFileEntryComment;
107  class ConfigFileEntryValue;
108  class ConfigFileManager;
109  class ConfigFileSection;
110  class ConfigValueContainer;
111  class ConsoleCommand;
112  class Core;
113  class Executor;
114  template <class T>
115  class ExecutorMember;
116  class ExecutorStatic;
117  class Factory;
118  class Functor;
119  template <class T>
120  class FunctorMember;
121  class FunctorStatic;
122  class Identifier;
123  class IRC;
124  template <class T>
125  class Iterator;
126  class IteratorBase;
127  class Language;
128  class LanguageEntry;
129  class Level;
130  class Loader;
131  class MetaObjectList;
132  class MetaObjectListElement;
133  class Namespace;
134  class NamespaceNode;
135  template <class T>
136  class ObjectList;
137  class ObjectListBase;
138  class ObjectListBaseElement;
139  template <class T>
140  class ObjectListElement;
141  template <class T>
142  class ObjectListIterator;
143  class OrxonoxClass;
144  class Shell;
145  class ShellListener;
146  template <class T>
147  class SubclassIdentifier;
148  class TclBind;
149  struct TclInterpreterBundle;
150  class TclThreadManager;
151  class Tickable;
152  template <class T, class O>
153  class XMLPortClassObjectContainer;
154  template <class T>
155  class XMLPortClassParamContainer;
156  class XMLPortObjectContainer;
157  class XMLPortParamContainer;
158
159  // input
160  //class GUIInputHandler;
161  class BaseCommand;
162  class BufferedParamCommand;
163  class Button;
164  class CalibratorCallback;
165  class HalfAxis;
166  class InputBuffer;
167  class InputManager;
168  class JoyStickHandler;
169  class MouseHandler;
170  class KeyBinder;
171  class KeyDetector;
172  class KeyHandler;
173  class ParamCommand;
174  class SimpleCommand;
175}
176
177#endif /* _CorePrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.