Porytiles
Loading...
Searching...
No Matches
header_define_provider.cpp
Go to the documentation of this file.
2
3#include <filesystem>
4#include <string>
5#include <vector>
6
8
9namespace porytiles {
10
11// NOTE: DO NOT EDIT THIS FILE DIRECTLY. It is AUTO-GENERATED from config_schema.yaml.
12// To add new config values or make other changes, edit config_schema.yaml and regenerate via:
13//
14// uv run scripts/generate_config.py
15
16std::string HeaderDefineProvider::name() const
17{
18 return "HeaderDefineProvider";
19}
20
22HeaderDefineProvider::num_tiles_in_primary(ConfigScopeType /*type*/, const std::string & /*scope*/) const
23{
24 const auto header_path = project_root_ / header_relative_path_;
25 return search_header_define<std::size_t>(
26 parser_driver_,
27 format_,
28 header_path,
29 "NUM_TILES_IN_PRIMARY",
30 parse_size_t,
31 "NUM_TILES_IN_PRIMARY",
32 "NUM_TILES_IN_PRIMARY");
33}
34
36HeaderDefineProvider::num_tiles_total(ConfigScopeType /*type*/, const std::string & /*scope*/) const
37{
38 const auto header_path = project_root_ / header_relative_path_;
39 return search_header_define<std::size_t>(
40 parser_driver_, format_, header_path, "NUM_TILES_TOTAL", parse_size_t, "NUM_TILES_TOTAL", "NUM_TILES_TOTAL");
41}
42
44HeaderDefineProvider::num_metatiles_in_primary(ConfigScopeType /*type*/, const std::string & /*scope*/) const
45{
46 const auto header_path = project_root_ / header_relative_path_;
47 return search_header_define<std::size_t>(
48 parser_driver_,
49 format_,
50 header_path,
51 "NUM_METATILES_IN_PRIMARY",
52 parse_size_t,
53 "NUM_METATILES_IN_PRIMARY",
54 "NUM_METATILES_IN_PRIMARY");
55}
56
58HeaderDefineProvider::num_metatiles_total(ConfigScopeType /*type*/, const std::string & /*scope*/) const
59{
60 const auto header_path = project_root_ / header_relative_path_;
61 return search_header_define<std::size_t>(
62 parser_driver_,
63 format_,
64 header_path,
65 "NUM_METATILES_TOTAL",
66 parse_size_t,
67 "NUM_METATILES_TOTAL",
68 "NUM_METATILES_TOTAL");
69}
70
72HeaderDefineProvider::num_palettes_in_primary(ConfigScopeType /*type*/, const std::string & /*scope*/) const
73{
74 const auto header_path = project_root_ / header_relative_path_;
75 return search_header_define<std::size_t>(
76 parser_driver_,
77 format_,
78 header_path,
79 "NUM_PALS_IN_PRIMARY",
80 parse_size_t,
81 "NUM_PALS_IN_PRIMARY",
82 "NUM_PALS_IN_PRIMARY");
83}
84
86HeaderDefineProvider::num_palettes_total(ConfigScopeType /*type*/, const std::string & /*scope*/) const
87{
88 const auto header_path = project_root_ / header_relative_path_;
89 return search_header_define<std::size_t>(
90 parser_driver_, format_, header_path, "NUM_PALS_TOTAL", parse_size_t, "NUM_PALS_TOTAL", "NUM_PALS_TOTAL");
91}
92
94HeaderDefineProvider::max_map_data_size(ConfigScopeType /*type*/, const std::string & /*scope*/) const
95{
96 const auto header_path = project_root_ / header_relative_path_;
97 return search_header_define<std::size_t>(
98 parser_driver_,
99 format_,
100 header_path,
101 "MAX_MAP_DATA_SIZE",
102 parse_size_t,
103 "MAX_MAP_DATA_SIZE",
104 "MAX_MAP_DATA_SIZE");
105}
106
108HeaderDefineProvider::num_tiles_per_metatile(ConfigScopeType /*type*/, const std::string & /*scope*/) const
109{
110 const auto header_path = project_root_ / header_relative_path_;
111 return search_header_define<std::size_t>(
112 parser_driver_,
113 format_,
114 header_path,
115 "NUM_TILES_PER_METATILE",
116 parse_size_t,
117 "NUM_TILES_PER_METATILE",
118 "NUM_TILES_PER_METATILE");
119}
120
121} // namespace porytiles
LayerValue< std::size_t > num_palettes_in_primary(ConfigScopeType type, const std::string &scope) const override
LayerValue< std::size_t > num_tiles_in_primary(ConfigScopeType type, const std::string &scope) const override
LayerValue< std::size_t > num_metatiles_in_primary(ConfigScopeType type, const std::string &scope) const override
LayerValue< std::size_t > num_palettes_total(ConfigScopeType type, const std::string &scope) const override
LayerValue< std::size_t > num_metatiles_total(ConfigScopeType type, const std::string &scope) const override
LayerValue< std::size_t > num_tiles_total(ConfigScopeType type, const std::string &scope) const override
std::string name() const override
Gets the name of this config layer.
LayerValue< std::size_t > num_tiles_per_metatile(ConfigScopeType type, const std::string &scope) const override
LayerValue< std::size_t > max_map_data_size(ConfigScopeType type, const std::string &scope) const override
ConfigScopeType
Specifies the scope type for configuration value lookups.
A small container that holds an optional-wrapped value, validation state, and metadata about the valu...