Build fix: missing cstdint include in time.hpp on macOS
[lttng-tools.git] / src / common / uuid.hpp
index 431490ef28a2ed7c468ef5c9a7b7862e00cd5de9..586c2ad67c06fcdaac63c39759dee0e95ae8a7d6 100644 (file)
@@ -12,6 +12,8 @@
 #include <stdbool.h>
 #include <stdint.h>
 #include <inttypes.h>
+#include <array>
+#include <string>
 
 /*
  * Includes final \0.
@@ -36,9 +38,9 @@
        &(uuid)[6], &(uuid)[7], &(uuid)[8], &(uuid)[9], &(uuid)[10], &(uuid)[11], \
        &(uuid)[12], &(uuid)[13], &(uuid)[14], &(uuid)[15]
 
-typedef uint8_t lttng_uuid[LTTNG_UUID_LEN];
+using lttng_uuid = std::array<uint8_t, LTTNG_UUID_LEN>;
 
-int lttng_uuid_from_str(const char *str_in, lttng_uuid uuid_out);
+int lttng_uuid_from_str(const char *str_in, lttng_uuid& uuid_out);
 
 /*
  * Convert a UUID to a human-readable, NULL-terminated, string of the form
@@ -46,17 +48,21 @@ int lttng_uuid_from_str(const char *str_in, lttng_uuid uuid_out);
  *
  * Assumes uuid_str is at least LTTNG_UUID_STR_LEN byte long.
  */
-void lttng_uuid_to_str(const lttng_uuid uuid, char *uuid_str);
+void lttng_uuid_to_str(const lttng_uuid& uuid, char *uuid_str);
 
-bool lttng_uuid_is_equal(const lttng_uuid a, const lttng_uuid b);
+namespace lttng {
+namespace utils {
+std::string uuid_to_str(const lttng_uuid& uuid);
+} /* namespace utils */
+} /* namespace lttng */
 
-bool lttng_uuid_is_nil(const lttng_uuid uuid);
+bool lttng_uuid_is_equal(const lttng_uuid& a, const lttng_uuid& b);
 
-void lttng_uuid_copy(lttng_uuid dst, const lttng_uuid src);
+bool lttng_uuid_is_nil(const lttng_uuid& uuid);
 
 /*
  * Generate a random UUID according to RFC4122, section 4.4.
  */
-int lttng_uuid_generate(lttng_uuid uuid_out);
+int lttng_uuid_generate(lttng_uuid& uuid_out);
 
 #endif /* LTTNG_UUID_H */
This page took 0.024583 seconds and 4 git commands to generate.