Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/branches/levelloader/src/defs/stdincl.h @ 3536

Last change on this file since 3536 was 3530, checked in by chris, 20 years ago

orxonox/branches/levelloader: Got the system to compile, the basic backbone now runs. What remains to be done is implementing all necessary functions to load all vital classes into a world

File size: 1.3 KB
RevLine 
[3193]1/*!
2  \file stdincl.h
3  \brief This file includes default headers that nearly every Class needs.
4 
5  no Class is defined here, but many headers to classes, and more general Headers like the openGL-header.
6*/
[1855]7
[3224]8#ifndef _STDINCL_H
9#define _STDINCL_H
[3530]10               
[3193]11#define null 0   //!< null
[1855]12
[3365]13typedef unsigned char byte;
14
[3204]15// this includes the information from configure/makefiles
16#if HAVE_CONFIG_H
17#include <config.h> 
18#endif
19
[2190]20#ifdef __WIN32__
21#include <windows.h>
[1855]22#endif
[2995]23
[3530]24#include <assert.h>
[3495]25#include <stdlib.h>
26#include <string.h>
27
[3433]28#include "glincl.h"
[2995]29
[3530]30#include "error.h"
31#include "debug.h"
[3495]32
[3433]33// MATH //
[2190]34#include "vector.h"
[3433]35
[3523]36#include "tinyxml.h"
37
[2190]38#include "list.h"
[2816]39#include "list_template.h"
[2190]40#include "message_structures.h"
41#include "orxonox.h"
[3365]42#include "data_tank.h"
43#include "base_object.h"
[3525]44#include "factory.h"
[2190]45
[3530]46#define CREATE_FACTORY(x) \
47                class x ## Factory : public Factory { \
48                 public:        \
49                  x ## Factory (){setNext( NULL); setClassname( #x ); initialize();} \
50                  ~x ## Factory () {}; \
51                 private: \
52                        BaseObject* fabricate( TiXmlElement* root) \
53                        { \
54                                if(!strcmp(root->Value(), getClassname())) return new  x ( root); \
55                                else if( getNext() != NULL) return getNext()->fabricate( root); \
56                                else return NULL; \
57                        } \
58                }; \
59                x ## Factory global_ ## x ## Factory;
[3433]60
[3224]61#endif /* _STDINCL_H */
Note: See TracBrowser for help on using the repository browser.