133#define getpid() _getpid()
134#define srandom(seed) srand(seed)
135#define random() rand()
138#include <sys/socket.h>
140#if defined(R__LINUX) && !defined(R__WINGCC)
141#include <sys/sysinfo.h>
144#include <netinet/in.h>
168 using namespace std::chrono;
169 system_clock::time_point
today = system_clock::now();
208 if (
t1->high <
t2->high)
return -1;
209 if (
t1->high >
t2->high)
return 1;
210 if (
t1->low <
t2->low)
return -1;
211 if (
t1->low >
t2->low)
return 1;
229 sscanf(uuid,
"%8lx-%4x-%4x-%2x%2x-%2x%2x%2x%2x%2x%2x",
235 &node[0], &node[1], &node[2], &node[3], &node[4], &node[5]);
267 Error(
"TUUID",
"null string not allowed");
284 for (
Int_t i = 0; i < 6; i++)
300 for (
Int_t i = 0; i < 6; i++)
316 for (
UInt_t i = 0; i < 6; i++) {
403 (
unsigned __int64) (1000*1000*10)
404 * (
unsigned __int64) (60 * 60 * 24)
405 * (
unsigned __int64) (17+30+31+365*18+5);
416 0x01B21DD213814000LL;
442 if (!
ifa->ifa_addr) {
484 sscanf(
adapter->IpAddressList.IpAddress.String,
"%d.%d.%d.%d",
486 adr = (
a << 24) | (
b << 16) | (
c << 8) |
d;
540#if defined(R__LINUX) && !defined(R__WINGCC)
549#if defined(R__LINUX) && !defined(R__WINGCC)
573 static char uuid[40];
575 snprintf(uuid,40,
"%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x",
597 c0 += *
c++;
c1 += c0;
598 c0 += *
c++;
c1 += c0;
599 c0 += *
c++;
c1 += c0;
600 c0 += *
c++;
c1 += c0;
602 c0 += *
c++;
c1 += c0;
603 c0 += *
c++;
c1 += c0;
604 c0 += *
c++;
c1 += c0;
605 c0 += *
c++;
c1 += c0;
607 c0 += *
c++;
c1 += c0;
608 c0 += *
c++;
c1 += c0;
609 c0 += *
c++;
c1 += c0;
610 c0 += *
c++;
c1 += c0;
612 c0 += *
c++;
c1 += c0;
613 c0 += *
c++;
c1 += c0;
614 c0 += *
c++;
c1 += c0;
615 c0 += *
c++;
c1 += c0;
638#define CHECK(f1, f2) if (f1 != f2) return f1 < f2 ? -1 : 1;
644 for (
int i = 0; i < 6; i++) {
645 if (
fNode[i] <
u.fNode[i])
647 if (
fNode[i] >
u.fNode[i])
707 Error(
"SetUUID",
"null string not allowed");
void frombuf(char *&buf, Bool_t *x)
void tobuf(char *&buf, Bool_t x)
unsigned long long ULong64_t
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
void Error(const char *location, const char *msgfmt,...)
Use this function in case an error occurred.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
R__EXTERN TVirtualMutex * gROOTMutex
void Streamer(TBuffer &) override
R__EXTERN TSystem * gSystem
TBuffer & operator<<(TBuffer &buf, const TUUID &uuid)
Input operator. Delegate to Streamer.
#define R__LOCKGUARD(mutex)
Buffer base class used for serializing objects.
This class stores the date and time with a precision of one second in an unsigned 32 bit word (950130...
This class represents an Internet Protocol (IP) address.
This code implements the MD5 message-digest algorithm.
virtual int GetPid()
Get process id.
virtual TTime Now()
Get current time in milliseconds since 0:00 Jan 1 1995.
This class defines a UUID (Universally Unique IDentifier), also known as GUIDs (Globally Unique IDent...
UChar_t fClockSeqHiAndReserved
void GetCurrentTime(uuid_time_t *timestamp)
Get current time as 60 bit 100ns ticks since whenever.
static constexpr Version_t Class_Version()
Int_t CmpTime(uuid_time_t *t1, uuid_time_t *t2)
Compare two time values.
void GetSystemTime(uuid_time_t *timestamp)
Get system time with 100ns precision. Time is since Oct 15, 1582.
virtual ~TUUID()
delete this TUUID
void ReadBuffer(char *&buffer)
Stream UUID from input buffer.
void SetFromString(const char *uuid_str)
Set this UUID to the value specified in uuid ((which must be in TUUID::AsString() format).
void Format(UShort_t clockseq, uuid_time_t ts)
Make a UUID from timestamp, clockseq and node id.
TDatime GetTime() const
Get time from UUID.
UInt_t fTimeLow
index in the list of UUIDs in TProcessUUID
const char * AsString() const
Return UUID as string. Copy string immediately since it will be reused.
void GetUUID(UChar_t uuid[16]) const
Return uuid in specified buffer (16 byte = 128 bits).
TInetAddress GetHostAddress() const
Get address of host encoded in UUID.
void SetUUID(const char *uuid_str)
Set this UUID to the value specified in uuid ((which must be in TUUID::AsString() format).
UShort_t Hash() const
Compute 16-bit hash value of the UUID.
UShort_t fTimeHiAndVersion
void GetRandomInfo(UChar_t seed[16])
Get random info based on some machine parameters.
void Print() const
Print UUID.
Int_t Compare(const TUUID &u) const
Compare two UUIDs "lexically" and return.
void FillBuffer(char *&buffer)
Stream UUID into output buffer.
void GetNodeIdentifier()
Get node identifier.
void StreamerV1(TBuffer &b)
Stream UUID from input buffer.