blob: d8a0304bf3c66010c0cf56883fe816880dfd81ff (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#pragma once
#include "Utils/IO/DataStream.hpp"
#include "Utils/UUID.hpp"
#include <cstddef>
#include <cstdint>
#include <iterator>
namespace DataStreamAdapters {
struct Uuid
{
static void ReadFromDataStream(InputDataStream& s, uuids::uuid& uuid)
{
uint8_t buffer[16];
s.ReadBytes(16, buffer);
uuid = uuids::uuid(gsl::span<uint8_t, 16>{ buffer });
}
static void WriteToDataStream(OutputDataStream& s, const uuids::uuid& uuid)
{
auto gslSpan = uuid.as_bytes();
s.WriteBytes(gslSpan.size(), gslSpan.data());
}
};
} // namespace DataStreamAdapters
|