Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

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

Last change on this file since 3530 was 3530, checked in by chris, 19 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
Line 
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*/
7
8#ifndef _STDINCL_H
9#define _STDINCL_H
10               
11#define null 0   //!< null
12
13typedef unsigned char byte;
14
15// this includes the information from configure/makefiles
16#if HAVE_CONFIG_H
17#include <config.h> 
18#endif
19
20#ifdef __WIN32__
21#include <windows.h>
22#endif
23
24#include <assert.h>
25#include <stdlib.h>
26#include <string.h>
27
28#include "glincl.h"
29
30#include "error.h"
31#include "debug.h"
32
33// MATH //
34#include "vector.h"
35
36#include "tinyxml.h"
37
38#include "list.h"
39#include "list_template.h"
40#include "message_structures.h"
41#include "orxonox.h"
42#include "data_tank.h"
43#include "base_object.h"
44#include "factory.h"
45
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;
60
61#endif /* _STDINCL_H */
Note: See TracBrowser for help on using the repository browser.