112# pragma warning(push)
113# pragma warning(disable : 4251)
127 static constexpr const char *path{
"" };
130 static constexpr const char *name{
"Settings2D" };
133 static constexpr const char *description{
134 R
"description(Settings used when capturing 2D images with a Zivid camera)description"
137 static constexpr size_t version{ 3 };
147 static constexpr std::array<uint8_t, 3> binaryId{
's',
't',
'2' };
159 static constexpr const char *path{
"Acquisition" };
162 static constexpr const char *name{
"Acquisition" };
165 static constexpr const char *description{ R
"description(Settings for a single acquisition)description" };
177 static constexpr const char *path{
"Acquisition/Aperture" };
180 static constexpr const char *name{
"Aperture" };
183 static constexpr const char *description{
184 R
"description(Aperture setting for the camera. Specified as an f-number (the ratio of lens focal length to
185the effective aperture diameter).
195 return { 1.4, 32.0 };
203 : m_opt{ verifyValue(value) }
224 return m_opt == other.m_opt;
230 return m_opt != other.m_opt;
236 return m_opt < other.m_opt;
242 return m_opt > other.m_opt;
252 void setFromString(
const std::string &value);
254 constexpr ValueType
static verifyValue(
const ValueType &value)
258 :
throw std::out_of_range{
"Aperture{ " + std::to_string(value) +
" } is not in range ["
263 Zivid::DataModel::Detail::Optional<double> m_opt;
265 friend struct DataModel::Detail::Befriend<
Aperture>;
288 static constexpr const char *path{
"Acquisition/Brightness" };
291 static constexpr const char *name{
"Brightness" };
294 static constexpr const char *description{
295 R
"description(Brightness controls the light output from the projector.
297Brightness above 1.0 may be needed when the distance between the camera and the scene is large,
298or in case of high levels of ambient lighting. Brightness above 1.0 is supported on Zivid One
301When brightness is above 1.0 the duty cycle of the camera (the percentage of time the camera
302can capture) will be reduced. For Zivid One Plus the duty cycle in boost mode is 50%. For Zivid
303Two the duty cycle is reduced linearly from 100% at brightness 1.0, to 50% at brightness 1.8.
304The duty cycle is calculated over a 10 second period. This limitation is enforced automatically
305by the camera. Calling capture when the duty cycle limit has been reached will cause the camera
306to first wait (sleep) for a duration of time to cool down, before capture will start.
324 : m_opt{ verifyValue(value) }
345 return m_opt == other.m_opt;
351 return m_opt != other.m_opt;
357 return m_opt < other.m_opt;
363 return m_opt > other.m_opt;
373 void setFromString(
const std::string &value);
375 constexpr ValueType
static verifyValue(
const ValueType &value)
379 :
throw std::out_of_range{
"Brightness{ " + std::to_string(value)
380 +
" } is not in range [" + std::to_string(
validRange().min())
381 +
", " + std::to_string(
validRange().max()) +
"]" };
384 Zivid::DataModel::Detail::Optional<double> m_opt;
386 friend struct DataModel::Detail::Befriend<
Brightness>;
397 static constexpr const char *path{
"Acquisition/ExposureTime" };
400 static constexpr const char *name{
"ExposureTime" };
403 static constexpr const char *description{ R
"description(Exposure time for the image)description" };
411 return { std::chrono::microseconds{ 1677 }, std::chrono::microseconds{ 100000 } };
419 : m_opt{ verifyValue(value) }
426 std::chrono::microseconds
value()
const;
440 return m_opt == other.m_opt;
446 return m_opt != other.m_opt;
452 return m_opt < other.m_opt;
458 return m_opt > other.m_opt;
468 void setFromString(
const std::string &value);
470 constexpr ValueType
static verifyValue(
const ValueType &value)
474 :
throw std::out_of_range{
"ExposureTime{ " + std::to_string(value.count())
475 +
" } is not in range ["
476 + std::to_string(
validRange().min().count()) +
", "
477 + std::to_string(
validRange().max().count()) +
"]" };
480 Zivid::DataModel::Detail::Optional<std::chrono::microseconds> m_opt;
482 friend struct DataModel::Detail::Befriend<
ExposureTime>;
493 static constexpr const char *path{
"Acquisition/Gain" };
496 static constexpr const char *name{
"Gain" };
499 static constexpr const char *description{ R
"description(Analog gain in the camera)description" };
514 explicit constexpr Gain(
double value)
515 : m_opt{ verifyValue(value) }
536 return m_opt == other.m_opt;
542 return m_opt != other.m_opt;
548 return m_opt < other.m_opt;
554 return m_opt > other.m_opt;
564 void setFromString(
const std::string &value);
566 constexpr ValueType
static verifyValue(
const ValueType &value)
570 :
throw std::out_of_range{
"Gain{ " + std::to_string(value) +
" } is not in range ["
575 Zivid::DataModel::Detail::Optional<double> m_opt;
577 friend struct DataModel::Detail::Befriend<
Gain>;
606 typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0,
607 typename std::enable_if<
608 Zivid::Detail::TypeTraits::AllArgsAreInTuple<
Descendants,
typename std::decay<Args>::type...>::
612 template<typename... Args>
616 using namespace Zivid::Detail::TypeTraits;
619 AllArgsDecayedAreUnique<Args...>::value,
620 "Found duplicate types among the arguments passed to Acquisition(...). "
621 "Types should be listed at most once.");
623 set(std::forward<Args>(args)...);
640 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 2,
int>::type = 0>
642 template<typename... Args>
646 using namespace Zivid::Detail::TypeTraits;
648 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
650 AllArgsAreDescendantNodes::value,
"All arguments passed to set(...) must be descendant nodes.");
653 AllArgsDecayedAreUnique<Args...>::value,
654 "Found duplicate types among the arguments passed to set(...). "
655 "Types should be listed at most once.");
657 Zivid::DataModel::Detail::invokeSetWithEachArgument(*
this, std::forward<Args>(args)...);
675 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0>
677 template<typename... Args>
681 using namespace Zivid::Detail::TypeTraits;
683 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
685 AllArgsAreDescendantNodes::value,
686 "All arguments passed to copyWith(...) must be descendant nodes.");
689 AllArgsDecayedAreUnique<Args...>::value,
690 "Found duplicate types among the arguments passed to copyWith(...). "
691 "Types should be listed at most once.");
694 copy.
set(std::forward<Args>(args)...);
732 m_brightness = value;
739 return m_exposureTime;
745 return m_exposureTime;
751 m_exposureTime = value;
776 typename std::enable_if<std::is_same<T, Settings2D::Acquisition::Aperture>::value,
int>::type = 0>
784 typename std::enable_if<std::is_same<T, Settings2D::Acquisition::Brightness>::value,
int>::type = 0>
792 typename std::enable_if<std::is_same<T, Settings2D::Acquisition::ExposureTime>::value,
int>::type = 0>
795 return m_exposureTime;
800 typename std::enable_if<std::is_same<T, Settings2D::Acquisition::Gain>::value,
int>::type = 0>
806 template<size_t i, typename std::enable_if<i == 0, int>::type = 0>
812 template<size_t i, typename std::enable_if<i == 1, int>::type = 0>
818 template<size_t i, typename std::enable_if<i == 2, int>::type = 0>
821 return m_exposureTime;
824 template<size_t i, typename std::enable_if<i == 3, int>::type = 0>
866 void setFromString(
const std::string &value);
868 void setFromString(
const std::string &fullPath,
const std::string &value);
870 std::string getString(
const std::string &fullPath)
const;
873 Brightness m_brightness;
874 ExposureTime m_exposureTime;
877 friend struct DataModel::Detail::Befriend<
Acquisition>;
888 static constexpr const char *path{
"Acquisitions" };
891 static constexpr const char *name{
"Acquisitions" };
894 static constexpr const char *description{
895 R
"description(List of acquisitions. Note that the Zivid SDK only supports a single acquisition per capture in 2D mode.)description"
904 return { 0, std::numeric_limits<ValueType::size_type>::max() };
912 : m_value{ std::move(value) }
916 explicit Acquisitions(std::initializer_list<Settings2D::Acquisition> value)
921 const std::vector<Settings2D::Acquisition> &
value()
const;
927 std::size_t
size() const noexcept;
930 bool isEmpty() const noexcept;
937 template<typename... Args>
938 void emplaceBack(Args &&...args)
940 m_value.emplace_back(std::forward<Args>(args)...);
975 for(
auto &child : m_value)
985 for(
const auto &child : m_value)
994 return m_value == other.m_value;
1000 return m_value != other.m_value;
1010 void setFromString(
const std::string &value);
1012 std::vector<Settings2D::Acquisition> m_value{};
1014 friend struct DataModel::Detail::Befriend<
Acquisitions>;
1025 static constexpr const char *path{
"Processing" };
1028 static constexpr const char *name{
"Processing" };
1031 static constexpr const char *description{ R
"description(Processing related settings)description" };
1041 static constexpr const char *path{
"Processing/Color" };
1044 static constexpr const char *name{
"Color" };
1047 static constexpr const char *description{ R
"description(Color settings)description" };
1057 static constexpr const char *path{
"Processing/Color/Balance" };
1060 static constexpr const char *name{
"Balance" };
1063 static constexpr const char *description{ R
"description(Color balance settings)description" };
1073 static constexpr const char *path{
"Processing/Color/Balance/Blue" };
1076 static constexpr const char *name{
"Blue" };
1079 static constexpr const char *description{
1080 R
"description(Digital gain applied to blue channel)description"
1089 return { 1.0, 8.0 };
1096 explicit constexpr Blue(
double value)
1097 : m_opt{ verifyValue(value) }
1118 return m_opt == other.m_opt;
1124 return m_opt != other.m_opt;
1130 return m_opt < other.m_opt;
1136 return m_opt > other.m_opt;
1146 void setFromString(
const std::string &value);
1148 constexpr ValueType
static verifyValue(
const ValueType &value)
1152 :
throw std::out_of_range{
"Blue{ " + std::to_string(value)
1153 +
" } is not in range ["
1155 + std::to_string(
validRange().max()) +
"]" };
1158 Zivid::DataModel::Detail::Optional<double> m_opt;
1160 friend struct DataModel::Detail::Befriend<
Blue>;
1171 static constexpr const char *path{
"Processing/Color/Balance/Green" };
1174 static constexpr const char *name{
"Green" };
1177 static constexpr const char *description{
1178 R
"description(Digital gain applied to green channel)description"
1187 return { 1.0, 8.0 };
1195 : m_opt{ verifyValue(value) }
1216 return m_opt == other.m_opt;
1222 return m_opt != other.m_opt;
1228 return m_opt < other.m_opt;
1234 return m_opt > other.m_opt;
1244 void setFromString(
const std::string &value);
1246 constexpr ValueType
static verifyValue(
const ValueType &value)
1250 :
throw std::out_of_range{
"Green{ " + std::to_string(value)
1251 +
" } is not in range ["
1253 + std::to_string(
validRange().max()) +
"]" };
1256 Zivid::DataModel::Detail::Optional<double> m_opt;
1258 friend struct DataModel::Detail::Befriend<
Green>;
1269 static constexpr const char *path{
"Processing/Color/Balance/Red" };
1272 static constexpr const char *name{
"Red" };
1275 static constexpr const char *description{
1276 R
"description(Digital gain applied to red channel)description"
1285 return { 1.0, 8.0 };
1292 explicit constexpr Red(
double value)
1293 : m_opt{ verifyValue(value) }
1314 return m_opt == other.m_opt;
1320 return m_opt != other.m_opt;
1326 return m_opt < other.m_opt;
1332 return m_opt > other.m_opt;
1342 void setFromString(
const std::string &value);
1344 constexpr ValueType
static verifyValue(
const ValueType &value)
1348 :
throw std::out_of_range{
"Red{ " + std::to_string(value)
1349 +
" } is not in range ["
1351 + std::to_string(
validRange().max()) +
"]" };
1354 Zivid::DataModel::Detail::Optional<double> m_opt;
1356 friend struct DataModel::Detail::Befriend<
Red>;
1383 typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0,
1384 typename std::enable_if<
1385 Zivid::Detail::TypeTraits::
1386 AllArgsAreInTuple<
Descendants,
typename std::decay<Args>::type...>::value,
1389 template<typename... Args>
1393 using namespace Zivid::Detail::TypeTraits;
1396 AllArgsDecayedAreUnique<Args...>::value,
1397 "Found duplicate types among the arguments passed to Balance(...). "
1398 "Types should be listed at most once.");
1400 set(std::forward<Args>(args)...);
1416 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 2,
int>::type = 0>
1418 template<typename... Args>
1422 using namespace Zivid::Detail::TypeTraits;
1424 using AllArgsAreDescendantNodes =
1425 AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
1427 AllArgsAreDescendantNodes::value,
1428 "All arguments passed to set(...) must be descendant nodes.");
1431 AllArgsDecayedAreUnique<Args...>::value,
1432 "Found duplicate types among the arguments passed to set(...). "
1433 "Types should be listed at most once.");
1435 Zivid::DataModel::Detail::invokeSetWithEachArgument(*
this, std::forward<Args>(args)...);
1452 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0>
1454 template<typename... Args>
1458 using namespace Zivid::Detail::TypeTraits;
1460 using AllArgsAreDescendantNodes =
1461 AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
1463 AllArgsAreDescendantNodes::value,
1464 "All arguments passed to copyWith(...) must be descendant nodes.");
1467 AllArgsDecayedAreUnique<Args...>::value,
1468 "Found duplicate types among the arguments passed to copyWith(...). "
1469 "Types should be listed at most once.");
1472 copy.
set(std::forward<Args>(args)...);
1535 typename std::enable_if<
1536 std::is_same<T, Settings2D::Processing::Color::Balance::Blue>::value,
1545 typename std::enable_if<
1546 std::is_same<T, Settings2D::Processing::Color::Balance::Green>::value,
1555 typename std::enable_if<
1556 std::is_same<T, Settings2D::Processing::Color::Balance::Red>::value,
1563 template<size_t i, typename std::enable_if<i == 0, int>::type = 0>
1569 template<size_t i, typename std::enable_if<i == 1, int>::type = 0>
1575 template<size_t i, typename std::enable_if<i == 2, int>::type = 0>
1582 template<
typename F>
1591 template<
typename F>
1615 void setFromString(
const std::string &value);
1617 void setFromString(
const std::string &fullPath,
const std::string &value);
1619 std::string getString(
const std::string &fullPath)
const;
1625 friend struct DataModel::Detail::Befriend<
Balance>;
1638 static constexpr const char *path{
"Processing/Color/Gamma" };
1641 static constexpr const char *name{
"Gamma" };
1644 static constexpr const char *description{
1645 R
"description(Gamma applied to the color values. Gamma less than 1 makes the colors brighter, while gamma
1646greater than 1 makes the colors darker.
1656 return { 0.25, 1.5 };
1664 : m_opt{ verifyValue(value) }
1685 return m_opt == other.m_opt;
1691 return m_opt != other.m_opt;
1697 return m_opt < other.m_opt;
1703 return m_opt > other.m_opt;
1713 void setFromString(
const std::string &value);
1715 constexpr ValueType
static verifyValue(
const ValueType &value)
1719 :
throw std::out_of_range{
"Gamma{ " + std::to_string(value) +
" } is not in range ["
1721 + std::to_string(
validRange().max()) +
"]" };
1724 Zivid::DataModel::Detail::Optional<double> m_opt;
1726 friend struct DataModel::Detail::Befriend<
Gamma>;
1757 typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0,
1758 typename std::enable_if<
1759 Zivid::Detail::TypeTraits::AllArgsAreInTuple<
Descendants,
typename std::decay<Args>::type...>::
1763 template<typename... Args>
1767 using namespace Zivid::Detail::TypeTraits;
1770 AllArgsDecayedAreUnique<Args...>::value,
1771 "Found duplicate types among the arguments passed to Color(...). "
1772 "Types should be listed at most once.");
1774 set(std::forward<Args>(args)...);
1792 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 2,
int>::type = 0>
1794 template<typename... Args>
1798 using namespace Zivid::Detail::TypeTraits;
1800 using AllArgsAreDescendantNodes =
1801 AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
1803 AllArgsAreDescendantNodes::value,
"All arguments passed to set(...) must be descendant nodes.");
1806 AllArgsDecayedAreUnique<Args...>::value,
1807 "Found duplicate types among the arguments passed to set(...). "
1808 "Types should be listed at most once.");
1810 Zivid::DataModel::Detail::invokeSetWithEachArgument(*
this, std::forward<Args>(args)...);
1829 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0>
1831 template<typename... Args>
1835 using namespace Zivid::Detail::TypeTraits;
1837 using AllArgsAreDescendantNodes =
1838 AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
1840 AllArgsAreDescendantNodes::value,
1841 "All arguments passed to copyWith(...) must be descendant nodes.");
1844 AllArgsDecayedAreUnique<Args...>::value,
1845 "Found duplicate types among the arguments passed to copyWith(...). "
1846 "Types should be listed at most once.");
1849 copy.
set(std::forward<Args>(args)...);
1875 m_balance.
set(value);
1882 m_balance.
set(value);
1889 m_balance.
set(value);
1914 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance>::value,
int>::type =
1923 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance::Blue>::value,
int>::
1933 enable_if<std::is_same<T, Settings2D::Processing::Color::Balance::Green>::value,
int>::type = 0>
1941 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance::Red>::value,
int>::
1950 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Gamma>::value,
int>::type =
1957 template<size_t i, typename std::enable_if<i == 0, int>::type = 0>
1963 template<size_t i, typename std::enable_if<i == 1, int>::type = 0>
1970 template<
typename F>
1978 template<
typename F>
2001 void setFromString(
const std::string &value);
2003 void setFromString(
const std::string &fullPath,
const std::string &value);
2005 std::string getString(
const std::string &fullPath)
const;
2010 friend struct DataModel::Detail::Befriend<
Color>;
2043 typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0,
2044 typename std::enable_if<
2045 Zivid::Detail::TypeTraits::AllArgsAreInTuple<
Descendants,
typename std::decay<Args>::type...>::
2049 template<typename... Args>
2053 using namespace Zivid::Detail::TypeTraits;
2056 AllArgsDecayedAreUnique<Args...>::value,
2057 "Found duplicate types among the arguments passed to Processing(...). "
2058 "Types should be listed at most once.");
2060 set(std::forward<Args>(args)...);
2079 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 2,
int>::type = 0>
2081 template<typename... Args>
2085 using namespace Zivid::Detail::TypeTraits;
2087 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
2089 AllArgsAreDescendantNodes::value,
"All arguments passed to set(...) must be descendant nodes.");
2092 AllArgsDecayedAreUnique<Args...>::value,
2093 "Found duplicate types among the arguments passed to set(...). "
2094 "Types should be listed at most once.");
2096 Zivid::DataModel::Detail::invokeSetWithEachArgument(*
this, std::forward<Args>(args)...);
2116 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0>
2118 template<typename... Args>
2122 using namespace Zivid::Detail::TypeTraits;
2124 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
2126 AllArgsAreDescendantNodes::value,
2127 "All arguments passed to copyWith(...) must be descendant nodes.");
2130 AllArgsDecayedAreUnique<Args...>::value,
2131 "Found duplicate types among the arguments passed to copyWith(...). "
2132 "Types should be listed at most once.");
2135 copy.
set(std::forward<Args>(args)...);
2195 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color>::value,
int>::type = 0>
2203 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance>::value,
int>::type = 0>
2211 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance::Blue>::value,
int>::
2220 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance::Green>::value,
int>::
2229 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance::Red>::value,
int>::
2238 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Gamma>::value,
int>::type = 0>
2244 template<size_t i, typename std::enable_if<i == 0, int>::type = 0>
2251 template<
typename F>
2258 template<
typename F>
2280 void setFromString(
const std::string &value);
2282 void setFromString(
const std::string &fullPath,
const std::string &value);
2284 std::string getString(
const std::string &fullPath)
const;
2288 friend struct DataModel::Detail::Befriend<
Processing>;
2328 typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0,
2329 typename std::enable_if<
2330 Zivid::Detail::TypeTraits::AllArgsAreInTuple<
Descendants,
typename std::decay<Args>::type...>::value,
2333 template<typename... Args>
2337 using namespace Zivid::Detail::TypeTraits;
2340 AllArgsDecayedAreUnique<Args...>::value,
2341 "Found duplicate types among the arguments passed to Settings2D(...). "
2342 "Types should be listed at most once.");
2344 set(std::forward<Args>(args)...);
2365 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 2,
int>::type = 0>
2367 template<typename... Args>
2371 using namespace Zivid::Detail::TypeTraits;
2373 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
2375 AllArgsAreDescendantNodes::value,
"All arguments passed to set(...) must be descendant nodes.");
2378 AllArgsDecayedAreUnique<Args...>::value,
2379 "Found duplicate types among the arguments passed to set(...). "
2380 "Types should be listed at most once.");
2382 Zivid::DataModel::Detail::invokeSetWithEachArgument(*
this, std::forward<Args>(args)...);
2404 template<
typename... Args,
typename std::enable_if<
sizeof...(Args) >= 1,
int>::type = 0>
2406 template<typename... Args>
2410 using namespace Zivid::Detail::TypeTraits;
2412 using AllArgsAreDescendantNodes = AllArgsAreInTuple<Descendants, typename std::decay<Args>::type...>;
2414 AllArgsAreDescendantNodes::value,
"All arguments passed to copyWith(...) must be descendant nodes.");
2417 AllArgsDecayedAreUnique<Args...>::value,
2418 "Found duplicate types among the arguments passed to copyWith(...). "
2419 "Types should be listed at most once.");
2422 copy.
set(std::forward<Args>(args)...);
2429 return m_acquisitions;
2435 return m_acquisitions;
2441 m_acquisitions = value;
2448 return m_processing;
2454 return m_processing;
2460 m_processing = value;
2467 m_processing.
set(value);
2474 m_processing.
set(value);
2481 m_processing.
set(value);
2488 m_processing.
set(value);
2495 m_processing.
set(value);
2502 m_processing.
set(value);
2506 template<typename T, typename std::enable_if<std::is_same<T, Settings2D::Acquisitions>::value,
int>::type = 0>
2509 return m_acquisitions;
2512 template<typename T, typename std::enable_if<std::is_same<T, Settings2D::Processing>::value,
int>::type = 0>
2515 return m_processing;
2520 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color>::value,
int>::type = 0>
2528 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance>::value,
int>::type = 0>
2536 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance::Blue>::value,
int>::type =
2545 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance::Green>::value,
int>::type =
2554 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Balance::Red>::value,
int>::type = 0>
2562 typename std::enable_if<std::is_same<T, Settings2D::Processing::Color::Gamma>::value,
int>::type = 0>
2568 template<size_t i, typename std::enable_if<i == 0, int>::type = 0>
2571 return m_acquisitions;
2574 template<size_t i, typename std::enable_if<i == 1, int>::type = 0>
2577 return m_processing;
2581 template<
typename F>
2589 template<
typename F>
2612 void save(
const std::string &fileName)
const;
2615 void load(
const std::string &fileName);
2618 void setFromString(
const std::string &value);
2620 void setFromString(
const std::string &fullPath,
const std::string &value);
2622 std::string getString(
const std::string &fullPath)
const;
2627 friend struct DataModel::Detail::Befriend<
Settings2D>;
2632 struct Settings2D::Version<3>
2641# pragma warning(pop)
2645# if !(defined(_MSC_VER) && (_MSC_VER <= 1900))
2650 struct tuple_size<
Zivid::Settings2D::Processing> : integral_constant<size_t, 1>
2654 struct tuple_element<i,
Zivid::Settings2D::Processing>
2656 static_assert(i < tuple_size<Zivid::Settings2D::Processing>::value,
"Index must be less than 1");
2659 =
decltype(declval<Zivid::Settings2D::Processing>().get<i>());
2663 struct tuple_size<
Zivid::Settings2D::Processing::Color> : integral_constant<size_t, 2>
2667 struct tuple_element<i,
Zivid::Settings2D::Processing::Color>
2669 static_assert(i < tuple_size<Zivid::Settings2D::Processing::Color>::value,
"Index must be less than 2");
2672 =
decltype(declval<Zivid::Settings2D::Processing::Color>().get<i>());
2676 struct tuple_size<
Zivid::Settings2D::Processing::Color::Balance> : integral_constant<size_t, 3>
2680 struct tuple_element<i,
Zivid::Settings2D::Processing::Color::Balance>
2683 i < tuple_size<Zivid::Settings2D::Processing::Color::Balance>::value,
2684 "Index must be less than 3");
2687 =
decltype(declval<Zivid::Settings2D::Processing::Color::Balance>().get<i>());
2691 struct tuple_size<
Zivid::Settings2D> : integral_constant<size_t, 2>
2695 struct tuple_element<i,
Zivid::Settings2D>
2697 static_assert(i < tuple_size<Zivid::Settings2D>::value,
"Index must be less than 2");
2700 =
decltype(declval<Zivid::Settings2D>().get<i>());
2709#if defined(__has_include) && !defined(NO_DOC)
2710# if __has_include("Zivid/Settings2DInternal.h") && __has_include("Zivid/DataModelSerializationMetaData.h")
2711# include "Zivid/Settings2DInternal.h"
#define ZIVID_CORE_EXPORT
Definition: CoreExport.h:101
Class describing a range of values for a given type T
Definition: Range.h:102
Aperture setting for the camera. Specified as an f-number (the ratio of lens focal length to the effe...
Definition: Settings2D.h:171
void reset()
Reset the node to unset state
bool operator!=(const Aperture &other) const
Comparison operator
Definition: Settings2D.h:228
friend std::ostream & operator<<(std::ostream &stream, const Aperture &value)
Operator to serialize the value to a stream
Definition: Settings2D.h:246
bool operator<(const Aperture &other) const
Comparison operator
Definition: Settings2D.h:234
constexpr Aperture(double value)
Constructor
Definition: Settings2D.h:202
static constexpr Range< double > validRange()
The range of valid values for Aperture
Definition: Settings2D.h:193
std::string toString() const
Get the value as string
double value() const
Get the value
bool operator>(const Aperture &other) const
Comparison operator
Definition: Settings2D.h:240
Aperture()=default
Default constructor
double ValueType
The type of the underlying value
Definition: Settings2D.h:190
bool operator==(const Aperture &other) const
Comparison operator
Definition: Settings2D.h:222
bool hasValue() const
Check if the value is set
Brightness controls the light output from the projector.
Definition: Settings2D.h:282
bool operator==(const Brightness &other) const
Comparison operator
Definition: Settings2D.h:343
bool operator>(const Brightness &other) const
Comparison operator
Definition: Settings2D.h:361
bool operator<(const Brightness &other) const
Comparison operator
Definition: Settings2D.h:355
static constexpr Range< double > validRange()
The range of valid values for Brightness
Definition: Settings2D.h:314
constexpr Brightness(double value)
Constructor
Definition: Settings2D.h:323
std::string toString() const
Get the value as string
bool operator!=(const Brightness &other) const
Comparison operator
Definition: Settings2D.h:349
friend std::ostream & operator<<(std::ostream &stream, const Brightness &value)
Operator to serialize the value to a stream
Definition: Settings2D.h:367
double value() const
Get the value
Brightness()=default
Default constructor
bool hasValue() const
Check if the value is set
void reset()
Reset the node to unset state
double ValueType
The type of the underlying value
Definition: Settings2D.h:311
Exposure time for the image
Definition: Settings2D.h:391
bool operator>(const ExposureTime &other) const
Comparison operator
Definition: Settings2D.h:456
std::chrono::microseconds ValueType
The type of the underlying value
Definition: Settings2D.h:406
void reset()
Reset the node to unset state
constexpr ExposureTime(std::chrono::microseconds value)
Constructor
Definition: Settings2D.h:418
std::chrono::microseconds value() const
Get the value
bool operator<(const ExposureTime &other) const
Comparison operator
Definition: Settings2D.h:450
static constexpr Range< std::chrono::microseconds > validRange()
The range of valid values for ExposureTime
Definition: Settings2D.h:409
bool operator!=(const ExposureTime &other) const
Comparison operator
Definition: Settings2D.h:444
std::string toString() const
Get the value as string
ExposureTime()=default
Default constructor
bool operator==(const ExposureTime &other) const
Comparison operator
Definition: Settings2D.h:438
friend std::ostream & operator<<(std::ostream &stream, const ExposureTime &value)
Operator to serialize the value to a stream
Definition: Settings2D.h:462
bool hasValue() const
Check if the value is set
Analog gain in the camera
Definition: Settings2D.h:487
bool operator>(const Gain &other) const
Comparison operator
Definition: Settings2D.h:552
bool operator!=(const Gain &other) const
Comparison operator
Definition: Settings2D.h:540
bool operator==(const Gain &other) const
Comparison operator
Definition: Settings2D.h:534
friend std::ostream & operator<<(std::ostream &stream, const Gain &value)
Operator to serialize the value to a stream
Definition: Settings2D.h:558
double ValueType
The type of the underlying value
Definition: Settings2D.h:502
Gain()=default
Default constructor
std::string toString() const
Get the value as string
void reset()
Reset the node to unset state
constexpr Gain(double value)
Constructor
Definition: Settings2D.h:514
double value() const
Get the value
bool hasValue() const
Check if the value is set
static constexpr Range< double > validRange()
The range of valid values for Gain
Definition: Settings2D.h:505
bool operator<(const Gain &other) const
Comparison operator
Definition: Settings2D.h:546
Settings for a single acquisition
Definition: Settings2D.h:153
const Settings2D::Acquisition::Gain & get() const
Definition: Settings2D.h:801
const ExposureTime & exposureTime() const
Get ExposureTime
Definition: Settings2D.h:737
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter
Definition: Settings2D.h:832
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: Settings2D.h:842
const Settings2D::Acquisition::Aperture & get() const
Definition: Settings2D.h:777
ExposureTime & exposureTime()
Get ExposureTime
Definition: Settings2D.h:743
friend std::ostream & operator<<(std::ostream &stream, const Acquisition &value)
Operator to send the value as string to a stream
Definition: Settings2D.h:860
bool operator!=(const Acquisition &other) const
Inequality operator
Acquisition & set(const Gain &value)
Set Gain
Definition: Settings2D.h:768
std::string toString() const
Get the value as string
Acquisition & set(const Aperture &value)
Set Aperture
Definition: Settings2D.h:711
std::tuple< Settings2D::Acquisition::Aperture, Settings2D::Acquisition::Brightness, Settings2D::Acquisition::ExposureTime, Settings2D::Acquisition::Gain > Descendants
Definition: Settings2D.h:584
Gain & gain()
Get Gain
Definition: Settings2D.h:762
bool operator==(const Acquisition &other) const
Equality operator
Acquisition copyWith(Args &&...args) const
Returns a copy of this object with the given argument(s) set to the new value(s)
Definition: Settings2D.h:679
void set(Args &&...args)
Set multiple arguments
Definition: Settings2D.h:644
const Settings2D::Acquisition::ExposureTime & get() const
Definition: Settings2D.h:793
Acquisition()
Default constructor
Aperture & aperture()
Get Aperture
Definition: Settings2D.h:705
Acquisition(Args &&...args)
Constructor taking variadic number of arguments
Definition: Settings2D.h:614
const Aperture & aperture() const
Get Aperture
Definition: Settings2D.h:699
Acquisition & set(const Brightness &value)
Set Brightness
Definition: Settings2D.h:730
const Brightness & brightness() const
Get Brightness
Definition: Settings2D.h:718
Brightness & brightness()
Get Brightness
Definition: Settings2D.h:724
const Gain & gain() const
Get Gain
Definition: Settings2D.h:756
const Settings2D::Acquisition::Brightness & get() const
Definition: Settings2D.h:785
Acquisition & set(const ExposureTime &value)
Set ExposureTime
Definition: Settings2D.h:749
List of acquisitions. Note that the Zivid SDK only supports a single acquisition per capture in 2D mo...
Definition: Settings2D.h:882
const Settings2D::Acquisition & at(std::size_t pos) const
Returns a const reference to the element at position pos in the list
static constexpr Range< ValueType::size_type > validSize()
The valid sizes for Acquisitions
Definition: Settings2D.h:902
Acquisitions(std::initializer_list< Settings2D::Acquisition > value)
Constructor
Definition: Settings2D.h:916
Settings2D::Acquisition & operator[](std::size_t pos)
Returns a reference to the element at position pos in the list
const Settings2D::Acquisition & operator[](std::size_t pos) const
Returns a const reference to the element at position pos in the list
Acquisitions(std::vector< Settings2D::Acquisition > value)
Constructor
Definition: Settings2D.h:911
void forEach(const F &f)
Run the given function on each element in the list
Definition: Settings2D.h:973
bool operator==(const Acquisitions &other) const
Comparison operator
Definition: Settings2D.h:992
Settings2D::Acquisition & at(std::size_t pos)
Returns a reference to the element at position pos in the list
void forEach(const F &f) const
Run the given function on each element in the list
Definition: Settings2D.h:983
std::vector< Settings2D::Acquisition > ValueType
The type of the underlying value
Definition: Settings2D.h:899
std::string toString() const
Get the value as string
friend std::ostream & operator<<(std::ostream &stream, const Acquisitions &value)
Operator to serialize the value to a stream
Definition: Settings2D.h:1004
std::size_t size() const noexcept
Get the size of the list
bool operator!=(const Acquisitions &other) const
Comparison operator
Definition: Settings2D.h:998
Acquisitions()=default
Default constructor
const std::vector< Settings2D::Acquisition > & value() const
Get the value
Digital gain applied to blue channel
Definition: Settings2D.h:1067
double value() const
Get the value
friend std::ostream & operator<<(std::ostream &stream, const Blue &value)
Operator to serialize the value to a stream
Definition: Settings2D.h:1140
bool operator==(const Blue &other) const
Comparison operator
Definition: Settings2D.h:1116
void reset()
Reset the node to unset state
double ValueType
The type of the underlying value
Definition: Settings2D.h:1084
bool operator>(const Blue &other) const
Comparison operator
Definition: Settings2D.h:1134
std::string toString() const
Get the value as string
constexpr Blue(double value)
Constructor
Definition: Settings2D.h:1096
bool operator!=(const Blue &other) const
Comparison operator
Definition: Settings2D.h:1122
bool hasValue() const
Check if the value is set
static constexpr Range< double > validRange()
The range of valid values for Blue
Definition: Settings2D.h:1087
bool operator<(const Blue &other) const
Comparison operator
Definition: Settings2D.h:1128
Blue()=default
Default constructor
Digital gain applied to green channel
Definition: Settings2D.h:1165
double ValueType
The type of the underlying value
Definition: Settings2D.h:1182
static constexpr Range< double > validRange()
The range of valid values for Green
Definition: Settings2D.h:1185
bool operator==(const Green &other) const
Comparison operator
Definition: Settings2D.h:1214
std::string toString() const
Get the value as string
constexpr Green(double value)
Constructor
Definition: Settings2D.h:1194
friend std::ostream & operator<<(std::ostream &stream, const Green &value)
Operator to serialize the value to a stream
Definition: Settings2D.h:1238
bool operator<(const Green &other) const
Comparison operator
Definition: Settings2D.h:1226
bool hasValue() const
Check if the value is set
Green()=default
Default constructor
bool operator!=(const Green &other) const
Comparison operator
Definition: Settings2D.h:1220
bool operator>(const Green &other) const
Comparison operator
Definition: Settings2D.h:1232
double value() const
Get the value
void reset()
Reset the node to unset state
Digital gain applied to red channel
Definition: Settings2D.h:1263
double ValueType
The type of the underlying value
Definition: Settings2D.h:1280
friend std::ostream & operator<<(std::ostream &stream, const Red &value)
Operator to serialize the value to a stream
Definition: Settings2D.h:1336
Red()=default
Default constructor
bool operator<(const Red &other) const
Comparison operator
Definition: Settings2D.h:1324
std::string toString() const
Get the value as string
static constexpr Range< double > validRange()
The range of valid values for Red
Definition: Settings2D.h:1283
bool hasValue() const
Check if the value is set
bool operator!=(const Red &other) const
Comparison operator
Definition: Settings2D.h:1318
double value() const
Get the value
constexpr Red(double value)
Constructor
Definition: Settings2D.h:1292
bool operator==(const Red &other) const
Comparison operator
Definition: Settings2D.h:1312
void reset()
Reset the node to unset state
bool operator>(const Red &other) const
Comparison operator
Definition: Settings2D.h:1330
Color balance settings
Definition: Settings2D.h:1051
const Settings2D::Processing::Color::Balance::Red & get() const
Definition: Settings2D.h:1558
Balance(Args &&...args)
Constructor taking variadic number of arguments
Definition: Settings2D.h:1391
Blue & blue()
Get Blue
Definition: Settings2D.h:1483
bool operator!=(const Balance &other) const
Inequality operator
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: Settings2D.h:1592
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter
Definition: Settings2D.h:1583
const Blue & blue() const
Get Blue
Definition: Settings2D.h:1477
bool operator==(const Balance &other) const
Equality operator
Balance & set(const Blue &value)
Set Blue
Definition: Settings2D.h:1489
Red & red()
Get Red
Definition: Settings2D.h:1521
Green & green()
Get Green
Definition: Settings2D.h:1502
Balance & set(const Green &value)
Set Green
Definition: Settings2D.h:1508
Balance copyWith(Args &&...args) const
Returns a copy of this object with the given argument(s) set to the new value(s)
Definition: Settings2D.h:1456
const Green & green() const
Get Green
Definition: Settings2D.h:1496
Balance()
Default constructor
Balance & set(const Red &value)
Set Red
Definition: Settings2D.h:1527
const Settings2D::Processing::Color::Balance::Green & get() const
Definition: Settings2D.h:1548
const Red & red() const
Get Red
Definition: Settings2D.h:1515
std::string toString() const
Get the value as string
void set(Args &&...args)
Set multiple arguments
Definition: Settings2D.h:1420
friend std::ostream & operator<<(std::ostream &stream, const Balance &value)
Operator to send the value as string to a stream
Definition: Settings2D.h:1609
const Settings2D::Processing::Color::Balance::Blue & get() const
Definition: Settings2D.h:1538
std::tuple< Settings2D::Processing::Color::Balance::Blue, Settings2D::Processing::Color::Balance::Green, Settings2D::Processing::Color::Balance::Red > Descendants
Definition: Settings2D.h:1362
Gamma applied to the color values. Gamma less than 1 makes the colors brighter, while gamma greater t...
Definition: Settings2D.h:1632
double ValueType
The type of the underlying value
Definition: Settings2D.h:1651
static constexpr Range< double > validRange()
The range of valid values for Gamma
Definition: Settings2D.h:1654
bool operator>(const Gamma &other) const
Comparison operator
Definition: Settings2D.h:1701
bool operator==(const Gamma &other) const
Comparison operator
Definition: Settings2D.h:1683
friend std::ostream & operator<<(std::ostream &stream, const Gamma &value)
Operator to serialize the value to a stream
Definition: Settings2D.h:1707
bool operator!=(const Gamma &other) const
Comparison operator
Definition: Settings2D.h:1689
bool hasValue() const
Check if the value is set
std::string toString() const
Get the value as string
bool operator<(const Gamma &other) const
Comparison operator
Definition: Settings2D.h:1695
void reset()
Reset the node to unset state
constexpr Gamma(double value)
Constructor
Definition: Settings2D.h:1663
Gamma()=default
Default constructor
double value() const
Get the value
Color settings
Definition: Settings2D.h:1035
void set(Args &&...args)
Set multiple arguments
Definition: Settings2D.h:1796
Color & set(const Balance::Green &value)
Set Balance::Green
Definition: Settings2D.h:1880
bool operator!=(const Color &other) const
Inequality operator
bool operator==(const Color &other) const
Equality operator
std::string toString() const
Get the value as string
const Balance & balance() const
Get Balance
Definition: Settings2D.h:1854
Color & set(const Balance::Blue &value)
Set Balance::Blue
Definition: Settings2D.h:1873
Balance & balance()
Get Balance
Definition: Settings2D.h:1860
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter
Definition: Settings2D.h:1971
friend std::ostream & operator<<(std::ostream &stream, const Color &value)
Operator to send the value as string to a stream
Definition: Settings2D.h:1995
Color(Args &&...args)
Constructor taking variadic number of arguments
Definition: Settings2D.h:1765
const Settings2D::Processing::Color::Gamma & get() const
Definition: Settings2D.h:1952
const Settings2D::Processing::Color::Balance::Green & get() const
Definition: Settings2D.h:1934
Gamma & gamma()
Get Gamma
Definition: Settings2D.h:1900
std::tuple< Settings2D::Processing::Color::Balance, Settings2D::Processing::Color::Balance::Blue, Settings2D::Processing::Color::Balance::Green, Settings2D::Processing::Color::Balance::Red, Settings2D::Processing::Color::Gamma > Descendants
Definition: Settings2D.h:1734
const Settings2D::Processing::Color::Balance::Red & get() const
Definition: Settings2D.h:1943
Color copyWith(Args &&...args) const
Returns a copy of this object with the given argument(s) set to the new value(s)
Definition: Settings2D.h:1833
const Settings2D::Processing::Color::Balance & get() const
Definition: Settings2D.h:1916
Color()
Default constructor
const Gamma & gamma() const
Get Gamma
Definition: Settings2D.h:1894
const Settings2D::Processing::Color::Balance::Blue & get() const
Definition: Settings2D.h:1925
Color & set(const Balance &value)
Set Balance
Definition: Settings2D.h:1866
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: Settings2D.h:1979
Color & set(const Gamma &value)
Set Gamma
Definition: Settings2D.h:1906
Color & set(const Balance::Red &value)
Set Balance::Red
Definition: Settings2D.h:1887
Processing related settings
Definition: Settings2D.h:1019
const Settings2D::Processing::Color & get() const
Definition: Settings2D.h:2196
Processing & set(const Color::Gamma &value)
Set Color::Gamma
Definition: Settings2D.h:2187
bool operator!=(const Processing &other) const
Inequality operator
bool operator==(const Processing &other) const
Equality operator
Processing & set(const Color &value)
Set Color
Definition: Settings2D.h:2152
const Settings2D::Processing::Color::Balance & get() const
Definition: Settings2D.h:2204
friend std::ostream & operator<<(std::ostream &stream, const Processing &value)
Operator to send the value as string to a stream
Definition: Settings2D.h:2274
void forEach(const F &f) const
Run the given function on each direct member with the value of the member as parameter
Definition: Settings2D.h:2252
Color & color()
Get Color
Definition: Settings2D.h:2146
void set(Args &&...args)
Set multiple arguments
Definition: Settings2D.h:2083
Processing & set(const Color::Balance::Blue &value)
Set Color::Balance::Blue
Definition: Settings2D.h:2166
Processing & set(const Color::Balance &value)
Set Color::Balance
Definition: Settings2D.h:2159
std::tuple< Settings2D::Processing::Color, Settings2D::Processing::Color::Balance, Settings2D::Processing::Color::Balance::Blue, Settings2D::Processing::Color::Balance::Green, Settings2D::Processing::Color::Balance::Red, Settings2D::Processing::Color::Gamma > Descendants
Definition: Settings2D.h:2019
const Color & color() const
Get Color
Definition: Settings2D.h:2140
Processing & set(const Color::Balance::Red &value)
Set Color::Balance::Red
Definition: Settings2D.h:2180
const Settings2D::Processing::Color::Gamma & get() const
Definition: Settings2D.h:2239
const Settings2D::Processing::Color::Balance::Red & get() const
Definition: Settings2D.h:2231
Processing copyWith(Args &&...args) const
Returns a copy of this object with the given argument(s) set to the new value(s)
Definition: Settings2D.h:2120
const Settings2D::Processing::Color::Balance::Blue & get() const
Definition: Settings2D.h:2213
const Settings2D::Processing::Color::Balance::Green & get() const
Definition: Settings2D.h:2222
std::string toString() const
Get the value as string
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: Settings2D.h:2259
Processing()
Default constructor
Processing(Args &&...args)
Constructor taking variadic number of arguments
Definition: Settings2D.h:2051
Processing & set(const Color::Balance::Green &value)
Set Color::Balance::Green
Definition: Settings2D.h:2173
Settings used when capturing 2D images with a Zivid camera
Definition: Settings2D.h:121
Settings2D & set(const Processing &value)
Set Processing
Definition: Settings2D.h:2458
const Settings2D::Processing::Color & get() const
Definition: Settings2D.h:2521
const Settings2D::Processing::Color::Balance::Red & get() const
Definition: Settings2D.h:2555
const Settings2D::Processing::Color::Balance::Green & get() const
Definition: Settings2D.h:2547
void save(const std::string &fileName) const
Save to the given file
const Settings2D::Processing::Color::Balance::Blue & get() const
Definition: Settings2D.h:2538
const Acquisitions & acquisitions() const
Get Acquisitions
Definition: Settings2D.h:2427
void forEach(const F &f)
Run the given function on each direct member with the value of the member as parameter
Definition: Settings2D.h:2590
Settings2D(Args &&...args)
Constructor taking variadic number of arguments
Definition: Settings2D.h:2335
const Settings2D::Acquisitions & get() const
Definition: Settings2D.h:2507
Settings2D()
Default constructor
const Settings2D::Processing::Color::Gamma & get() const
Definition: Settings2D.h:2563
Settings2D & set(const Acquisitions &value)
Set Acquisitions
Definition: Settings2D.h:2439
Settings2D(const std::string &fileName)
Construct Settings2D by loading from file
void load(const std::string &fileName)
Load from the given file
const Settings2D::Processing::Color::Balance & get() const
Definition: Settings2D.h:2529
Settings2D & set(const Processing::Color::Balance::Green &value)
Set Processing::Color::Balance::Green
Definition: Settings2D.h:2486
std::tuple< Settings2D::Acquisitions, Settings2D::Processing, Settings2D::Processing::Color, Settings2D::Processing::Color::Balance, Settings2D::Processing::Color::Balance::Blue, Settings2D::Processing::Color::Balance::Green, Settings2D::Processing::Color::Balance::Red, Settings2D::Processing::Color::Gamma > Descendants
Definition: Settings2D.h:2299
bool operator!=(const Settings2D &other) const
Inequality operator
Settings2D & set(const Processing::Color::Balance &value)
Set Processing::Color::Balance
Definition: Settings2D.h:2472
const Settings2D::Processing & get() const
Definition: Settings2D.h:2513
Settings2D & set(const Processing::Color::Balance::Red &value)
Set Processing::Color::Balance::Red
Definition: Settings2D.h:2493
void set(Args &&...args)
Set multiple arguments
Definition: Settings2D.h:2369
Processing & processing()
Get Processing
Definition: Settings2D.h:2452
const Processing & processing() const
Get Processing
Definition: Settings2D.h:2446
Settings2D copyWith(Args &&...args) const
Returns a copy of this object with the given argument(s) set to the new value(s)
Definition: Settings2D.h:2408
Settings2D & set(const Processing::Color::Balance::Blue &value)
Set Processing::Color::Balance::Blue
Definition: Settings2D.h:2479
Acquisitions & acquisitions()
Get Acquisitions
Definition: Settings2D.h:2433
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: Settings2D.h:2582
bool operator==(const Settings2D &other) const
Equality operator
friend std::ostream & operator<<(std::ostream &stream, const Settings2D &value)
Operator to send the value as string to a stream
Definition: Settings2D.h:2606
Settings2D & set(const Processing::Color &value)
Set Processing::Color
Definition: Settings2D.h:2465
Settings2D & set(const Processing::Color::Gamma &value)
Set Processing::Color::Gamma
Definition: Settings2D.h:2500
NodeType
Definition: NodeType.h:100
Ret validRange(const CameraInfo &cameraInfo)
Definition: SettingsInfo.h:203
The main Zivid namespace. All Zivid code is found here
Definition: Application.h:99