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
RevLine 
[682]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/**
[871]29    @file  CorePrereq.h
30    @brief Contains all the necessary forward declarations for all classes, structs and enums.
31*/
[682]32
33#ifndef _CorePrereqs_H__
34#define _CorePrereqs_H__
[871]35
36#include <string>
[682]37
[708]38#include "orxonox/OrxonoxPlatform.h"
[682]39
[728]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
[682]58
[728]59
[682]60//-----------------------------------------------------------------------
[728]61// Forward declarations
62//-----------------------------------------------------------------------
[682]63class SignalHandler;
64
[728]65namespace orxonox
[902]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
[871]79  typedef std::string LanguageEntryLabel;
80
[682]81  class ArgReader;
82  class BaseFactory;
83  class BaseMetaObjectListElement;
84  template <class T>
85  class ClassFactory;
86  template <class T>
[871]87  class ClassIdentifier;
88  template <class T>
89  class ClassManager;
90  class ClassTreeMask;
91  class ClassTreeMaskIterator;
92  class ClassTreeMaskNode;
[947]93  class CommandExecutor;
[682]94  class ConfigValueContainer;
95  class DebugLevel;
[871]96  class Error;
97  class Executor;
[947]98  template <class T>
99  class ExecutorMember;
100  class ExecutorStatic;
[871]101  class Factory;
[947]102  class Functor;
103  template <class T>
104  class FunctorMember;
105  class FunctorStatic;
[871]106  class Identifier;
107  class IdentifierDistributor;
[682]108  template <class T>
[728]109  class Iterator;
110  class Language;
[737]111  class LanguageEntry;
[871]112  class Level;
113  class Loader;
[682]114  class MetaObjectList;
115  template <class T>
[877]116  class MetaObjectListElement;
[895]117  class Namespace;
118  class NamespaceNode;
[682]119  template <class T>
120  class ObjectList;
121  template <class T>
122  class ObjectListElement;
[728]123  class OrxonoxClass;
[684]124  class OutputHandler;
[682]125  template <class T>
[871]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;
[682]133}
134
135#endif /* _CorePrereqs_H__ */
Note: See TracBrowser for help on using the repository browser.