Horizon
Loading...
Searching...
No Matches
picture.hpp
1#pragma once
2#include "util/uuid.hpp"
3#include "util/placement.hpp"
4#include "nlohmann/json_fwd.hpp"
5#include "util/picture_data.hpp"
6
7namespace horizon {
8using json = nlohmann::json;
9
10class Picture {
11public:
12 Picture(const UUID &uu, const json &j);
13 Picture(const UUID &uu);
14
15 UUID uuid;
16 Placement placement;
17 bool on_top = false;
18 float opacity = 1;
19
20 uint64_t px_size = 1;
21 std::shared_ptr<const PictureData> data;
22 UUID data_uuid;
23
24 json serialize() const;
25};
26
27} // namespace horizon
Definition picture.hpp:10
Definition placement.hpp:8
This class encapsulates a UUID and allows it to be uses as a value type.
Definition uuid.hpp:16
a class to store JSON values
Definition json.hpp:177
basic_json<> json
default JSON class
Definition json_fwd.hpp:62