17 #ifndef UUIDGENERATOR_HPP_
18 #define UUIDGENERATOR_HPP_
22 #if defined(KAA_USE_EVENTS) || defined(KAA_USE_LOGGING)
26 #include <boost/uuid/uuid.hpp>
27 #include <boost/uuid/uuid_io.hpp>
28 #include <boost/uuid/name_generator.hpp>
29 #include <boost/uuid/random_generator.hpp>
35 static std::string generateUuid() {
36 boost::uuids::basic_random_generator<boost::mt19937> gen;
37 boost::uuids::uuid uuid = gen();
43 static std::int32_t generateRandomInt() {
44 boost::uuids::basic_random_generator<boost::mt19937> gen;
45 boost::uuids::uuid uuid = gen();
46 std::int32_t rand = (uuid.data[12] << 24) | (uuid.data[13] << 16)
47 | (uuid.data[14] << 8) | (uuid.data[15]);
51 static void generateUuid(std::string& uuid_s) {
52 boost::uuids::basic_random_generator<boost::mt19937> gen;
53 boost::uuids::uuid uuid = gen();
56 uuid_s.assign(ss.str());
59 static void generateUuid(std::string& uuid_s, std::string data) {
60 namespace buuids = boost::uuids;
62 buuids::name_generator generator(seed);
63 buuids::uuid uuid = generator(data);
67 uuid_s.assign(ss.str());