Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

class.h File Reference

#include <zeitgeist/scriptserver/gcvalue.h>
#include <config.h>
#include <map>
#include <string>
#include <vector>
#include <list>
#include <salt/defines.h>
#include <salt/sharedlibrary.h>
#include "leaf.h"
#include "parameterlist.h"

Include dependency graph for class.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  zeitgeist

Classes

class  zeitgeist::Class
 This class is quite essential for the Zeitgeist Core. More...
class  zeitgeist::Class_Class
 this is the class object beloging to the class 'zeitgeistClass'. More...
class  zeitgeist::Class_Leaf
 declare the clss object for leaf. More...

Defines

#define CLASS(className)   Class_##className
#define DECLARE_CLASS(className)
#define DECLARE_ABSTRACTCLASS(className)
#define FUNCTION(className, functionName)
#define DEFINE_FUNCTION(functionName)   mFunctions[#functionName] = (TCmdProc) &functionName;
#define DEFINE_BASECLASS(baseClass)   mBaseClasses.push_back(#baseClass);
#define ZEITGEIST_EXPORT_BEGIN()
#define ZEITGEIST_EXPORT_EX(className, path)   classes.push_back(shared_ptr<Class>(new CLASS(className)));
#define ZEITGEIST_EXPORT(className)   ZEITGEIST_EXPORT_EX(className, "")
#define ZEITGEIST_EXPORT_END()   }}


Define Documentation

#define CLASS className   )     Class_##className
 

Definition at line 55 of file class.h.

Referenced by zeitgeist::Core::Construct(), zeitgeist::Core::Core(), zeitgeist::Leaf::FindChildSupportingClass(), kerosin::Kerosin::Kerosin(), zeitgeist::Leaf::ListChildrenSupportingClass(), and oxygen::Oxygen::Oxygen().

#define DECLARE_ABSTRACTCLASS className   ) 
 

Value:

class CLASS(className) : public zeitgeist::Class\
    {\
    public:\
        CLASS(className)() : zeitgeist::Class(#className) { DefineClass();  }\
    private:\
        void DefineClass();\
    };

Definition at line 71 of file class.h.

#define DECLARE_CLASS className   ) 
 

Value:

class CLASS(className) : public zeitgeist::Class\
    {\
    public:\
        CLASS(className)() : zeitgeist::Class(#className) { DefineClass(); }\
        zeitgeist::Object* CreateInstance() const\
        {\
            zeitgeist::Object *instance = new className();\
            return instance;\
        }\
    private:\
        void DefineClass();\
    };

Definition at line 57 of file class.h.

#define DEFINE_BASECLASS baseClass   )     mBaseClasses.push_back(#baseClass);
 

Definition at line 90 of file class.h.

Referenced by CLASS(), zeitgeist::Class_Node::DefineClass(), zeitgeist::Class_LogServer::DefineClass(), and zeitgeist::Class_Class::DefineClass().

#define DEFINE_FUNCTION functionName   )     mFunctions[#functionName] = (TCmdProc) &functionName;
 

Definition at line 87 of file class.h.

Referenced by CLASS(), zeitgeist::Class_LogServer::DefineClass(), and zeitgeist::Class_Leaf::DefineClass().

#define FUNCTION className,
functionName   ) 
 

Value:

static zeitgeist::GCValue functionName(className *obj, \
         __attribute__((unused)) const zeitgeist::ParameterList &in)

Definition at line 83 of file class.h.

#define ZEITGEIST_EXPORT className   )     ZEITGEIST_EXPORT_EX(className, "")
 

Definition at line 106 of file class.h.

 
#define ZEITGEIST_EXPORT_BEGIN  ) 
 

Value:

using namespace boost;\
    using namespace salt;\
    using namespace zeitgeist;\
    extern "C"{\
    SHARED_LIB_EXPORT void Zeitgeist_RegisterBundle(std::list <shared_ptr<Class> > &classes){

Definition at line 96 of file class.h.

 
#define ZEITGEIST_EXPORT_END  )     }}
 

Definition at line 108 of file class.h.

#define ZEITGEIST_EXPORT_EX className,
path   )     classes.push_back(shared_ptr<Class>(new CLASS(className)));
 

Definition at line 103 of file class.h.


Generated on Thu Apr 6 15:27:03 2006 for rcssserver3d by  doxygen 1.4.4