#ifndef GATS_OBJECT_H #define GATS_OBJECT_H namespace Bu { class Stream; }; namespace Gats { enum Type { typeDictionary, typeList, typeString, typeInteger, typeFloat, typeBoolean }; /** * The baseclass for every type that can be stored in a packet. */ class Object { public: Object(); virtual ~Object(); virtual Type getType() const =0; virtual void write( Bu::Stream &rOut ) const=0; virtual void read( Bu::Stream &rIn, char cType )=0; static Object *read( Bu::Stream &rIn ); }; }; #endif