00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00031
00032 #ifndef _QAVATAR_H
00033 #define _QAVATAR_H
00034
00035 #include <stdio.h>
00036
00037 class QUANTAts_mutex_c;
00038
00058 class QAvatar
00059 {
00060 public:
00061
00063 QAvatar(const long&);
00064
00066 QAvatar(const long&, const size_t&, const size_t&, const size_t&);
00067
00069 virtual ~QAvatar();
00070
00072 virtual void lock();
00073
00075 virtual void unlock();
00076
00078 long getID();
00079
00080 char* getAuxData();
00081 size_t getAuxDataSize();
00082 char* getHelloData();
00083 size_t getHelloDataSize();
00084 char* getTrackerData();
00085 size_t getTrackerDataSize();
00086
00088 void setAuxData(const char*, const size_t&);
00089
00091 void setHelloData(const char*, const size_t&);
00092
00094 void setTrackerData(const char*, const size_t&);
00095
00097 double getLastUpdateTime();
00098
00100 void markUpdateTime();
00101
00102 protected:
00103
00105 const long m_id;
00106
00108 double m_lastUpdateTime;
00109
00111 QUANTAts_mutex_c* m_mutex;
00112
00115
00117 char* m_auxData;
00119 const size_t m_auxSize;
00120
00122 char* m_helloData;
00124 const size_t m_helloSize;
00125
00127 char* m_trackerData;
00129 const size_t m_trackerSize;
00130
00132 };
00133
00134 #endif