MeVisLabToolboxReference
|
00001 //----------------------------------------------------------------------------- 00002 // **InsertLicense** code 00003 //----------------------------------------------------------------------------- 00005 00010 //----------------------------------------------------------------------------- 00011 00012 #ifndef CLASS_DCMTREE_UIDGENERATOR 00013 #define CLASS_DCMTREE_UIDGENERATOR 00014 00015 #include <string> 00016 00017 #include "DCMTree_ThreadSupport.h" 00018 00019 #include "DCMTree_Defines.h" 00020 00021 00022 namespace DCMTree_Utils 00023 { 00034 class DCMTREE_EXPORT UIDGenerator 00035 { 00036 public: 00041 static void initialize (std::string iso_root_uid,std::string systemtype,std::string softwaretype); 00042 00046 static std::string uid(); 00047 00051 static bool isInitialized(); 00052 00053 private: 00060 static std::string getMac(); 00061 00065 static unsigned long getProcID(); 00066 00071 static std::string getTimeStr(); 00072 00073 static thread_criticalsection _lock; 00074 static std::string _prefix; 00075 static bool _initialized; 00076 }; 00077 } 00078 00079 #endif 00080 00081