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
10
namespace
reusex::core
{
11
18
enum class
Material
{
21
natural_stone
,
24
lime_mortar
,
27
concrete
,
30
terrazzo
,
33
cement_mortar
,
36
aerated_concrete
,
39
lightweight_clinker_concrete
,
42
plaster
,
45
brick
,
48
glazed_tile
,
51
metal_general
,
54
iron
,
57
steel
,
60
stainless_steel
,
63
aluminum
,
66
copper
,
69
zinc
,
72
lead
,
75
construction_wood
,
78
wood_unclassified
,
81
precious_wood
,
84
laminated_wood
,
87
veneer
,
90
wood_fibers
,
93
wood_fiber_boards
,
96
wood_shavings
,
99
chipboards
,
102
paper
,
105
corrugated_cardboard
,
108
impregnated_cardboard
,
111
wood_concrete_cement_fibers
,
114
mineral_wool
,
117
asphalt
,
120
fibers
,
123
lining_paper
,
126
linoleum
,
129
rubber
,
132
plastic
,
135
foam_plastic
,
138
glass
,
141
natural_filling_aggregate
,
144
painting_supplies
,
147
other
,
148
};
149
155
enum class
TriState
{
158
yes
,
161
no
,
164
unknown
,
165
};
166
170
enum class
EmissionQuantityType
{
173
exact
,
176
minimum
,
179
maximum
,
182
interval
,
183
};
184
188
enum class
SubstanceContentMethod
{
191
assumed
,
194
measured_surface
,
197
measured_material
,
198
};
199
203
enum class
TransactionType
{
206
document
,
209
property
,
210
};
211
212
// ---------------------------------------------------------------------------
213
// String conversion declarations
214
// ---------------------------------------------------------------------------
215
217
[[nodiscard]]
auto
to_string
(
Material
value) -> std::string_view;
218
222
[[nodiscard]]
auto
material_from_string
(std::string_view str)
223
-> std::optional<Material>;
224
226
[[nodiscard]]
auto
to_string
(
TriState
value) -> std::string_view;
227
229
[[nodiscard]]
auto
tri_state_from_string
(std::string_view str)
230
-> std::optional<TriState>;
231
233
[[nodiscard]]
auto
to_string
(
EmissionQuantityType
value) -> std::string_view;
234
236
[[nodiscard]]
auto
emission_quantity_type_from_string
(std::string_view str)
237
-> std::optional<EmissionQuantityType>;
238
240
[[nodiscard]]
auto
to_string
(
SubstanceContentMethod
value) -> std::string_view;
241
243
[[nodiscard]]
auto
substance_content_method_from_string
(std::string_view str)
244
-> std::optional<SubstanceContentMethod>;
245
247
[[nodiscard]]
auto
to_string
(
TransactionType
value) -> std::string_view;
248
250
[[nodiscard]]
auto
transaction_type_from_string
(std::string_view str)
251
-> std::optional<TransactionType>;
252
253
}
// namespace reusex::core
reusex::core
Definition
filter_expression.hpp:17
reusex::core::Material
Material
Material types from the Danish material passport standard (v1.0).
Definition
materialepas_enums.hpp:18
reusex::core::Material::concrete
@ concrete
Concrete.
Definition
materialepas_enums.hpp:27
reusex::core::Material::stainless_steel
@ stainless_steel
Stainless steel.
Definition
materialepas_enums.hpp:60
reusex::core::Material::metal_general
@ metal_general
Metal (general).
Definition
materialepas_enums.hpp:51
reusex::core::Material::impregnated_cardboard
@ impregnated_cardboard
Impregnated cardboard.
Definition
materialepas_enums.hpp:108
reusex::core::Material::veneer
@ veneer
Veneer.
Definition
materialepas_enums.hpp:87
reusex::core::Material::lead
@ lead
Lead.
Definition
materialepas_enums.hpp:72
reusex::core::Material::zinc
@ zinc
Zinc.
Definition
materialepas_enums.hpp:69
reusex::core::Material::lime_mortar
@ lime_mortar
Lime mortar.
Definition
materialepas_enums.hpp:24
reusex::core::Material::natural_stone
@ natural_stone
Natural stone.
Definition
materialepas_enums.hpp:21
reusex::core::Material::glass
@ glass
Glass.
Definition
materialepas_enums.hpp:138
reusex::core::Material::construction_wood
@ construction_wood
Construction wood.
Definition
materialepas_enums.hpp:75
reusex::core::Material::wood_fiber_boards
@ wood_fiber_boards
Wood fiber boards.
Definition
materialepas_enums.hpp:93
reusex::core::Material::painting_supplies
@ painting_supplies
Painting supplies.
Definition
materialepas_enums.hpp:144
reusex::core::Material::steel
@ steel
Steel.
Definition
materialepas_enums.hpp:57
reusex::core::Material::plastic
@ plastic
Plastic.
Definition
materialepas_enums.hpp:132
reusex::core::Material::fibers
@ fibers
Fibers.
Definition
materialepas_enums.hpp:120
reusex::core::Material::glazed_tile
@ glazed_tile
Glazed tile.
Definition
materialepas_enums.hpp:48
reusex::core::Material::lining_paper
@ lining_paper
Lining paper.
Definition
materialepas_enums.hpp:123
reusex::core::Material::chipboards
@ chipboards
Chipboards.
Definition
materialepas_enums.hpp:99
reusex::core::Material::aerated_concrete
@ aerated_concrete
Aerated concrete.
Definition
materialepas_enums.hpp:36
reusex::core::Material::plaster
@ plaster
Plaster.
Definition
materialepas_enums.hpp:42
reusex::core::Material::asphalt
@ asphalt
Asphalt.
Definition
materialepas_enums.hpp:117
reusex::core::Material::other
@ other
Other.
Definition
materialepas_enums.hpp:147
reusex::core::Material::brick
@ brick
Brick.
Definition
materialepas_enums.hpp:45
reusex::core::Material::paper
@ paper
Paper.
Definition
materialepas_enums.hpp:102
reusex::core::Material::precious_wood
@ precious_wood
Precious wood.
Definition
materialepas_enums.hpp:81
reusex::core::Material::laminated_wood
@ laminated_wood
Laminated wood.
Definition
materialepas_enums.hpp:84
reusex::core::Material::wood_unclassified
@ wood_unclassified
Wood (unclassified).
Definition
materialepas_enums.hpp:78
reusex::core::Material::rubber
@ rubber
Rubber.
Definition
materialepas_enums.hpp:129
reusex::core::Material::wood_concrete_cement_fibers
@ wood_concrete_cement_fibers
Wood concrete / cement fibers.
Definition
materialepas_enums.hpp:111
reusex::core::Material::wood_fibers
@ wood_fibers
Wood fibers.
Definition
materialepas_enums.hpp:90
reusex::core::Material::mineral_wool
@ mineral_wool
Mineral wool.
Definition
materialepas_enums.hpp:114
reusex::core::Material::linoleum
@ linoleum
Linoleum.
Definition
materialepas_enums.hpp:126
reusex::core::Material::aluminum
@ aluminum
Aluminum.
Definition
materialepas_enums.hpp:63
reusex::core::Material::corrugated_cardboard
@ corrugated_cardboard
Corrugated cardboard.
Definition
materialepas_enums.hpp:105
reusex::core::Material::iron
@ iron
Iron.
Definition
materialepas_enums.hpp:54
reusex::core::Material::foam_plastic
@ foam_plastic
Foam plastic.
Definition
materialepas_enums.hpp:135
reusex::core::Material::natural_filling_aggregate
@ natural_filling_aggregate
Natural filling / aggregate.
Definition
materialepas_enums.hpp:141
reusex::core::Material::terrazzo
@ terrazzo
Terrazzo.
Definition
materialepas_enums.hpp:30
reusex::core::Material::cement_mortar
@ cement_mortar
Cement mortar.
Definition
materialepas_enums.hpp:33
reusex::core::Material::wood_shavings
@ wood_shavings
Wood shavings.
Definition
materialepas_enums.hpp:96
reusex::core::Material::lightweight_clinker_concrete
@ lightweight_clinker_concrete
Lightweight clinker concrete.
Definition
materialepas_enums.hpp:39
reusex::core::Material::copper
@ copper
Copper.
Definition
materialepas_enums.hpp:66
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:170
reusex::core::EmissionQuantityType::exact
@ exact
Exact measured value.
Definition
materialepas_enums.hpp:173
reusex::core::EmissionQuantityType::maximum
@ maximum
Maximum value.
Definition
materialepas_enums.hpp:179
reusex::core::EmissionQuantityType::interval
@ interval
Interval (use lower/upper interval fields).
Definition
materialepas_enums.hpp:182
reusex::core::EmissionQuantityType::minimum
@ minimum
Minimum value.
Definition
materialepas_enums.hpp:176
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:155
reusex::core::TriState::no
@ no
No / false.
Definition
materialepas_enums.hpp:161
reusex::core::TriState::yes
@ yes
Yes / true.
Definition
materialepas_enums.hpp:158
reusex::core::TriState::unknown
@ unknown
Unknown / not determined.
Definition
materialepas_enums.hpp:164
reusex::core::TransactionType
TransactionType
Transaction log entry type.
Definition
materialepas_enums.hpp:203
reusex::core::TransactionType::property
@ property
Change to a property value.
Definition
materialepas_enums.hpp:209
reusex::core::TransactionType::document
@ document
Change to the document itself (metadata).
Definition
materialepas_enums.hpp:206
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:188
reusex::core::SubstanceContentMethod::measured_surface
@ measured_surface
Measured on the surface of the material.
Definition
materialepas_enums.hpp:194
reusex::core::SubstanceContentMethod::assumed
@ assumed
Assumed based on knowledge or documentation.
Definition
materialepas_enums.hpp:191
reusex::core::SubstanceContentMethod::measured_material
@ measured_material
Measured in the material itself.
Definition
materialepas_enums.hpp:197
libs
reusex
include
core
materialepas_enums.hpp
Generated by
1.17.0