#ifndef ROOT_TUUID
#define ROOT_TUUID
#ifdef WIN32
#undef GetCurrentTime
#endif
#ifndef ROOT_Rtypes
#include "Rtypes.h"
#endif
class TBuffer;
class TFile;
class TDirectory;
class TInetAddress;
class TDatime;
class TUUID {
protected:
UInt_t fUUIDIndex;
UInt_t fTimeLow;
UShort_t fTimeMid;
UShort_t fTimeHiAndVersion;
UChar_t fClockSeqHiAndReserved;
UChar_t fClockSeqLow;
UChar_t fNode[6];
struct uuid_time_t {
UInt_t high;
UInt_t low;
};
Int_t CmpTime(uuid_time_t *t1, uuid_time_t *t2);
void Format(UShort_t clockseq, uuid_time_t ts);
void GetNodeIdentifier();
void GetCurrentTime(uuid_time_t *timestamp);
void GetSystemTime(uuid_time_t *timestamp);
void GetRandomInfo(UChar_t seed[16]);
void SetFromString(const char *uuid_str);
public:
TUUID();
TUUID(const char *uuid_str);
virtual ~TUUID();
const char *AsString() const;
Int_t Compare(const TUUID &u) const;
UShort_t Hash() const;
void Print() const;
TInetAddress GetHostAddress() const;
TDatime GetTime() const;
void GetUUID(UChar_t uuid[16]) const;
void SetUUID(const char *uuid_str);
UInt_t GetUUIDNumber() const { return fUUIDIndex; }
void SetUUIDNumber(UInt_t index) { fUUIDIndex = index; }
void StreamerV1(TBuffer &b);
void FillBuffer(char *&buffer);
void ReadBuffer(char *&buffer);
Int_t Sizeof() const { return 18; }
ClassDef(TUUID,1)
};
inline TBuffer &operator>>(TBuffer &buf, TUUID &uuid)
{ uuid.Streamer(buf); return buf; }
inline TBuffer &operator<<(TBuffer &buf, const TUUID &uuid)
{ ((TUUID&)uuid).Streamer(buf); return buf; }
inline Bool_t operator==(const TUUID &u1, const TUUID &u2)
{ return (!u1.Compare(u2)) ? kTRUE : kFALSE; }
inline Bool_t operator!=(const TUUID &u1, const TUUID &u2)
{ return !(u1 == u2); }
#endif
Last change: Wed Jun 25 08:54:30 2008
Last generated: 2008-06-25 08:54
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.