Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/presentation/src/core/CorePrereqs.h @ 2506

Last change on this file since 2506 was 2485, checked in by landauf, 15 years ago

Merged objecthierarchy2 into presentation branch

Couln't merge 2 lines in Gamestate.cc and a whole block of code in GSDedicated.cc (it seems like oli implemented in both branches something like a network-tick-limiter but with different approaches)

Not yet tested in network mode and with bots
The SpaceShips movement is also not yet fully adopted to the new physics (see Engine class)

  • Property svn:eol-style set to native
File size: 4.5 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//-----------------------------------------------------------------------
64namespace orxonox
65{
66  namespace XMLPort
67  {
68    enum Mode
69    {
70      LoadObject,
71      SaveObject,
72      ExpandObject
73    };
74  }
75
76  namespace KeybindMode
77  {
78    enum Enum
79    {
80      OnPress,
81      OnHold,
82      OnRelease,
83      None
84    };
85  };
86
87  typedef std::string LanguageEntryLabel;
88
89  class ArgumentCompleter;
90  class ArgumentCompletionListElement;
91  class BaseFactory;
92  class BaseMetaObjectListElement;
93  class BaseObject;
94  template <class T>
95  class ClassFactory;
96  template <class T>
97  class ClassIdentifier;
98  class ClassTreeMask;
99  class ClassTreeMaskIterator;
100  class ClassTreeMaskNode;
101  class ClassTreeMaskObjectIterator;
102  class Clock;
103  class CommandEvaluation;
104  class CommandExecutor;
105  class CommandLine;
106  class CommandLineArgument;
107  class ConfigFile;
108  class ConfigFileEntry;
109  class ConfigFileEntryComment;
110  class ConfigFileEntryValue;
111  class ConfigFileManager;
112  class ConfigFileSection;
113  class ConfigValueContainer;
114  class ConsoleCommand;
115  class Core;
116  struct Event;
117  class EventContainer;
118  class Executor;
119  template <class T>
120  class ExecutorMember;
121  class ExecutorStatic;
122  class Factory;
123  class Functor;
124  template <class T>
125  class FunctorMember;
126  class FunctorStatic;
127  class Identifier;
128  class IRC;
129  template <class T>
130  class Iterator;
131  class IteratorBase;
132  class Language;
133  class LanguageEntry;
134  class Loader;
135  class LuaBind;
136  class MetaObjectList;
137  class MetaObjectListElement;
138  class Namespace;
139  class NamespaceNode;
140  template <class T>
141  class ObjectList;
142  class ObjectListBase;
143  class ObjectListBaseElement;
144  template <class T>
145  class ObjectListElement;
146  template <class T>
147  class ObjectListIterator;
148  class OrxonoxClass;
149  class Shell;
150  class ShellListener;
151  template <class T>
152  class SubclassIdentifier;
153  class TclBind;
154  struct TclInterpreterBundle;
155  class TclThreadManager;
156  class Template;
157  class Tickable;
158  class XMLFile;
159  class XMLNameListener;
160  template <class T, class O>
161  class XMLPortClassObjectContainer;
162  template <class T>
163  class XMLPortClassParamContainer;
164  class XMLPortObjectContainer;
165  class XMLPortParamContainer;
166
167  // game states
168  class GameStateBase;
169  template <class ParentType>
170  class GameState;
171  class RootGameState;
172
173  // input
174  class BaseCommand;
175  class BufferedParamCommand;
176  class Button;
177  class CalibratorCallback;
178  class ExtendedInputState;
179  class HalfAxis;
180  class InputBuffer;
181  class InputManager;
182  class InputState;
183  class JoyStickHandler;
184  class MouseHandler;
185  class KeyBinder;
186  class KeyDetector;
187  class KeyHandler;
188  class ParamCommand;
189  class SimpleCommand;
190  class SimpleInputState;
191}
192
193#endif /* _CorePrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.