ReUseX
0.0.5
3D Point Cloud Processing for Building Reuse
Toggle main menu visibility
Loading...
Searching...
No Matches
materialepas_enums.hpp
Go to the documentation of this file.
1
// SPDX-FileCopyrightText: 2025 Povl Filip Sonne-Frederiksen
2
//
3
// SPDX-License-Identifier: GPL-3.0-or-later
4
5
#pragma once
6
7
#include <optional>
8
#include <string_view>
9
#include <vector>
10
11
namespace
reusex::core
{
12
19
enum class
Material
{
22
natural_stone
,
25
lime_mortar
,
28
concrete
,
31
terrazzo
,
34
cement_mortar
,
37
aerated_concrete
,
40
lightweight_clinker_concrete
,
43
plaster
,
46
brick
,
49
glazed_tile
,
52
metal_general
,
55
iron
,
58
steel
,
61
stainless_steel
,
64
aluminum
,
67
copper
,
70
zinc
,
73
lead
,
76
construction_wood
,
79
wood_unclassified
,
82
precious_wood
,
85
laminated_wood
,
88
veneer
,
91
wood_fibers
,
94
wood_fiber_boards
,
97
wood_shavings
,
100
chipboards
,
103
paper
,
106
corrugated_cardboard
,
109
impregnated_cardboard
,
112
wood_concrete_cement_fibers
,
115
mineral_wool
,
118
asphalt
,
121
fibers
,
124
lining_paper
,
127
linoleum
,
130
rubber
,
133
plastic
,
136
foam_plastic
,
139
glass
,
142
natural_filling_aggregate
,
145
painting_supplies
,
148
other
,
149
};
150
156
enum class
TriState
{
159
yes
,
162
no
,
165
unknown
,
166
};
167
171
enum class
EmissionQuantityType
{
174
exact
,
177
minimum
,
180
maximum
,
183
interval
,
184
};
185
189
enum class
SubstanceContentMethod
{
192
assumed
,
195
measured_surface
,
198
measured_material
,
199
};
200
204
enum class
TransactionType
{
207
document
,
210
property
,
211
};
212
213
// ---------------------------------------------------------------------------
214
// String conversion declarations
215
// ---------------------------------------------------------------------------
216
218
[[nodiscard]]
auto
to_string
(
Material
value) -> std::string_view;
219
223
[[nodiscard]]
auto
material_from_string
(std::string_view str)
224
-> std::optional<Material>;
225
227
[[nodiscard]]
auto
material_names
() -> std::vector<std::string_view>;
228
230
[[nodiscard]]
auto
to_string
(
TriState
value) -> std::string_view;
231
233
[[nodiscard]]
auto
tri_state_from_string
(std::string_view str)
234
-> std::optional<TriState>;
235
237
[[nodiscard]]
auto
to_string
(
EmissionQuantityType
value) -> std::string_view;
238
240
[[nodiscard]]
auto
emission_quantity_type_from_string
(std::string_view str)
241
-> std::optional<EmissionQuantityType>;
242
244
[[nodiscard]]
auto
to_string
(
SubstanceContentMethod
value) -> std::string_view;
245
247
[[nodiscard]]
auto
substance_content_method_from_string
(std::string_view str)
248
-> std::optional<SubstanceContentMethod>;
249
251
[[nodiscard]]
auto
to_string
(
TransactionType
value) -> std::string_view;
252
254
[[nodiscard]]
auto
transaction_type_from_string
(std::string_view str)
255
-> std::optional<TransactionType>;
256
257
}
// namespace reusex::core
reusex::core
Wire form of one stored report PDF version — the ReportPdfVersion schema in ruxd's API contract (docs...
Definition
component_record.hpp:12
reusex::core::Material
Material
Material types from the Danish material passport standard (v1.0).
Definition
materialepas_enums.hpp:19
reusex::core::Material::concrete
@ concrete
Concrete.
Definition
materialepas_enums.hpp:28
reusex::core::Material::stainless_steel
@ stainless_steel
Stainless steel.
Definition
materialepas_enums.hpp:61
reusex::core::Material::metal_general
@ metal_general
Metal (general).
Definition
materialepas_enums.hpp:52
reusex::core::Material::impregnated_cardboard
@ impregnated_cardboard
Impregnated cardboard.
Definition
materialepas_enums.hpp:109
reusex::core::Material::veneer
@ veneer
Veneer.
Definition
materialepas_enums.hpp:88
reusex::core::Material::lead
@ lead
Lead.
Definition
materialepas_enums.hpp:73
reusex::core::Material::zinc
@ zinc
Zinc.
Definition
materialepas_enums.hpp:70
reusex::core::Material::lime_mortar
@ lime_mortar
Lime mortar.
Definition
materialepas_enums.hpp:25
reusex::core::Material::natural_stone
@ natural_stone
Natural stone.
Definition
materialepas_enums.hpp:22
reusex::core::Material::glass
@ glass
Glass.
Definition
materialepas_enums.hpp:139
reusex::core::Material::construction_wood
@ construction_wood
Construction wood.
Definition
materialepas_enums.hpp:76
reusex::core::Material::wood_fiber_boards
@ wood_fiber_boards
Wood fiber boards.
Definition
materialepas_enums.hpp:94
reusex::core::Material::painting_supplies
@ painting_supplies
Painting supplies.
Definition
materialepas_enums.hpp:145
reusex::core::Material::steel
@ steel
Steel.
Definition
materialepas_enums.hpp:58
reusex::core::Material::plastic
@ plastic
Plastic.
Definition
materialepas_enums.hpp:133
reusex::core::Material::fibers
@ fibers
Fibers.
Definition
materialepas_enums.hpp:121
reusex::core::Material::glazed_tile
@ glazed_tile
Glazed tile.
Definition
materialepas_enums.hpp:49
reusex::core::Material::lining_paper
@ lining_paper
Lining paper.
Definition
materialepas_enums.hpp:124
reusex::core::Material::chipboards
@ chipboards
Chipboards.
Definition
materialepas_enums.hpp:100
reusex::core::Material::aerated_concrete
@ aerated_concrete
Aerated concrete.
Definition
materialepas_enums.hpp:37
reusex::core::Material::plaster
@ plaster
Plaster.
Definition
materialepas_enums.hpp:43
reusex::core::Material::asphalt
@ asphalt
Asphalt.
Definition
materialepas_enums.hpp:118
reusex::core::Material::other
@ other
Other.
Definition
materialepas_enums.hpp:148
reusex::core::Material::brick
@ brick
Brick.
Definition
materialepas_enums.hpp:46
reusex::core::Material::paper
@ paper
Paper.
Definition
materialepas_enums.hpp:103
reusex::core::Material::precious_wood
@ precious_wood
Precious wood.
Definition
materialepas_enums.hpp:82
reusex::core::Material::laminated_wood
@ laminated_wood
Laminated wood.
Definition
materialepas_enums.hpp:85
reusex::core::Material::wood_unclassified
@ wood_unclassified
Wood (unclassified).
Definition
materialepas_enums.hpp:79
reusex::core::Material::rubber
@ rubber
Rubber.
Definition
materialepas_enums.hpp:130
reusex::core::Material::wood_concrete_cement_fibers
@ wood_concrete_cement_fibers
Wood concrete / cement fibers.
Definition
materialepas_enums.hpp:112
reusex::core::Material::wood_fibers
@ wood_fibers
Wood fibers.
Definition
materialepas_enums.hpp:91
reusex::core::Material::mineral_wool
@ mineral_wool
Mineral wool.
Definition
materialepas_enums.hpp:115
reusex::core::Material::linoleum
@ linoleum
Linoleum.
Definition
materialepas_enums.hpp:127
reusex::core::Material::aluminum
@ aluminum
Aluminum.
Definition
materialepas_enums.hpp:64
reusex::core::Material::corrugated_cardboard
@ corrugated_cardboard
Corrugated cardboard.
Definition
materialepas_enums.hpp:106
reusex::core::Material::iron
@ iron
Iron.
Definition
materialepas_enums.hpp:55
reusex::core::Material::foam_plastic
@ foam_plastic
Foam plastic.
Definition
materialepas_enums.hpp:136
reusex::core::Material::natural_filling_aggregate
@ natural_filling_aggregate
Natural filling / aggregate.
Definition
materialepas_enums.hpp:142
reusex::core::Material::terrazzo
@ terrazzo
Terrazzo.
Definition
materialepas_enums.hpp:31
reusex::core::Material::cement_mortar
@ cement_mortar
Cement mortar.
Definition
materialepas_enums.hpp:34
reusex::core::Material::wood_shavings
@ wood_shavings
Wood shavings.
Definition
materialepas_enums.hpp:97
reusex::core::Material::lightweight_clinker_concrete
@ lightweight_clinker_concrete
Lightweight clinker concrete.
Definition
materialepas_enums.hpp:40
reusex::core::Material::copper
@ copper
Copper.
Definition
materialepas_enums.hpp:67
reusex::core::substance_content_method_from_string
auto substance_content_method_from_string(std::string_view str) -> std::optional< SubstanceContentMethod >
Parse a SubstanceContentMethod from its string identifier.
reusex::core::to_string
auto to_string(Material value) -> std::string_view
Convert Material enum to its string identifier.
reusex::core::emission_quantity_type_from_string
auto emission_quantity_type_from_string(std::string_view str) -> std::optional< EmissionQuantityType >
Parse an EmissionQuantityType from its string identifier.
reusex::core::transaction_type_from_string
auto transaction_type_from_string(std::string_view str) -> std::optional< TransactionType >
Parse a TransactionType from its string identifier.
reusex::core::EmissionQuantityType
EmissionQuantityType
Emission quantity type.
Definition
materialepas_enums.hpp:171
reusex::core::EmissionQuantityType::exact
@ exact
Exact measured value.
Definition
materialepas_enums.hpp:174
reusex::core::EmissionQuantityType::maximum
@ maximum
Maximum value.
Definition
materialepas_enums.hpp:180
reusex::core::EmissionQuantityType::interval
@ interval
Interval (use lower/upper interval fields).
Definition
materialepas_enums.hpp:183
reusex::core::EmissionQuantityType::minimum
@ minimum
Minimum value.
Definition
materialepas_enums.hpp:177
reusex::core::material_from_string
auto material_from_string(std::string_view str) -> std::optional< Material >
Parse a Material from its string identifier.
reusex::core::TriState
TriState
Tri-state value for Yes/No/Unknown fields.
Definition
materialepas_enums.hpp:156
reusex::core::TriState::no
@ no
No / false.
Definition
materialepas_enums.hpp:162
reusex::core::TriState::yes
@ yes
Yes / true.
Definition
materialepas_enums.hpp:159
reusex::core::TriState::unknown
@ unknown
Unknown / not determined.
Definition
materialepas_enums.hpp:165
reusex::core::material_names
auto material_names() -> std::vector< std::string_view >
Every Material string identifier, in enum order.
reusex::core::TransactionType
TransactionType
Transaction log entry type.
Definition
materialepas_enums.hpp:204
reusex::core::TransactionType::property
@ property
Change to a property value.
Definition
materialepas_enums.hpp:210
reusex::core::TransactionType::document
@ document
Change to the document itself (metadata).
Definition
materialepas_enums.hpp:207
reusex::core::tri_state_from_string
auto tri_state_from_string(std::string_view str) -> std::optional< TriState >
Parse a TriState from its string identifier.
reusex::core::SubstanceContentMethod
SubstanceContentMethod
Method used to determine substance content.
Definition
materialepas_enums.hpp:189
reusex::core::SubstanceContentMethod::measured_surface
@ measured_surface
Measured on the surface of the material.
Definition
materialepas_enums.hpp:195
reusex::core::SubstanceContentMethod::assumed
@ assumed
Assumed based on knowledge or documentation.
Definition
materialepas_enums.hpp:192
reusex::core::SubstanceContentMethod::measured_material
@ measured_material
Measured in the material itself.
Definition
materialepas_enums.hpp:198
libs
reusex
include
core
materialepas_enums.hpp
Generated by
1.18.0