camcom
1.0.0-pre2
Loading...
Searching...
No Matches
parameterMetadata.hpp
Go to the documentation of this file.
1
8
9
#ifndef CAMCOM_COMMON_PARAMETER_METADATA_HPP
10
#define CAMCOM_COMMON_PARAMETER_METADATA_HPP
11
12
#include <optional>
13
#include <string>
14
#include <vector>
15
16
#include "
camcom/common/value.hpp
"
17
18
namespace
camcom::common
{
19
32
struct
ParameterMetadata
{
34
std::string
camera_name
;
35
37
std::optional<double>
min
;
38
40
std::optional<double>
max
;
41
43
std::optional<double>
increment
;
44
46
std::vector<std::string>
allowed
;
47
49
std::string
unit
;
50
52
std::string
description
;
53
55
bool
readable
{
true
};
56
58
bool
writable
{
true
};
59
61
std::optional<Value>
default_value
;
62
64
bool
HasData
()
const
{
65
return
!
camera_name
.empty() ||
min
.has_value() ||
max
.has_value() ||
66
increment
.has_value() || !
allowed
.empty() || !
unit
.empty() ||
67
!
description
.empty() ||
default_value
.has_value() ||
68
!
readable
|| !
writable
;
69
}
70
72
std::string
ToString
()
const
;
73
};
74
75
}
// namespace camcom::common
76
77
#endif
// CAMCOM_COMMON_PARAMETER_METADATA_HPP
camcom::common
Definition
adapterBase.cpp:18
camcom::common::ParameterMetadata
Parameter metadata containing constraints and descriptive information.
Definition
parameterMetadata.hpp:32
camcom::common::ParameterMetadata::description
std::string description
Human-readable description of the parameter.
Definition
parameterMetadata.hpp:52
camcom::common::ParameterMetadata::camera_name
std::string camera_name
Original camera-native parameter name (before mapping to generic name)
Definition
parameterMetadata.hpp:34
camcom::common::ParameterMetadata::unit
std::string unit
Unit of measurement (e.g., "microseconds", "Hz", "dB")
Definition
parameterMetadata.hpp:49
camcom::common::ParameterMetadata::min
std::optional< double > min
Minimum value (for numeric types)
Definition
parameterMetadata.hpp:37
camcom::common::ParameterMetadata::ToString
std::string ToString() const
Convert to string for debugging.
Definition
parameter.cpp:99
camcom::common::ParameterMetadata::max
std::optional< double > max
Maximum value (for numeric types)
Definition
parameterMetadata.hpp:40
camcom::common::ParameterMetadata::writable
bool writable
Whether the parameter can be written.
Definition
parameterMetadata.hpp:58
camcom::common::ParameterMetadata::increment
std::optional< double > increment
Increment/step size (for slider UI controls)
Definition
parameterMetadata.hpp:43
camcom::common::ParameterMetadata::default_value
std::optional< Value > default_value
Default value (if known)
Definition
parameterMetadata.hpp:61
camcom::common::ParameterMetadata::allowed
std::vector< std::string > allowed
Allowed values (for enumeration types)
Definition
parameterMetadata.hpp:46
camcom::common::ParameterMetadata::HasData
bool HasData() const
Check if any metadata is populated.
Definition
parameterMetadata.hpp:64
camcom::common::ParameterMetadata::readable
bool readable
Whether the parameter can be read.
Definition
parameterMetadata.hpp:55
value.hpp
Header file for the CamCom Common Library.
common
src
include
camcom
common
parameterMetadata.hpp
Generated by
1.13.2