Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/core2/src/orxonox/core/CorePrereqs.h @ 947

Last change on this file since 947 was 947, checked in by landauf, 16 years ago
  • added CommandExecutor
  • added ConsoleCommand macros
  • added getTypename to all MultiTypes
  • added 2 static maps to Identifier that contain all existing Identifiers with their names and lowercase names respectively.
  • added 2 maps to each Identifier that contain all console commands of the Identifier with their names and lowercase names respectively
  • using tolower(.) and toupper(.) instead of selfmade hacks in String.h
  • added AccessLevel enum
  • added some test-console-commands to OutputHandler, Ambient and SpaceShip
File size: 3.4 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  CorePrereq.h
30    @brief Contains all the necessary forward declarations for all classes, structs and enums.
31*/
32
33#ifndef _CorePrereqs_H__
34#define _CorePrereqs_H__
35
36#include <string>
37
38#include "orxonox/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 ArgReader;
82  class BaseFactory;
83  class BaseMetaObjectListElement;
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 CommandExecutor;
94  class ConfigValueContainer;
95  class DebugLevel;
96  class Error;
97  class Executor;
98  template <class T>
99  class ExecutorMember;
100  class ExecutorStatic;
101  class Factory;
102  class Functor;
103  template <class T>
104  class FunctorMember;
105  class FunctorStatic;
106  class Identifier;
107  class IdentifierDistributor;
108  template <class T>
109  class Iterator;
110  class Language;
111  class LanguageEntry;
112  class Level;
113  class Loader;
114  class MetaObjectList;
115  template <class T>
116  class MetaObjectListElement;
117  class Namespace;
118  class NamespaceNode;
119  template <class T>
120  class ObjectList;
121  template <class T>
122  class ObjectListElement;
123  class OrxonoxClass;
124  class OutputHandler;
125  template <class T>
126  class SubclassIdentifier;
127  template <class T, class O>
128  class XMLPortClassObjectContainer;
129  template <class T>
130  class XMLPortClassParamContainer;
131  class XMLPortObjectContainer;
132  class XMLPortParamContainer;
133}
134
135#endif /* _CorePrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.