68# pragma warning(disable : 4251)
84 static constexpr const char *path{
"" };
87 static constexpr const char *name{
"CameraInfo" };
90 static constexpr const char *description{
91 R
"description(Information about camera model, serial number etc.)description"
94 static constexpr size_t version{ 6 };
104 static constexpr std::array<uint8_t, 3> binaryId{
'n',
'f',
'o' };
118 static constexpr const char *path{
"FirmwareVersion" };
121 static constexpr const char *name{
"FirmwareVersion" };
124 static constexpr const char *description{ R
"description(The firmware version on the camera)description" };
132 return { 0, std::numeric_limits<ValueType::size_type>::max() };
140 : m_value{ std::move(value) }
152 return m_value == other.m_value;
158 return m_value != other.m_value;
164 return m_value < other.m_value;
170 return m_value > other.m_value;
176 return m_value <= other.m_value;
182 return m_value >= other.m_value;
192 void setFromString(
const std::string &value);
194 std::string m_value{};
211 static constexpr const char *path{
"HardwareRevision" };
214 static constexpr const char *name{
"HardwareRevision" };
217 static constexpr const char *description{
218 R
"description(Hardware revision of this camera. This corresponds to the revision string that is printed on the product
229 return { 0, std::numeric_limits<ValueType::size_type>::max() };
237 : m_value{ std::move(value) }
249 return m_value == other.m_value;
255 return m_value != other.m_value;
261 return m_value < other.m_value;
267 return m_value > other.m_value;
273 return m_value <= other.m_value;
279 return m_value >= other.m_value;
289 void setFromString(
const std::string &value);
291 std::string m_value{};
306 static constexpr const char *path{
"Model" };
309 static constexpr const char *name{
"Model" };
312 static constexpr const char *description{ R
"description(The model of the camera)description" };
344 return { ValueType::zividOnePlusSmall, ValueType::zividOnePlusMedium, ValueType::zividOnePlusLarge,
345 ValueType::zividTwo, ValueType::zividTwoL100, ValueType::zivid2PlusM130,
346 ValueType::zivid2PlusM60, ValueType::zivid2PlusL110, ValueType::zivid2PlusMR130,
347 ValueType::zivid2PlusMR60, ValueType::zivid2PlusLR110 };
355 : m_value{ verifyValue(value) }
373 return m_value == other.m_value;
379 return m_value != other.m_value;
389 void setFromString(
const std::string &value);
391 constexpr ValueType
static verifyValue(
const ValueType &value)
393 return value == ValueType::zividOnePlusSmall || value == ValueType::zividOnePlusMedium
394 || value == ValueType::zividOnePlusLarge || value == ValueType::zividTwo
395 || value == ValueType::zividTwoL100 || value == ValueType::zivid2PlusM130
396 || value == ValueType::zivid2PlusM60 || value == ValueType::zivid2PlusL110
397 || value == ValueType::zivid2PlusMR130 || value == ValueType::zivid2PlusMR60
398 || value == ValueType::zivid2PlusLR110
400 :
throw std::invalid_argument{
401 "Invalid value: Model{ "
402 + std::to_string(
static_cast<std::underlying_type<ValueType>::type
>(value)) +
" }"
408 friend struct DataModel::Detail::Befriend<
Model>;
423 static constexpr const char *path{
"ModelName" };
426 static constexpr const char *name{
"ModelName" };
429 static constexpr const char *description{
430 R
"description(The model name of the camera. This is a user-friendly display name that may contain spaces and special
431characters. We recommend to use `Model` instead if you want to programmatically check for camera model.
441 return { 0, std::numeric_limits<ValueType::size_type>::max() };
449 : m_value{ std::move(value) }
461 return m_value == other.m_value;
467 return m_value != other.m_value;
473 return m_value < other.m_value;
479 return m_value > other.m_value;
485 return m_value <= other.m_value;
491 return m_value >= other.m_value;
501 void setFromString(
const std::string &value);
503 std::string m_value{};
505 friend struct DataModel::Detail::Befriend<
ModelName>;
520 static constexpr const char *path{
"Revision" };
523 static constexpr const char *name{
"Revision" };
526 static constexpr const char *description{
527 R
"description(Major/Minor hardware revision number. This field is deprecated and may be removed in a future version
528of the SDK. Please use HardwareRevision instead.
544 static constexpr const char *path{
"Revision/Major" };
547 static constexpr const char *name{
"Major" };
550 static constexpr const char *description{
551 R
"description(Major hardware revision number. This field is deprecated and may be removed in a future version
552of the SDK. Please use HardwareRevision instead.
562 return { std::numeric_limits<uint32_t>::lowest(), std::numeric_limits<uint32_t>::max() };
569 explicit constexpr Major(uint32_t value)
582 return m_value == other.m_value;
588 return m_value != other.m_value;
594 return m_value < other.m_value;
600 return m_value > other.m_value;
606 return m_value <= other.m_value;
612 return m_value >= other.m_value;
622 void setFromString(
const std::string &value);
624 uint32_t m_value{ 0 };
626 friend struct DataModel::Detail::Befriend<
Major>;
641 static constexpr const char *path{
"Revision/Minor" };
644 static constexpr const char *name{
"Minor" };
647 static constexpr const char *description{
648 R
"description(Minor hardware revision number. This field is deprecated and may be removed in a future version
649of the SDK. Please use HardwareRevision instead.
659 return { std::numeric_limits<uint32_t>::lowest(), std::numeric_limits<uint32_t>::max() };
666 explicit constexpr Minor(uint32_t value)
679 return m_value == other.m_value;
685 return m_value != other.m_value;
691 return m_value < other.m_value;
697 return m_value > other.m_value;
703 return m_value <= other.m_value;
709 return m_value >= other.m_value;
719 void setFromString(
const std::string &value);
721 uint32_t m_value{ 0 };
723 friend struct DataModel::Detail::Befriend<
Minor>;
726 using Descendants = std::tuple<CameraInfo::Revision::Major, CameraInfo::Revision::Minor>;
746 typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0,
747 typename std::enable_if<
748 Zivid::Detail::TypeTraits::AllArgsAreInTuple<
Descendants,
typename std::decay<Args>::type...>::
752 template<typename... Args>
756 using namespace Zivid::Detail::TypeTraits;
759 AllArgsDecayedAreUnique<Args...>::value,
760 "Found duplicate types among the arguments passed to Revision(...). "
761 "Types should be listed at most once.");
763 set(std::forward<Args>(args)...);
778 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 2,
int>::type = 0>
780 template<typename... Args>
784 using namespace Zivid::Detail::TypeTraits;
786 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
788 AllArgsAreDescendantNodes::value,
"All arguments passed to set(...) must be descendant nodes.");
791 AllArgsDecayedAreUnique<Args...>::value,
792 "Found duplicate types among the arguments passed to set(...). "
793 "Types should be listed at most once.");
795 Zivid::DataModel::Detail::invokeSetWithEachArgument(*
this, std::forward<Args>(args)...);
811 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0>
813 template<typename... Args>
817 using namespace Zivid::Detail::TypeTraits;
819 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
821 AllArgsAreDescendantNodes::value,
822 "All arguments passed to copyWith(...) must be descendant nodes.");
825 AllArgsDecayedAreUnique<Args...>::value,
826 "Found duplicate types among the arguments passed to copyWith(...). "
827 "Types should be listed at most once.");
830 copy.set(std::forward<Args>(args)...);
874 typename std::enable_if<std::is_same<T, CameraInfo::Revision::Major>::value,
int>::type = 0>
882 typename std::enable_if<std::is_same<T, CameraInfo::Revision::Minor>::value,
int>::type = 0>
888 template<size_t i, typename std::enable_if<i == 0, int>::type = 0>
894 template<size_t i, typename std::enable_if<i == 1, int>::type = 0>
932 void setFromString(
const std::string &value);
934 void setFromString(
const std::string &fullPath,
const std::string &value);
936 std::string getString(
const std::string &fullPath)
const;
941 friend struct DataModel::Detail::Befriend<
Revision>;
954 static constexpr const char *path{
"SerialNumber" };
957 static constexpr const char *name{
"SerialNumber" };
960 static constexpr const char *description{ R
"description(The serial number of the camera)description" };
968 return { 0, std::numeric_limits<ValueType::size_type>::max() };
976 : m_value{ std::move(value) }
988 return m_value == other.m_value;
994 return m_value != other.m_value;
1000 return m_value < other.m_value;
1006 return m_value > other.m_value;
1012 return m_value <= other.m_value;
1018 return m_value >= other.m_value;
1028 void setFromString(
const std::string &value);
1030 std::string m_value{};
1032 friend struct DataModel::Detail::Befriend<
SerialNumber>;
1045 static constexpr const char *path{
"UserData" };
1048 static constexpr const char *name{
"UserData" };
1051 static constexpr const char *description{
1052 R
"description(Information about user data capabilities of the camera)description"
1065 static constexpr const char *path{
"UserData/MaxSizeBytes" };
1068 static constexpr const char *name{
"MaxSizeBytes" };
1071 static constexpr const char *description{
1072 R
"description(The maximum number of bytes of user data that can be stored in the camera)description"
1081 return { std::numeric_limits<uint64_t>::lowest(), std::numeric_limits<uint64_t>::max() };
1101 return m_value == other.m_value;
1107 return m_value != other.m_value;
1113 return m_value < other.m_value;
1119 return m_value > other.m_value;
1125 return m_value <= other.m_value;
1131 return m_value >= other.m_value;
1141 void setFromString(
const std::string &value);
1143 uint64_t m_value{ 0 };
1145 friend struct DataModel::Detail::Befriend<
MaxSizeBytes>;
1167 typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0,
1168 typename std::enable_if<
1169 Zivid::Detail::TypeTraits::AllArgsAreInTuple<
Descendants,
typename std::decay<Args>::type...>::
1173 template<typename... Args>
1177 using namespace Zivid::Detail::TypeTraits;
1180 AllArgsDecayedAreUnique<Args...>::value,
1181 "Found duplicate types among the arguments passed to UserData(...). "
1182 "Types should be listed at most once.");
1184 set(std::forward<Args>(args)...);
1198 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 2,
int>::type = 0>
1200 template<typename... Args>
1204 using namespace Zivid::Detail::TypeTraits;
1206 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
1208 AllArgsAreDescendantNodes::value,
"All arguments passed to set(...) must be descendant nodes.");
1211 AllArgsDecayedAreUnique<Args...>::value,
1212 "Found duplicate types among the arguments passed to set(...). "
1213 "Types should be listed at most once.");
1215 Zivid::DataModel::Detail::invokeSetWithEachArgument(*
this, std::forward<Args>(args)...);
1230 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0>
1232 template<typename... Args>
1236 using namespace Zivid::Detail::TypeTraits;
1238 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
1240 AllArgsAreDescendantNodes::value,
1241 "All arguments passed to copyWith(...) must be descendant nodes.");
1244 AllArgsDecayedAreUnique<Args...>::value,
1245 "Found duplicate types among the arguments passed to copyWith(...). "
1246 "Types should be listed at most once.");
1249 copy.set(std::forward<Args>(args)...);
1256 return m_maxSizeBytes;
1262 return m_maxSizeBytes;
1268 m_maxSizeBytes = value;
1274 typename std::enable_if<std::is_same<T, CameraInfo::UserData::MaxSizeBytes>::value,
int>::type = 0>
1277 return m_maxSizeBytes;
1280 template<size_t i, typename std::enable_if<i == 0, int>::type = 0>
1283 return m_maxSizeBytes;
1287 template<
typename F>
1294 template<
typename F>
1316 void setFromString(
const std::string &value);
1318 void setFromString(
const std::string &fullPath,
const std::string &value);
1320 std::string getString(
const std::string &fullPath)
const;
1324 friend struct DataModel::Detail::Befriend<
UserData>;
1382 typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0,
1383 typename std::enable_if<
1384 Zivid::Detail::TypeTraits::AllArgsAreInTuple<
Descendants,
typename std::decay<Args>::type...>::value,
1387 template<typename... Args>
1391 using namespace Zivid::Detail::TypeTraits;
1394 AllArgsDecayedAreUnique<Args...>::value,
1395 "Found duplicate types among the arguments passed to CameraInfo(...). "
1396 "Types should be listed at most once.");
1398 set(std::forward<Args>(args)...);
1421 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 2,
int>::type = 0>
1423 template<typename... Args>
1427 using namespace Zivid::Detail::TypeTraits;
1429 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
1431 AllArgsAreDescendantNodes::value,
"All arguments passed to set(...) must be descendant nodes.");
1434 AllArgsDecayedAreUnique<Args...>::value,
1435 "Found duplicate types among the arguments passed to set(...). "
1436 "Types should be listed at most once.");
1438 Zivid::DataModel::Detail::invokeSetWithEachArgument(*
this, std::forward<Args>(args)...);
1462 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0>
1464 template<typename... Args>
1468 using namespace Zivid::Detail::TypeTraits;
1470 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
1472 AllArgsAreDescendantNodes::value,
"All arguments passed to copyWith(...) must be descendant nodes.");
1475 AllArgsDecayedAreUnique<Args...>::value,
1476 "Found duplicate types among the arguments passed to copyWith(...). "
1477 "Types should be listed at most once.");
1480 copy.set(std::forward<Args>(args)...);
1487 return m_firmwareVersion;
1493 return m_firmwareVersion;
1499 m_firmwareVersion = value;
1506 return m_hardwareRevision;
1512 return m_hardwareRevision;
1518 m_hardwareRevision = value;
1556 m_modelName = value;
1582 m_revision.
set(value);
1589 m_revision.
set(value);
1596 return m_serialNumber;
1602 return m_serialNumber;
1608 m_serialNumber = value;
1634 m_userData.
set(value);
1640 typename std::enable_if<std::is_same<T, CameraInfo::FirmwareVersion>::value,
int>::type = 0>
1643 return m_firmwareVersion;
1648 typename std::enable_if<std::is_same<T, CameraInfo::HardwareRevision>::value,
int>::type = 0>
1651 return m_hardwareRevision;
1654 template<typename T, typename std::enable_if<std::is_same<T, CameraInfo::Model>::value,
int>::type = 0>
1660 template<typename T, typename std::enable_if<std::is_same<T, CameraInfo::ModelName>::value,
int>::type = 0>
1666 template<typename T, typename std::enable_if<std::is_same<T, CameraInfo::Revision>::value,
int>::type = 0>
1674 typename std::enable_if<std::is_same<T, CameraInfo::Revision::Major>::value,
int>::type = 0>
1682 typename std::enable_if<std::is_same<T, CameraInfo::Revision::Minor>::value,
int>::type = 0>
1688 template<typename T, typename std::enable_if<std::is_same<T, CameraInfo::SerialNumber>::value,
int>::type = 0>
1691 return m_serialNumber;
1694 template<typename T, typename std::enable_if<std::is_same<T, CameraInfo::UserData>::value,
int>::type = 0>
1702 typename std::enable_if<std::is_same<T, CameraInfo::UserData::MaxSizeBytes>::value,
int>::type = 0>
1708 template<size_t i, typename std::enable_if<i == 0, int>::type = 0>
1711 return m_firmwareVersion;
1714 template<size_t i, typename std::enable_if<i == 1, int>::type = 0>
1717 return m_hardwareRevision;
1720 template<size_t i, typename std::enable_if<i == 2, int>::type = 0>
1726 template<size_t i, typename std::enable_if<i == 3, int>::type = 0>
1732 template<size_t i, typename std::enable_if<i == 4, int>::type = 0>
1738 template<size_t i, typename std::enable_if<i == 5, int>::type = 0>
1741 return m_serialNumber;
1744 template<size_t i, typename std::enable_if<i == 6, int>::type = 0>
1751 template<
typename F>
1754 f(m_firmwareVersion);
1755 f(m_hardwareRevision);
1764 template<
typename F>
1767 f(m_firmwareVersion);
1768 f(m_hardwareRevision);
1792 void save(
const std::string &fileName)
const;
1795 void load(
const std::string &fileName);
1798 void setFromString(
const std::string &value);
1800 void setFromString(
const std::string &fullPath,
const std::string &value);
1802 std::string getString(
const std::string &fullPath)
const;
1812 friend struct DataModel::Detail::Befriend<
CameraInfo>;
1817 struct CameraInfo::Version<6>
1840# pragma warning(pop)
1844# if !(defined(_MSC_VER) && (_MSC_VER <= 1900))
1849 struct tuple_size<
Zivid::CameraInfo::Revision> : integral_constant<size_t, 2>
1853 struct tuple_element<i,
Zivid::CameraInfo::Revision>
1855 static_assert(i < tuple_size<Zivid::CameraInfo::Revision>::value,
"Index must be less than 2");
1858 =
decltype(declval<Zivid::CameraInfo::Revision>().get<i>());
1862 struct tuple_size<
Zivid::CameraInfo::UserData> : integral_constant<size_t, 1>
1866 struct tuple_element<i,
Zivid::CameraInfo::UserData>
1868 static_assert(i < tuple_size<Zivid::CameraInfo::UserData>::value,
"Index must be less than 1");
1871 =
decltype(declval<Zivid::CameraInfo::UserData>().get<i>());
1875 struct tuple_size<
Zivid::CameraInfo> : integral_constant<size_t, 7>
1879 struct tuple_element<i,
Zivid::CameraInfo>
1881 static_assert(i < tuple_size<Zivid::CameraInfo>::value,
"Index must be less than 7");
1884 =
decltype(declval<Zivid::CameraInfo>().get<i>());
1893#if defined(__has_include) && !defined(NO_DOC)
1894# if __has_include("Zivid/CameraInfoInternal.h") && __has_include("Zivid/DataModelNodeMetaData.h")
1895# include "Zivid/CameraInfoInternal.h"
#define ZIVID_CORE_EXPORT
Definition CoreExport.h:56
The firmware version on the camera.
Definition CameraInfo.h:112
std::string toString() const
Get the value as string.
bool operator==(const FirmwareVersion &other) const
Comparison operator.
Definition CameraInfo.h:150
FirmwareVersion(std::string value)
Constructor.
Definition CameraInfo.h:139
static constexpr Range< ValueType::size_type > validSize()
The valid sizes for FirmwareVersion.
Definition CameraInfo.h:130
bool operator<(const FirmwareVersion &other) const
Comparison operator.
Definition CameraInfo.h:162
bool operator<=(const FirmwareVersion &other) const
Comparison operator.
Definition CameraInfo.h:174
bool operator>=(const FirmwareVersion &other) const
Comparison operator.
Definition CameraInfo.h:180
const std::string & value() const
Get the value.
friend std::ostream & operator<<(std::ostream &stream, const FirmwareVersion &value)
Operator to serialize the value to a stream.
Definition CameraInfo.h:186
bool operator>(const FirmwareVersion &other) const
Comparison operator.
Definition CameraInfo.h:168
bool operator!=(const FirmwareVersion &other) const
Comparison operator.
Definition CameraInfo.h:156
std::string ValueType
The type of the underlying value.
Definition CameraInfo.h:127
FirmwareVersion()=default
Default constructor.
Hardware revision of this camera. This corresponds to the revision string that is printed on the prod...
Definition CameraInfo.h:205
HardwareRevision()=default
Default constructor.
bool operator!=(const HardwareRevision &other) const
Comparison operator.
Definition CameraInfo.h:253
static constexpr Range< ValueType::size_type > validSize()
The valid sizes for HardwareRevision.
Definition CameraInfo.h:227
bool operator==(const HardwareRevision &other) const
Comparison operator.
Definition CameraInfo.h:247
bool operator>(const HardwareRevision &other) const
Comparison operator.
Definition CameraInfo.h:265
const std::string & value() const
Get the value.
bool operator<(const HardwareRevision &other) const
Comparison operator.
Definition CameraInfo.h:259
friend std::ostream & operator<<(std::ostream &stream, const HardwareRevision &value)
Operator to serialize the value to a stream.
Definition CameraInfo.h:283
HardwareRevision(std::string value)
Constructor.
Definition CameraInfo.h:236
std::string ValueType
The type of the underlying value.
Definition CameraInfo.h:224
bool operator<=(const HardwareRevision &other) const
Comparison operator.
Definition CameraInfo.h:271
bool operator>=(const HardwareRevision &other) const
Comparison operator.
Definition CameraInfo.h:277
std::string toString() const
Get the value as string.
The model name of the camera. This is a user-friendly display name that may contain spaces and specia...
Definition CameraInfo.h:417
bool operator==(const ModelName &other) const
Comparison operator.
Definition CameraInfo.h:459
ModelName()=default
Default constructor.
bool operator<=(const ModelName &other) const
Comparison operator.
Definition CameraInfo.h:483
std::string toString() const
Get the value as string.
ModelName(std::string value)
Constructor.
Definition CameraInfo.h:448
std::string ValueType
The type of the underlying value.
Definition CameraInfo.h:436
bool operator<(const ModelName &other) const
Comparison operator.
Definition CameraInfo.h:471
bool operator>(const ModelName &other) const
Comparison operator.
Definition CameraInfo.h:477
friend std::ostream & operator<<(std::ostream &stream, const ModelName &value)
Operator to serialize the value to a stream.
Definition CameraInfo.h:495
const std::string & value() const
Get the value.
static constexpr Range< ValueType::size_type > validSize()
The valid sizes for ModelName.
Definition CameraInfo.h:439
bool operator>=(const ModelName &other) const
Comparison operator.
Definition CameraInfo.h:489
bool operator!=(const ModelName &other) const
Comparison operator.
Definition CameraInfo.h:465
The model of the camera.
Definition CameraInfo.h:300
static const Model zividOnePlusSmall
zividOnePlusSmall
Definition CameraInfo.h:329
static const Model zivid2PlusMR60
zivid2PlusMR60
Definition CameraInfo.h:338
static const Model zivid2PlusM130
zivid2PlusM130
Definition CameraInfo.h:334
static const Model zividTwo
zividTwo
Definition CameraInfo.h:332
static const Model zivid2PlusL110
zivid2PlusL110
Definition CameraInfo.h:336
std::string toString() const
Get the value as string.
constexpr Model(ValueType value)
Constructor.
Definition CameraInfo.h:354
Model()=default
Default constructor.
static const Model zividOnePlusMedium
zividOnePlusMedium
Definition CameraInfo.h:330
ValueType value() const
Get the value.
friend std::ostream & operator<<(std::ostream &stream, const Model::ValueType &value)
Operator to serialize ValueType to a stream.
Definition CameraInfo.h:365
static const Model zivid2PlusM60
zivid2PlusM60
Definition CameraInfo.h:335
friend std::ostream & operator<<(std::ostream &stream, const Model &value)
Operator to serialize the value to a stream.
Definition CameraInfo.h:383
static const Model zivid2PlusLR110
zivid2PlusLR110
Definition CameraInfo.h:339
static std::set< ValueType > validValues()
All valid values of Model.
Definition CameraInfo.h:342
ValueType
The type of the underlying value.
Definition CameraInfo.h:316
static const Model zivid2PlusMR130
zivid2PlusMR130
Definition CameraInfo.h:337
static const Model zividOnePlusLarge
zividOnePlusLarge
Definition CameraInfo.h:331
bool operator!=(const Model &other) const
Comparison operator.
Definition CameraInfo.h:377
static const Model zividTwoL100
zividTwoL100
Definition CameraInfo.h:333
bool operator==(const Model &other) const
Comparison operator.
Definition CameraInfo.h:371
Major hardware revision number. This field is deprecated and may be removed in a future version of th...
Definition CameraInfo.h:538
std::string toString() const
Get the value as string.
bool operator!=(const Major &other) const
Comparison operator.
Definition CameraInfo.h:586
uint32_t ValueType
The type of the underlying value.
Definition CameraInfo.h:557
friend std::ostream & operator<<(std::ostream &stream, const Major &value)
Operator to serialize the value to a stream.
Definition CameraInfo.h:616
static constexpr Range< uint32_t > validRange()
The range of valid values for Major.
Definition CameraInfo.h:560
bool operator>=(const Major &other) const
Comparison operator.
Definition CameraInfo.h:610
bool operator<=(const Major &other) const
Comparison operator.
Definition CameraInfo.h:604
bool operator>(const Major &other) const
Comparison operator.
Definition CameraInfo.h:598
uint32_t value() const
Get the value.
constexpr Major(uint32_t value)
Constructor.
Definition CameraInfo.h:569
bool operator<(const Major &other) const
Comparison operator.
Definition CameraInfo.h:592
Major()=default
Default constructor.
bool operator==(const Major &other) const
Comparison operator.
Definition CameraInfo.h:580
Minor hardware revision number. This field is deprecated and may be removed in a future version of th...
Definition CameraInfo.h:635
bool operator>(const Minor &other) const
Comparison operator.
Definition CameraInfo.h:695
bool operator!=(const Minor &other) const
Comparison operator.
Definition CameraInfo.h:683
bool operator<=(const Minor &other) const
Comparison operator.
Definition CameraInfo.h:701
constexpr Minor(uint32_t value)
Constructor.
Definition CameraInfo.h:666
uint32_t ValueType
The type of the underlying value.
Definition CameraInfo.h:654
friend std::ostream & operator<<(std::ostream &stream, const Minor &value)
Operator to serialize the value to a stream.
Definition CameraInfo.h:713
bool operator==(const Minor &other) const
Comparison operator.
Definition CameraInfo.h:677
std::string toString() const
Get the value as string.
Minor()=default
Default constructor.
bool operator>=(const Minor &other) const
Comparison operator.
Definition CameraInfo.h:707
bool operator<(const Minor &other) const
Comparison operator.
Definition CameraInfo.h:689
static constexpr Range< uint32_t > validRange()
The range of valid values for Minor.
Definition CameraInfo.h:657
uint32_t value() const
Get the value.
Major/Minor hardware revision number. This field is deprecated and may be removed in a future version...
Definition CameraInfo.h:514
const Major & major() const
Get Major.
Definition CameraInfo.h:835
Revision copyWith(Args &&...args) const
Returns a copy of this object with the given argument(s) set to the new value(s)
Definition CameraInfo.h:815
Minor & minor()
Get Minor.
Definition CameraInfo.h:860
Revision & set(const Minor &value)
Set Minor.
Definition CameraInfo.h:866
std::tuple< CameraInfo::Revision::Major, CameraInfo::Revision::Minor > Descendants
Definition CameraInfo.h:726
Revision & set(const Major &value)
Set Major.
Definition CameraInfo.h:847
bool operator==(const Revision &other) const
Equality operator.
const CameraInfo::Revision::Minor & get() const
Definition CameraInfo.h:883
std::string toString() const
Get the value as string.
const Minor & minor() const
Get Minor.
Definition CameraInfo.h:854
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter.
Definition CameraInfo.h:910
Major & major()
Get Major.
Definition CameraInfo.h:841
const CameraInfo::Revision::Major & get() const
Definition CameraInfo.h:875
Revision()
Default constructor.
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter.
Definition CameraInfo.h:902
friend std::ostream & operator<<(std::ostream &stream, const Revision &value)
Operator to send the value as string to a stream.
Definition CameraInfo.h:926
void set(Args &&...args)
Set multiple arguments.
Definition CameraInfo.h:782
bool operator!=(const Revision &other) const
Inequality operator.
The serial number of the camera.
Definition CameraInfo.h:948
SerialNumber(std::string value)
Constructor.
Definition CameraInfo.h:975
const std::string & value() const
Get the value.
bool operator==(const SerialNumber &other) const
Comparison operator.
Definition CameraInfo.h:986
std::string ValueType
The type of the underlying value.
Definition CameraInfo.h:963
SerialNumber()=default
Default constructor.
friend std::ostream & operator<<(std::ostream &stream, const SerialNumber &value)
Operator to serialize the value to a stream.
Definition CameraInfo.h:1022
std::string toString() const
Get the value as string.
bool operator>(const SerialNumber &other) const
Comparison operator.
Definition CameraInfo.h:1004
bool operator<(const SerialNumber &other) const
Comparison operator.
Definition CameraInfo.h:998
bool operator<=(const SerialNumber &other) const
Comparison operator.
Definition CameraInfo.h:1010
static constexpr Range< ValueType::size_type > validSize()
The valid sizes for SerialNumber.
Definition CameraInfo.h:966
bool operator>=(const SerialNumber &other) const
Comparison operator.
Definition CameraInfo.h:1016
bool operator!=(const SerialNumber &other) const
Comparison operator.
Definition CameraInfo.h:992
The maximum number of bytes of user data that can be stored in the camera.
Definition CameraInfo.h:1059
bool operator!=(const MaxSizeBytes &other) const
Comparison operator.
Definition CameraInfo.h:1105
bool operator<=(const MaxSizeBytes &other) const
Comparison operator.
Definition CameraInfo.h:1123
bool operator>(const MaxSizeBytes &other) const
Comparison operator.
Definition CameraInfo.h:1117
MaxSizeBytes()=default
Default constructor.
constexpr MaxSizeBytes(uint64_t value)
Constructor.
Definition CameraInfo.h:1088
uint64_t value() const
Get the value.
bool operator<(const MaxSizeBytes &other) const
Comparison operator.
Definition CameraInfo.h:1111
bool operator==(const MaxSizeBytes &other) const
Comparison operator.
Definition CameraInfo.h:1099
std::string toString() const
Get the value as string.
friend std::ostream & operator<<(std::ostream &stream, const MaxSizeBytes &value)
Operator to serialize the value to a stream.
Definition CameraInfo.h:1135
static constexpr Range< uint64_t > validRange()
The range of valid values for MaxSizeBytes.
Definition CameraInfo.h:1079
uint64_t ValueType
The type of the underlying value.
Definition CameraInfo.h:1076
bool operator>=(const MaxSizeBytes &other) const
Comparison operator.
Definition CameraInfo.h:1129
Information about user data capabilities of the camera.
Definition CameraInfo.h:1039
bool operator==(const UserData &other) const
Equality operator.
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter.
Definition CameraInfo.h:1295
MaxSizeBytes & maxSizeBytes()
Get MaxSizeBytes.
Definition CameraInfo.h:1260
UserData copyWith(Args &&...args) const
Returns a copy of this object with the given argument(s) set to the new value(s)
Definition CameraInfo.h:1234
friend std::ostream & operator<<(std::ostream &stream, const UserData &value)
Operator to send the value as string to a stream.
Definition CameraInfo.h:1310
std::string toString() const
Get the value as string.
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter.
Definition CameraInfo.h:1288
const CameraInfo::UserData::MaxSizeBytes & get() const
Definition CameraInfo.h:1275
std::tuple< CameraInfo::UserData::MaxSizeBytes > Descendants
Definition CameraInfo.h:1148
bool operator!=(const UserData &other) const
Inequality operator.
UserData()
Default constructor.
const MaxSizeBytes & maxSizeBytes() const
Get MaxSizeBytes.
Definition CameraInfo.h:1254
UserData & set(const MaxSizeBytes &value)
Set MaxSizeBytes.
Definition CameraInfo.h:1266
void set(Args &&...args)
Set multiple arguments.
Definition CameraInfo.h:1202
Information about camera model, serial number etc.
Definition CameraInfo.h:78
bool operator==(const CameraInfo &other) const
Equality operator.
static CameraInfo fromSerialized(const std::string &value)
Construct a new CameraInfo instance from a previously serialized string.
Revision & revision()
Get Revision.
Definition CameraInfo.h:1567
const ModelName & modelName() const
Get ModelName.
Definition CameraInfo.h:1542
FirmwareVersion & firmwareVersion()
Get FirmwareVersion.
Definition CameraInfo.h:1491
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter.
Definition CameraInfo.h:1765
const UserData & userData() const
Get UserData.
Definition CameraInfo.h:1613
ModelName & modelName()
Get ModelName.
Definition CameraInfo.h:1548
bool operator!=(const CameraInfo &other) const
Inequality operator.
CameraInfo & set(const Model &value)
Set Model.
Definition CameraInfo.h:1535
const CameraInfo::FirmwareVersion & get() const
Definition CameraInfo.h:1641
const CameraInfo::Model & get() const
Definition CameraInfo.h:1655
CameraInfo(const std::string &fileName)
Construct CameraInfo by loading from file.
UserData & userData()
Get UserData.
Definition CameraInfo.h:1619
CameraInfo & set(const ModelName &value)
Set ModelName.
Definition CameraInfo.h:1554
const FirmwareVersion & firmwareVersion() const
Get FirmwareVersion.
Definition CameraInfo.h:1485
const CameraInfo::UserData::MaxSizeBytes & get() const
Definition CameraInfo.h:1703
const Model & model() const
Get Model.
Definition CameraInfo.h:1523
CameraInfo copyWith(Args &&...args) const
Returns a copy of this object with the given argument(s) set to the new value(s)
Definition CameraInfo.h:1466
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter.
Definition CameraInfo.h:1752
Model & model()
Get Model.
Definition CameraInfo.h:1529
friend std::ostream & operator<<(std::ostream &stream, const CameraInfo &value)
Operator to send the value as string to a stream.
Definition CameraInfo.h:1786
const CameraInfo::ModelName & get() const
Definition CameraInfo.h:1661
CameraInfo & set(const UserData &value)
Set UserData.
Definition CameraInfo.h:1625
CameraInfo & set(const UserData::MaxSizeBytes &value)
Set UserData::MaxSizeBytes.
Definition CameraInfo.h:1632
CameraInfo(Args &&...args)
Constructor taking variadic number of arguments.
Definition CameraInfo.h:1389
const CameraInfo::UserData & get() const
Definition CameraInfo.h:1695
const CameraInfo::Revision::Minor & get() const
Definition CameraInfo.h:1683
const SerialNumber & serialNumber() const
Get SerialNumber.
Definition CameraInfo.h:1594
SerialNumber & serialNumber()
Get SerialNumber.
Definition CameraInfo.h:1600
const Revision & revision() const
Get Revision.
Definition CameraInfo.h:1561
CameraInfo & set(const HardwareRevision &value)
Set HardwareRevision.
Definition CameraInfo.h:1516
const CameraInfo::HardwareRevision & get() const
Definition CameraInfo.h:1649
void load(const std::string &fileName)
Load from the given file.
CameraInfo & set(const FirmwareVersion &value)
Set FirmwareVersion.
Definition CameraInfo.h:1497
const CameraInfo::Revision::Major & get() const
Definition CameraInfo.h:1675
const HardwareRevision & hardwareRevision() const
Get HardwareRevision.
Definition CameraInfo.h:1504
void set(Args &&...args)
Set multiple arguments.
Definition CameraInfo.h:1425
CameraInfo & set(const Revision &value)
Set Revision.
Definition CameraInfo.h:1573
CameraInfo & set(const Revision::Major &value)
Set Revision::Major.
Definition CameraInfo.h:1580
std::tuple< CameraInfo::FirmwareVersion, CameraInfo::HardwareRevision, CameraInfo::Model, CameraInfo::ModelName, CameraInfo::Revision, CameraInfo::Revision::Major, CameraInfo::Revision::Minor, CameraInfo::SerialNumber, CameraInfo::UserData, CameraInfo::UserData::MaxSizeBytes > Descendants
Definition CameraInfo.h:1327
CameraInfo & set(const SerialNumber &value)
Set SerialNumber.
Definition CameraInfo.h:1606
std::string serialize() const
Serialize to a string.
HardwareRevision & hardwareRevision()
Get HardwareRevision.
Definition CameraInfo.h:1510
const CameraInfo::SerialNumber & get() const
Definition CameraInfo.h:1689
const CameraInfo::Revision & get() const
Definition CameraInfo.h:1667
std::string toString() const
Get the value as string.
CameraInfo()
Default constructor.
CameraInfo & set(const Revision::Minor &value)
Set Revision::Minor.
Definition CameraInfo.h:1587
void save(const std::string &fileName) const
Save to the given file.
Class describing a range of values for a given type T.
Definition Range.h:75
NodeType
Definition NodeType.h:49
Definition EnvironmentInfo.h:74
The main Zivid namespace. All Zivid code is found here.
Definition Application.h:84