libdballe
9.11
dballe
core
core/values.h
1
#ifndef DBALLE_CORE_VALUES_H
2
#define DBALLE_CORE_VALUES_H
3
4
#include <dballe/fwd.h>
5
#include <wreport/var.h>
6
#include <vector>
7
8
namespace
dballe {
9
namespace
core {
10
namespace
value {
11
12
struct
Encoder
13
{
14
std::vector<uint8_t> buf;
15
16
Encoder();
17
void
append_uint16(uint16_t val);
18
void
append_uint32(uint32_t val);
19
void
append_cstring(
const
char
* val);
20
void
append(
const
wreport::Var
& var);
21
void
append_attributes(
const
wreport::Var
& var);
22
};
23
24
struct
Decoder
25
{
26
const
uint8_t* buf;
27
unsigned
size;
28
29
Decoder(
const
std::vector<uint8_t>& buf);
30
uint16_t decode_uint16();
31
uint32_t decode_uint32();
32
const
char
* decode_cstring();
33
std::unique_ptr<wreport::Var> decode_var();
34
38
static
void
decode_attrs
(
const
std::vector<uint8_t>& buf,
wreport::Var
& var);
39
};
40
41
}
42
}
43
}
44
45
#endif
wreport::Var
dballe::core::value::Decoder::decode_attrs
static void decode_attrs(const std::vector< uint8_t > &buf, wreport::Var &var)
Decode the attributes of var from a buffer.
Generated by
1.13.2