00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef __XVR2_OBJECT_H__
00015 #define __XVR2_OBJECT_H__
00016 #include<xvr2/xvr2config.h>
00017 #include<xvr2/DataTypes.h>
00018 #include<xvr2/__Destruct.h>
00019 #include<string>
00020 #include<ostream>
00021
00022 namespace xvr2{
00027 class Object{
00028 private:
00029 protected:
00030 std::string __cls_name;
00031 public:
00033 Object();
00037 virtual const char *getClassName();
00038 virtual ~Object();
00041 static void debugmsg(Object *obj, const char *msg, int linenumber = __LINE__, const char *srcfile = __FILE__);
00042 static void debugmsgln(Object *obj, const char *msg, int linenumber = __LINE__, const char *srcfile = __FILE__);
00043
00044 virtual std::string toString();
00045 friend std::ostream& operator<<(std::ostream& stream, const Object &s);
00046 };
00047
00048 }
00049 #endif