/******************************************************************************** * Copyright (C) 2017 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH * * * * This software is distributed under the terms of the * * GNU Lesser General Public Licence (LGPL) version 3, * * copied verbatim in the file "LICENSE" * ********************************************************************************/ #include // We have to force boost::uuids to rely on /dev/*random instead of getrandom(2) or getentropy(3) // otherwise on some systems we'd get boost::uuids::entropy_error #define BOOST_UUID_RANDOM_PROVIDER_FORCE_POSIX #include #include #include #include using namespace std; namespace fair::mq::tools { // generates UUID string string Uuid() { boost::uuids::random_generator gen; boost::uuids::uuid u = gen(); return boost::uuids::to_string(u); } // generates UUID and returns its hash size_t UuidHash() { boost::uuids::random_generator gen; boost::hash uuid_hasher; boost::uuids::uuid u = gen(); return uuid_hasher(u); } } // namespace fair::mq::tools