43 lines
949 B
C++
43 lines
949 B
C++
#include <print>
|
|
|
|
#include <adclib/adclib_device.h>
|
|
|
|
using namespace adc;
|
|
|
|
int main()
|
|
{
|
|
int i = 10;
|
|
double d = 8.1;
|
|
std::string s{"dwedjkwlk"};
|
|
|
|
AdcGenericDevice<> dev;
|
|
|
|
dev.addAttr(
|
|
"1", [&i]() -> adc_result_t<int> { return i; },
|
|
[&i](int ii) -> adc_error_t {
|
|
i = ii;
|
|
return AdcDeviceErrorCode::ERROR_OK;
|
|
},
|
|
std::tuple<double, long>{});
|
|
|
|
adc_result_t<int> ri = dev["1"];
|
|
if (ri) {
|
|
std::println("dev[1] = {}", ri.value());
|
|
} else {
|
|
std::println("cannot get dev[1] as int: {}", ri.error().message());
|
|
}
|
|
|
|
auto err = dev["1"] = 77;
|
|
if (err) {
|
|
std::println("cannot set dev[1] as int: {}", err.message());
|
|
}
|
|
|
|
adc_result_t<double> rd = dev["1"];
|
|
if (rd) {
|
|
std::println("dev[1] = {}", rd.value());
|
|
} else {
|
|
std::println("cannot get dev[1] as double: {}", rd.error().message());
|
|
}
|
|
|
|
return 0;
|
|
} |