Horizon
src
common
pdf_export_settings.hpp
1
#pragma once
2
#include "nlohmann/json_fwd.hpp"
3
#include "common.hpp"
4
#include <vector>
5
6
namespace
horizon {
7
using
json
=
nlohmann::json
;
8
9
class
PDFExportSettings
{
10
public
:
11
PDFExportSettings
(
const
json
&);
12
PDFExportSettings
();
13
json
serialize_schematic()
const
;
14
json
serialize_board()
const
;
15
16
std::string output_filename;
17
18
uint64_t
min_line_width = 0;
19
20
bool
reverse_layers =
false
;
21
bool
mirror =
false
;
22
bool
include_text =
true
;
23
24
class
Layer
{
25
public
:
26
Layer
(
int
l,
const
json
&j);
27
Layer
();
28
enum class
Mode { FILL, OUTLINE };
29
Layer
(
int
layer,
const
Color
&color, Mode mode,
bool
enabled);
30
json
serialize()
const
;
31
32
int
layer;
33
Color
color;
34
35
Mode mode = Mode::FILL;
36
bool
enabled =
true
;
37
};
38
39
std::map<int, Layer> layers;
40
};
41
}
// namespace horizon
horizon::PDFExportSettings::Layer
Definition:
pdf_export_settings.hpp:24
nlohmann::json
basic_json<> json
default JSON class
Definition:
json_fwd.hpp:61
libzip::uint64_t
zip_uint64_t uint64_t
zip_uint64_t_t typedef.
Definition:
zip.hpp:108
horizon::Color
Definition:
common.hpp:213
nlohmann::basic_json
a class to store JSON values
Definition:
json.hpp:161
horizon::PDFExportSettings
Definition:
pdf_export_settings.hpp:9
Generated by
1.8.16