CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Guid.cc
Go to the documentation of this file.
2 // externals
3 #include "uuid/uuid.h"
4 //
5 #include <cstring>
6 #include <cstdio>
7 
8 static const char* fmt_Guid = "%08lX-%04hX-%04hX-%02hhX%02hhX-%02hhX%02hhX%02hhX%02hhX%02hhX%02hhX";
9 static const char* guid_null = "00000000-0000-0000-0000-000000000000";
10 
11 std::string ora::Guid::null(){
12  return guid_null;
13 }
14 
16  uuid_t me_;
17  ::uuid_generate_time(me_);
18  unsigned int* tmp = reinterpret_cast<unsigned int*>(me_);
19  Data1 = *tmp;
20  Data2 = *reinterpret_cast<unsigned short*>(me_+4);
21  Data3 = *reinterpret_cast<unsigned short*>(me_+6);
22  for (int i = 0; i < 8; ++i){
23  Data4[i]=me_[i+8];
24  }
25 }
26 
27 std::string ora::Guid::toString() const {
28 
29  char text[GUID_STRING_SIZE];
30  ::snprintf(text, GUID_STRING_SIZE, fmt_Guid,
31  Data1, Data2, Data3,
32  Data4[0], Data4[1], Data4[2], Data4[3],
33  Data4[4], Data4[5], Data4[6], Data4[7]);
34  return text;
35 }
36 
37 std::string ora::guidFromTime() {
38  Guid tmp;
39  tmp.fromTime();
40  return tmp.toString();
41 }
42 
43 
std::string toString() const
Definition: Guid.cc:27
#define GUID_STRING_SIZE
Definition: Guid.h:4
int i
Definition: DBlmapReader.cc:9
static std::string null()
Definition: Guid.cc:11
static const char * fmt_Guid
Definition: Guid.cc:8
void fromTime()
Definition: Guid.cc:15
tuple text
Definition: runonSM.py:42
Definition: Guid.h:10
std::vector< std::vector< double > > tmp
Definition: MVATrainer.cc:100
static const char * guid_null
Definition: Guid.cc:9
std::string guidFromTime()
Definition: Guid.cc:37