31 #pragma warning(disable : 4251) 41 explicit FrameInfo(
const std::string &fileName);
44 static constexpr
bool isContainer{
true};
47 static constexpr
const char *path{
""};
50 static constexpr
const char *name{
"FrameInfo"};
53 void set(
const std::string &fullPath,
const std::string &value);
56 std::string getString(
const std::string &fullPath)
const;
62 using ValueType = std::chrono::system_clock::time_point;
65 static constexpr
bool isContainer{
false};
68 static constexpr
const char *path{
"TimeStamp"};
71 static constexpr
const char *name{
"TimeStamp"};
78 std::is_nothrow_move_constructible<ValueType>::value)
86 return {std::numeric_limits<ValueType>::lowest(),
87 std::numeric_limits<ValueType>::max()};
91 void setFromString(
const std::string &value);
98 return m_value == other.m_value;
103 return m_value != other.m_value;
108 return m_value < other.m_value;
113 return m_value > other.m_value;
124 value.
setFromString(std::string{std::istreambuf_iterator<char>{stream},
125 std::istreambuf_iterator<char>{}});
143 static constexpr
bool isContainer{
true};
146 static constexpr
const char *path{
"SoftwareVersion"};
149 static constexpr
const char *name{
"SoftwareVersion"};
152 void set(
const std::string &fullPath,
const std::string &value);
155 std::string getString(
const std::string &fullPath)
const;
166 static constexpr
bool isContainer{
true};
169 static constexpr
const char *path{
"SoftwareVersion/ZividStudio"};
172 static constexpr
const char *name{
"ZividStudio"};
175 void set(
const std::string &fullPath,
const std::string &value);
178 std::string getString(
const std::string &fullPath)
const;
187 static constexpr
bool isContainer{
false};
190 static constexpr
const char *path{
191 "SoftwareVersion/ZividStudio/FileDescription"};
194 static constexpr
const char *name{
"FileDescription"};
201 std::is_nothrow_move_constructible<ValueType>::value)
202 : m_value{std::move(value)} {}
215 return m_value == other.m_value;
220 return m_value != other.m_value;
225 return m_value < other.m_value;
230 return m_value > other.m_value;
243 std::string{std::istreambuf_iterator<char>{stream},
244 std::istreambuf_iterator<char>{}});
259 static constexpr
bool isContainer{
false};
262 static constexpr
const char *path{
263 "SoftwareVersion/ZividStudio/FileVersion"};
266 static constexpr
const char *name{
"FileVersion"};
273 std::is_nothrow_move_constructible<ValueType>::value)
274 : m_value{std::move(value)} {}
287 return m_value == other.m_value;
292 return m_value != other.m_value;
297 return m_value < other.m_value;
302 return m_value > other.m_value;
315 std::string{std::istreambuf_iterator<char>{stream},
316 std::istreambuf_iterator<char>{}});
331 static constexpr
bool isContainer{
false};
334 static constexpr
const char *path{
335 "SoftwareVersion/ZividStudio/ProductVersion"};
338 static constexpr
const char *name{
"ProductVersion"};
345 std::is_nothrow_move_constructible<ValueType>::value)
346 : m_value{std::move(value)} {}
359 return m_value == other.m_value;
364 return m_value != other.m_value;
369 return m_value < other.m_value;
374 return m_value > other.m_value;
387 std::string{std::istreambuf_iterator<char>{stream},
388 std::istreambuf_iterator<char>{}});
403 static constexpr
bool isContainer{
false};
406 static constexpr
const char *path{
407 "SoftwareVersion/ZividStudio/Comments"};
410 static constexpr
const char *name{
"Comments"};
417 std::is_nothrow_move_constructible<ValueType>::value)
418 : m_value{std::move(value)} {}
431 return m_value == other.m_value;
436 return m_value != other.m_value;
441 return m_value < other.m_value;
446 return m_value > other.m_value;
458 std::string{std::istreambuf_iterator<char>{stream},
459 std::istreambuf_iterator<char>{}});
474 m_fileDescription = value;
479 return m_fileDescription;
489 m_fileVersion = value;
502 m_productVersion = value;
523 template <
typename F>
void forEach(
const F &f)
const {
524 f(m_fileDescription);
532 template <
typename F>
void forEach(
const F &f) {
533 f(m_fileDescription);
542 f(m_fileDescription);
551 f(m_fileDescription);
567 void save(
const std::string &fileName)
const;
570 void setFromString(
const std::string &value);
575 value.
setFromString(std::string{std::istreambuf_iterator<char>{stream},
576 std::istreambuf_iterator<char>{}});
581 void load(
const std::string &fileName);
596 explicit ZividAPI(
const std::string &fileName);
599 static constexpr
bool isContainer{
true};
602 static constexpr
const char *path{
"SoftwareVersion/ZividAPI"};
605 static constexpr
const char *name{
"ZividAPI"};
608 void set(
const std::string &fullPath,
const std::string &value);
611 std::string getString(
const std::string &fullPath)
const;
620 static constexpr
bool isContainer{
false};
623 static constexpr
const char *path{
624 "SoftwareVersion/ZividAPI/FileDescription"};
627 static constexpr
const char *name{
"FileDescription"};
634 std::is_nothrow_move_constructible<ValueType>::value)
635 : m_value{std::move(value)} {}
648 return m_value == other.m_value;
653 return m_value != other.m_value;
658 return m_value < other.m_value;
663 return m_value > other.m_value;
676 std::string{std::istreambuf_iterator<char>{stream},
677 std::istreambuf_iterator<char>{}});
692 static constexpr
bool isContainer{
false};
695 static constexpr
const char *path{
696 "SoftwareVersion/ZividAPI/FileVersion"};
699 static constexpr
const char *name{
"FileVersion"};
706 std::is_nothrow_move_constructible<ValueType>::value)
707 : m_value{std::move(value)} {}
720 return m_value == other.m_value;
725 return m_value != other.m_value;
730 return m_value < other.m_value;
735 return m_value > other.m_value;
748 std::string{std::istreambuf_iterator<char>{stream},
749 std::istreambuf_iterator<char>{}});
764 static constexpr
bool isContainer{
false};
767 static constexpr
const char *path{
768 "SoftwareVersion/ZividAPI/ProductVersion"};
771 static constexpr
const char *name{
"ProductVersion"};
778 std::is_nothrow_move_constructible<ValueType>::value)
779 : m_value{std::move(value)} {}
792 return m_value == other.m_value;
797 return m_value != other.m_value;
802 return m_value < other.m_value;
807 return m_value > other.m_value;
820 std::string{std::istreambuf_iterator<char>{stream},
821 std::istreambuf_iterator<char>{}});
836 static constexpr
bool isContainer{
false};
839 static constexpr
const char *path{
"SoftwareVersion/ZividAPI/Comments"};
842 static constexpr
const char *name{
"Comments"};
849 std::is_nothrow_move_constructible<ValueType>::value)
850 : m_value{std::move(value)} {}
863 return m_value == other.m_value;
868 return m_value != other.m_value;
873 return m_value < other.m_value;
878 return m_value > other.m_value;
890 std::string{std::istreambuf_iterator<char>{stream},
891 std::istreambuf_iterator<char>{}});
906 m_fileDescription = value;
911 return m_fileDescription;
921 m_fileVersion = value;
934 m_productVersion = value;
955 template <
typename F>
void forEach(
const F &f)
const {
956 f(m_fileDescription);
964 template <
typename F>
void forEach(
const F &f) {
965 f(m_fileDescription);
974 f(m_fileDescription);
983 f(m_fileDescription);
999 void save(
const std::string &fileName)
const;
1002 void setFromString(
const std::string &value);
1006 value.
setFromString(std::string{std::istreambuf_iterator<char>{stream},
1007 std::istreambuf_iterator<char>{}});
1012 void load(
const std::string &fileName);
1015 bool operator==(
const ZividAPI &other)
const;
1018 bool operator!=(
const ZividAPI &other)
const;
1031 static constexpr
bool isContainer{
true};
1034 static constexpr
const char *path{
1035 "SoftwareVersion/ZividCameraToshibaTeli"};
1038 static constexpr
const char *name{
"ZividCameraToshibaTeli"};
1041 void set(
const std::string &fullPath,
const std::string &value);
1044 std::string getString(
const std::string &fullPath)
const;
1053 static constexpr
bool isContainer{
false};
1056 static constexpr
const char *path{
1057 "SoftwareVersion/ZividCameraToshibaTeli/FileDescription"};
1060 static constexpr
const char *name{
"FileDescription"};
1067 std::is_nothrow_move_constructible<ValueType>::value)
1068 : m_value{std::move(value)} {}
1081 return m_value == other.m_value;
1086 return m_value != other.m_value;
1091 return m_value < other.m_value;
1096 return m_value > other.m_value;
1109 std::string{std::istreambuf_iterator<char>{stream},
1110 std::istreambuf_iterator<char>{}});
1125 static constexpr
bool isContainer{
false};
1128 static constexpr
const char *path{
1129 "SoftwareVersion/ZividCameraToshibaTeli/FileVersion"};
1132 static constexpr
const char *name{
"FileVersion"};
1139 std::is_nothrow_move_constructible<ValueType>::value)
1140 : m_value{std::move(value)} {}
1153 return m_value == other.m_value;
1158 return m_value != other.m_value;
1163 return m_value < other.m_value;
1168 return m_value > other.m_value;
1181 std::string{std::istreambuf_iterator<char>{stream},
1182 std::istreambuf_iterator<char>{}});
1197 static constexpr
bool isContainer{
false};
1200 static constexpr
const char *path{
1201 "SoftwareVersion/ZividCameraToshibaTeli/ProductVersion"};
1204 static constexpr
const char *name{
"ProductVersion"};
1211 std::is_nothrow_move_constructible<ValueType>::value)
1212 : m_value{std::move(value)} {}
1225 return m_value == other.m_value;
1230 return m_value != other.m_value;
1235 return m_value < other.m_value;
1240 return m_value > other.m_value;
1253 std::string{std::istreambuf_iterator<char>{stream},
1254 std::istreambuf_iterator<char>{}});
1269 static constexpr
bool isContainer{
false};
1272 static constexpr
const char *path{
1273 "SoftwareVersion/ZividCameraToshibaTeli/Comments"};
1276 static constexpr
const char *name{
"Comments"};
1283 std::is_nothrow_move_constructible<ValueType>::value)
1284 : m_value{std::move(value)} {}
1297 return m_value == other.m_value;
1302 return m_value != other.m_value;
1307 return m_value < other.m_value;
1312 return m_value > other.m_value;
1324 std::string{std::istreambuf_iterator<char>{stream},
1325 std::istreambuf_iterator<char>{}});
1340 m_fileDescription = value;
1345 return m_fileDescription;
1355 m_fileVersion = value;
1368 m_productVersion = value;
1389 template <
typename F>
void forEach(
const F &f)
const {
1390 f(m_fileDescription);
1392 f(m_productVersion);
1399 f(m_fileDescription);
1401 f(m_productVersion);
1408 f(m_fileDescription);
1410 f(m_productVersion);
1417 f(m_fileDescription);
1419 f(m_productVersion);
1433 void save(
const std::string &fileName)
const;
1436 void setFromString(
const std::string &value);
1441 value.
setFromString(std::string{std::istreambuf_iterator<char>{stream},
1442 std::istreambuf_iterator<char>{}});
1447 void load(
const std::string &fileName);
1465 static constexpr
bool isContainer{
true};
1468 static constexpr
const char *path{
"SoftwareVersion/ZividCameraFile"};
1471 static constexpr
const char *name{
"ZividCameraFile"};
1474 void set(
const std::string &fullPath,
const std::string &value);
1477 std::string getString(
const std::string &fullPath)
const;
1486 static constexpr
bool isContainer{
false};
1489 static constexpr
const char *path{
1490 "SoftwareVersion/ZividCameraFile/FileDescription"};
1493 static constexpr
const char *name{
"FileDescription"};
1500 std::is_nothrow_move_constructible<ValueType>::value)
1501 : m_value{std::move(value)} {}
1514 return m_value == other.m_value;
1519 return m_value != other.m_value;
1524 return m_value < other.m_value;
1529 return m_value > other.m_value;
1542 std::string{std::istreambuf_iterator<char>{stream},
1543 std::istreambuf_iterator<char>{}});
1558 static constexpr
bool isContainer{
false};
1561 static constexpr
const char *path{
1562 "SoftwareVersion/ZividCameraFile/FileVersion"};
1565 static constexpr
const char *name{
"FileVersion"};
1572 std::is_nothrow_move_constructible<ValueType>::value)
1573 : m_value{std::move(value)} {}
1586 return m_value == other.m_value;
1591 return m_value != other.m_value;
1596 return m_value < other.m_value;
1601 return m_value > other.m_value;
1614 std::string{std::istreambuf_iterator<char>{stream},
1615 std::istreambuf_iterator<char>{}});
1630 static constexpr
bool isContainer{
false};
1633 static constexpr
const char *path{
1634 "SoftwareVersion/ZividCameraFile/ProductVersion"};
1637 static constexpr
const char *name{
"ProductVersion"};
1644 std::is_nothrow_move_constructible<ValueType>::value)
1645 : m_value{std::move(value)} {}
1658 return m_value == other.m_value;
1663 return m_value != other.m_value;
1668 return m_value < other.m_value;
1673 return m_value > other.m_value;
1686 std::string{std::istreambuf_iterator<char>{stream},
1687 std::istreambuf_iterator<char>{}});
1702 static constexpr
bool isContainer{
false};
1705 static constexpr
const char *path{
1706 "SoftwareVersion/ZividCameraFile/Comments"};
1709 static constexpr
const char *name{
"Comments"};
1716 std::is_nothrow_move_constructible<ValueType>::value)
1717 : m_value{std::move(value)} {}
1730 return m_value == other.m_value;
1735 return m_value != other.m_value;
1740 return m_value < other.m_value;
1745 return m_value > other.m_value;
1757 std::string{std::istreambuf_iterator<char>{stream},
1758 std::istreambuf_iterator<char>{}});
1773 m_fileDescription = value;
1778 return m_fileDescription;
1788 m_fileVersion = value;
1801 m_productVersion = value;
1822 template <
typename F>
void forEach(
const F &f)
const {
1823 f(m_fileDescription);
1825 f(m_productVersion);
1832 f(m_fileDescription);
1834 f(m_productVersion);
1841 f(m_fileDescription);
1843 f(m_productVersion);
1850 f(m_fileDescription);
1852 f(m_productVersion);
1866 void save(
const std::string &fileName)
const;
1869 void setFromString(
const std::string &value);
1874 value.
setFromString(std::string{std::istreambuf_iterator<char>{stream},
1875 std::istreambuf_iterator<char>{}});
1880 void load(
const std::string &fileName);
1896 m_zividStudio = value;
1905 m_zividStudio.
set(value);
1912 m_zividStudio.
set(value);
1919 m_zividStudio.
set(value);
1926 m_zividStudio.
set(value);
1946 m_zividAPI.
set(value);
1953 m_zividAPI.
set(value);
1960 m_zividAPI.
set(value);
1967 m_zividAPI.
set(value);
1978 m_zividCameraToshibaTeli = value;
1983 return m_zividCameraToshibaTeli;
1989 m_zividCameraToshibaTeli.
set(value);
1996 m_zividCameraToshibaTeli.
set(value);
2003 m_zividCameraToshibaTeli.
set(value);
2010 m_zividCameraToshibaTeli.
set(value);
2021 m_zividCameraFile = value;
2030 m_zividCameraFile.
set(value);
2037 m_zividCameraFile.
set(value);
2044 m_zividCameraFile.
set(value);
2051 m_zividCameraFile.
set(value);
2057 template <
typename F>
void forEach(
const F &f)
const {
2060 f(m_zividCameraToshibaTeli);
2061 f(m_zividCameraFile);
2069 f(m_zividCameraToshibaTeli);
2070 f(m_zividCameraFile);
2076 m_zividStudio.traverseValues(f);
2077 m_zividAPI.traverseValues(f);
2078 m_zividCameraToshibaTeli.traverseValues(f);
2079 m_zividCameraFile.traverseValues(f);
2085 m_zividStudio.traverseValues(f);
2086 m_zividAPI.traverseValues(f);
2087 m_zividCameraToshibaTeli.traverseValues(f);
2088 m_zividCameraFile.traverseValues(f);
2101 void save(
const std::string &fileName)
const;
2104 void setFromString(
const std::string &value);
2109 value.
setFromString(std::string{std::istreambuf_iterator<char>{stream},
2110 std::istreambuf_iterator<char>{}});
2115 void load(
const std::string &fileName);
2131 if (value.value().time_since_epoch().count() <
2132 value.range().min().time_since_epoch().count() ||
2133 value.value().time_since_epoch().count() >
2134 value.range().max().time_since_epoch().count()) {
2135 throw std::out_of_range(
2137 std::to_string(value.value().time_since_epoch().count()) +
2138 ", is out of range: {" +
2139 std::to_string(value.range().min().time_since_epoch().count()) +
2141 std::to_string(value.range().max().time_since_epoch().count()) +
"}");
2144 m_timeStamp = value;
2157 m_softwareVersion = value;
2166 m_softwareVersion.
set(value);
2173 m_softwareVersion.
set(value);
2180 m_softwareVersion.
set(value);
2187 m_softwareVersion.
set(value);
2194 m_softwareVersion.
set(value);
2201 m_softwareVersion.
set(value);
2208 m_softwareVersion.
set(value);
2215 m_softwareVersion.
set(value);
2222 m_softwareVersion.
set(value);
2229 m_softwareVersion.
set(value);
2236 m_softwareVersion.
set(value);
2245 m_softwareVersion.
set(value);
2254 m_softwareVersion.
set(value);
2263 m_softwareVersion.
set(value);
2271 m_softwareVersion.
set(value);
2278 m_softwareVersion.
set(value);
2286 m_softwareVersion.
set(value);
2293 m_softwareVersion.
set(value);
2301 m_softwareVersion.
set(value);
2308 m_softwareVersion.
set(value);
2314 template <
typename F>
void forEach(
const F &f)
const {
2316 f(m_softwareVersion);
2323 f(m_softwareVersion);
2330 m_softwareVersion.traverseValues(f);
2337 m_softwareVersion.traverseValues(f);
2350 void save(
const std::string &fileName)
const;
2353 void setFromString(
const std::string &value);
2357 value.
setFromString(std::string{std::istreambuf_iterator<char>{stream},
2358 std::istreambuf_iterator<char>{}});
2363 void load(
const std::string &fileName);
2366 bool operator==(
const FrameInfo &other)
const;
2369 bool operator!=(
const FrameInfo &other)
const;
2374 #pragma warning(pop) friend std::ostream & operator<<(std::ostream &stream, const FileVersion &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:1605
Version information for the ZividCameraToshibaTeli driver
Definition: FrameInfo.h:1023
void traverseValues(const F &f)
Traverse all members using the given function with the value of the member as parameter
Definition: FrameInfo.h:1416
File version
Definition: FrameInfo.h:253
const ValueType & value() const
Get the value
Definition: FrameInfo.h:1504
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:1398
bool operator<(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:1595
ProductVersion(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:1643
const Comments & comments() const
Get Comments
Definition: FrameInfo.h:519
bool operator>(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:301
bool operator==(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:358
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:1483
bool operator!=(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:291
bool operator!=(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:363
friend std::ostream & operator<<(std::ostream &stream, const ProductVersion &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:811
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:761
friend std::ostream & operator<<(std::ostream &stream, const ZividAPI &value)
Operator to send the value as string to a stream
Definition: FrameInfo.h:993
friend std::istream & operator>>(std::istream &stream, ZividCameraToshibaTeli &value)
Operator to set the value from a stream
Definition: FrameInfo.h:1439
bool operator==(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:647
bool operator!=(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:1590
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:184
void set(const std::string &fullPath, const std::string &value)
Set a value from string by specifying the path
const ZividCameraFile & zividCameraFile() const
Get ZividCameraFile
Definition: FrameInfo.h:2025
void set(const std::string &fullPath, const std::string &value)
Set a value from string by specifying the path
Class describing a range of values for a given type T The range boudaries for both minimum and maximu...
Definition: Range.h:24
const ValueType & value() const
Get the value
Definition: FrameInfo.h:1143
friend std::ostream & operator<<(std::ostream &stream, const FileDescription &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:1533
File description
Definition: FrameInfo.h:1047
const ValueType & value() const
Get the value
Definition: FrameInfo.h:82
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:1507
friend std::istream & operator>>(std::istream &stream, FileVersion &value)
Operator to set the value from a stream
Definition: FrameInfo.h:745
friend std::istream & operator>>(std::istream &stream, ProductVersion &value)
Operator to set the value from a stream
Definition: FrameInfo.h:384
void traverseValues(const F &f) const
Traverse the entire tree using the given function with the value of the member as parameter...
Definition: FrameInfo.h:2075
friend std::istream & operator>>(std::istream &stream, ZividAPI &value)
Operator to set the value from a stream
Definition: FrameInfo.h:1005
friend std::istream & operator>>(std::istream &stream, SoftwareVersion &value)
Operator to set the value from a stream
Definition: FrameInfo.h:2107
friend std::ostream & operator<<(std::ostream &stream, const FileDescription &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:1100
const ZividCameraToshibaTeli & zividCameraToshibaTeli() const
Get ZividCameraToshibaTeli
Definition: FrameInfo.h:1982
FileDescription(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:633
const ValueType & value() const
Get the value
Definition: FrameInfo.h:1215
std::string toString() const
Get the value as string
const ValueType & value() const
Get the value
Definition: FrameInfo.h:1071
const FileVersion & fileVersion() const
Get FileVersion
Definition: FrameInfo.h:925
File description
Definition: FrameInfo.h:181
bool operator!=(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:1662
friend std::ostream & operator<<(std::ostream &stream, const TimeStamp &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:117
std::string toString() const
Get the value as string
bool operator<(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:1234
const FileVersion & fileVersion() const
Get FileVersion
Definition: FrameInfo.h:493
bool operator>(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:373
bool operator<(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:657
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:532
std::string toString() const
Get the value as string
Definition: FrameInfo.h:644
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:2314
void setFromString(const std::string &value)
Set the value from string
std::string toString() const
Get the value as string
Definition: FrameInfo.h:283
friend std::ostream & operator<<(std::ostream &stream, const FileDescription &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:667
FileVersion(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:1138
const SoftwareVersion & softwareVersion() const
Get SoftwareVersion
Definition: FrameInfo.h:2161
Product version
Definition: FrameInfo.h:325
std::string toString() const
Get the value as string
const Comments & comments() const
Get Comments
Definition: FrameInfo.h:1818
friend std::ostream & operator<<(std::ostream &stream, const FileDescription &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:234
void setFromString(const std::string &value)
Set from the given string
void setFromString(const std::string &value)
Set from the given string
bool operator<(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:729
std::string toString() const
Get the value as string
friend std::ostream & operator<<(std::ostream &stream, const ProductVersion &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:378
bool operator>(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:1528
const ProductVersion & productVersion() const
Get ProductVersion
Definition: FrameInfo.h:506
bool operator!=(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:1157
bool operator==(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:1080
friend std::ostream & operator<<(std::ostream &stream, const FileVersion &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:306
The time of frame capture
Definition: FrameInfo.h:59
void traverseValues(const F &f)
Traverse all members using the given function with the value of the member as parameter
Definition: FrameInfo.h:1849
friend std::istream & operator>>(std::istream &stream, FileVersion &value)
Operator to set the value from a stream
Definition: FrameInfo.h:1178
FileDescription(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:200
File description
Definition: FrameInfo.h:1480
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:352
const ValueType & value() const
Get the value
Definition: FrameInfo.h:277
Product version
Definition: FrameInfo.h:1624
friend std::istream & operator>>(std::istream &stream, FrameInfo &value)
Operator to set the value from a stream
Definition: FrameInfo.h:2356
bool operator==(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:214
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:328
void traverseValues(const F &f) const
Traverse the entire tree using the given function with the value of the member as parameter...
Definition: FrameInfo.h:973
bool operator==(const TimeStamp &other) const
Comparison operator
Definition: FrameInfo.h:97
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:2057
std::string toString() const
Get the value as string
friend std::istream & operator>>(std::istream &stream, FileDescription &value)
Operator to set the value from a stream
Definition: FrameInfo.h:1539
std::string toString() const
Get the value as string
Definition: FrameInfo.h:1510
std::string toString() const
Get the value as string
Definition: FrameInfo.h:1582
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:1555
bool operator!=(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:1085
File version
Definition: FrameInfo.h:1119
void traverseValues(const F &f)
Traverse all members using the given function with the value of the member as parameter
Definition: FrameInfo.h:2084
bool operator<(const TimeStamp &other) const
Comparison operator
Definition: FrameInfo.h:107
const Comments & comments() const
Get Comments
Definition: FrameInfo.h:951
ProductVersion(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:1210
const ValueType & value() const
Get the value
Definition: FrameInfo.h:1576
Definition: Application.h:19
const ValueType & value() const
Get the value
Definition: FrameInfo.h:1648
const ProductVersion & productVersion() const
Get ProductVersion
Definition: FrameInfo.h:938
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:713
FileVersion(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:705
const FileDescription & fileDescription() const
Get FileDescription
Definition: FrameInfo.h:1344
ProductVersion(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:777
The version information for installed software at the time of image capture
Definition: FrameInfo.h:135
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:2066
void traverseValues(const F &f)
Traverse all members using the given function with the value of the member as parameter
Definition: FrameInfo.h:550
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:1389
const ProductVersion & productVersion() const
Get ProductVersion
Definition: FrameInfo.h:1372
Definitions for export of DLL interfaces
std::chrono::system_clock::time_point ValueType
The type of the underlying value
Definition: FrameInfo.h:62
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:208
const FileDescription & fileDescription() const
Get FileDescription
Definition: FrameInfo.h:478
friend std::ostream & operator<<(std::ostream &stream, const ProductVersion &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:1244
bool operator<(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:801
bool operator==(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:1224
Product version
Definition: FrameInfo.h:758
bool operator>(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:229
friend std::istream & operator>>(std::istream &stream, FileDescription &value)
Operator to set the value from a stream
Definition: FrameInfo.h:1106
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:641
bool operator<(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:1523
std::string toString() const
Get the value as string
Definition: FrameInfo.h:1149
void traverseValues(const F &f) const
Traverse the entire tree using the given function with the value of the member as parameter...
Definition: FrameInfo.h:2328
friend std::istream & operator>>(std::istream &stream, FileDescription &value)
Operator to set the value from a stream
Definition: FrameInfo.h:673
const Comments & comments() const
Get Comments
Definition: FrameInfo.h:1385
void setFromString(const std::string &value)
Set from the given string
void traverseValues(const F &f) const
Traverse the entire tree using the given function with the value of the member as parameter...
Definition: FrameInfo.h:541
Class describing a range of values
void traverseValues(const F &f) const
Traverse the entire tree using the given function with the value of the member as parameter...
Definition: FrameInfo.h:1840
const TimeStamp & timeStamp() const
Get TimeStamp
Definition: FrameInfo.h:2148
bool operator!=(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:796
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:2321
const FileVersion & fileVersion() const
Get FileVersion
Definition: FrameInfo.h:1359
void traverseValues(const F &f)
Traverse all members using the given function with the value of the member as parameter
Definition: FrameInfo.h:982
File version
Definition: FrameInfo.h:1552
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:955
File description
Definition: FrameInfo.h:614
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:617
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:1627
friend std::istream & operator>>(std::istream &stream, FileDescription &value)
Operator to set the value from a stream
Definition: FrameInfo.h:240
Version information for the Zivid API library
Definition: FrameInfo.h:591
bool operator<(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:224
std::string toString() const
Get the value as string
Definition: FrameInfo.h:1221
friend std::istream & operator>>(std::istream &stream, FileVersion &value)
Operator to set the value from a stream
Definition: FrameInfo.h:1611
std::string toString() const
Get the value as string
Definition: FrameInfo.h:788
ZIVID_COMMON std::string toString(const std::exception &exception)
Get string representation of the exception
bool operator==(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:1585
friend std::ostream & operator<<(std::ostream &stream, const SoftwareVersion &value)
Operator to send the value as string to a stream
Definition: FrameInfo.h:2095
bool operator<(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:1667
const ZividAPI & zividAPI() const
Get ZividAPI
Definition: FrameInfo.h:1941
bool operator>(const TimeStamp &other) const
Comparison operator
Definition: FrameInfo.h:112
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:1050
const ValueType & value() const
Get the value
Definition: FrameInfo.h:349
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:689
bool operator<(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:296
bool operator==(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:719
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:1218
FileVersion(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:1571
bool operator>(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:1095
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:1822
void setFromString(const std::string &value)
Set from the given string
void traverseValues(const F &f)
Traverse all members using the given function with the value of the member as parameter
Definition: FrameInfo.h:2335
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:964
std::string toString() const
Get the value as string
Definition: FrameInfo.h:211
friend std::istream & operator>>(std::istream &stream, FileVersion &value)
Operator to set the value from a stream
Definition: FrameInfo.h:312
const ProductVersion & productVersion() const
Get ProductVersion
Definition: FrameInfo.h:1805
bool operator<(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:1162
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:1146
Range< ValueType > range() const
The range of valid values
Definition: FrameInfo.h:85
const FileDescription & fileDescription() const
Get FileDescription
Definition: FrameInfo.h:1777
std::string toString() const
Get the value as string
FileVersion(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:272
bool operator==(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:1513
bool operator>(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:1239
friend std::istream & operator>>(std::istream &stream, ProductVersion &value)
Operator to set the value from a stream
Definition: FrameInfo.h:817
FileDescription(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:1066
bool operator==(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:1657
FileDescription(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:1499
std::string toString() const
Get the value as string
Definition: FrameInfo.h:1077
friend std::istream & operator>>(std::istream &stream, TimeStamp &value)
Operator to set the value from a stream
Definition: FrameInfo.h:123
bool operator>(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:734
const ValueType & value() const
Get the value
Definition: FrameInfo.h:710
std::string toString() const
Get the value as string
Definition: FrameInfo.h:716
Version information for the ZividStudio applicaton
Definition: FrameInfo.h:158
bool operator!=(const TimeStamp &other) const
Comparison operator
Definition: FrameInfo.h:102
friend std::ostream & operator<<(std::ostream &stream, const ZividCameraToshibaTeli &value)
Operator to send the value as string to a stream
Definition: FrameInfo.h:1427
bool operator!=(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:1229
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:1194
bool operator>(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:806
friend std::ostream & operator<<(std::ostream &stream, const ProductVersion &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:1677
std::string toString() const
Get the value as string
Definition: FrameInfo.h:355
bool operator==(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:791
bool operator>(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:1672
Various information for a frame
Definition: FrameInfo.h:36
Product version
Definition: FrameInfo.h:1191
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:785
const ZividStudio & zividStudio() const
Get ZividStudio
Definition: FrameInfo.h:1900
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:1831
const ValueType & value() const
Get the value
Definition: FrameInfo.h:782
const ValueType & value() const
Get the value
Definition: FrameInfo.h:205
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:1579
void setFromString(const std::string &value)
Set from the given string
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:256
bool operator<(const ProductVersion &other) const
Comparison operator
Definition: FrameInfo.h:368
Version information for the ZividCameraFile driver
Definition: FrameInfo.h:1457
std::string toString() const
Get the value as string
friend std::istream & operator>>(std::istream &stream, ZividCameraFile &value)
Operator to set the value from a stream
Definition: FrameInfo.h:1872
bool operator==(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:1152
friend std::ostream & operator<<(std::ostream &stream, const ZividCameraFile &value)
Operator to send the value as string to a stream
Definition: FrameInfo.h:1860
std::string ValueType
The type of the underlying value
Definition: FrameInfo.h:1122
bool operator>(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:1167
bool operator>(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:662
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:280
std::string toString() const
Get the value as string
Definition: FrameInfo.h:1654
bool operator==(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:286
File version
Definition: FrameInfo.h:686
friend std::istream & operator>>(std::istream &stream, ZividStudio &value)
Operator to set the value from a stream
Definition: FrameInfo.h:573
bool operator<(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:1090
bool operator!=(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:1518
ProductVersion(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:344
const ValueType & value() const
Get the value
Definition: FrameInfo.h:638
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:1074
bool operator!=(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:652
friend std::ostream & operator<<(std::ostream &stream, const FileVersion &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:739
friend std::ostream & operator<<(std::ostream &stream, const ZividStudio &value)
Operator to send the value as string to a stream
Definition: FrameInfo.h:561
bool operator!=(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:724
bool operator!=(const FileDescription &other) const
Comparison operator
Definition: FrameInfo.h:219
friend std::istream & operator>>(std::istream &stream, ProductVersion &value)
Operator to set the value from a stream
Definition: FrameInfo.h:1683
constexpr TimeStamp(ValueType value) noexcept(std::is_nothrow_move_constructible< ValueType >::value)
Constructor
Definition: FrameInfo.h:77
void setFromString(const std::string &value)
Set the value from string
Definition: FrameInfo.h:1651
friend std::istream & operator>>(std::istream &stream, ProductVersion &value)
Operator to set the value from a stream
Definition: FrameInfo.h:1250
friend std::ostream & operator<<(std::ostream &stream, const FrameInfo &value)
Operator to send the value as string to a stream
Definition: FrameInfo.h:2344
bool operator>(const FileVersion &other) const
Comparison operator
Definition: FrameInfo.h:1600
void setFromString(const std::string &value)
Set from the given string
const FileVersion & fileVersion() const
Get FileVersion
Definition: FrameInfo.h:1792
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter
Definition: FrameInfo.h:523
const FileDescription & fileDescription() const
Get FileDescription
Definition: FrameInfo.h:910
friend std::ostream & operator<<(std::ostream &stream, const FileVersion &value)
Operator to serialize the value to a stream
Definition: FrameInfo.h:1172
void traverseValues(const F &f) const
Traverse the entire tree using the given function with the value of the member as parameter...
Definition: FrameInfo.h:1407