Output source option of Value & Gauge widgets in a symbolic way

This commit is contained in:
Raphael Coeffic
2021-11-10 11:07:03 +01:00
parent cc0af82506
commit c2056c7585
13 changed files with 92 additions and 6 deletions
@@ -70,6 +70,9 @@ namespace yaml_conv_220 {
bool w_logicSw(void* user, uint8_t* data, uint32_t bitoffs,
yaml_writer_func wf, void* opaque);
bool w_zov_source(void* user, uint8_t* data, uint32_t bitoffs,
yaml_writer_func wf, void* opaque);
};
//
@@ -267,6 +270,20 @@ static uint8_t select_zov(void* user, uint8_t* data, uint32_t bitoffs)
{
return yaml_conv_220::select_zov(user, data, bitoffs);
}
void r_zov_source(void* user, uint8_t* data, uint32_t bitoffs,
const char* val, uint8_t val_len)
{
data += bitoffs >> 3UL;
auto p_val = reinterpret_cast<ZoneOptionValue*>(data);
p_val->unsignedValue = r_mixSrcRaw(nullptr, val, val_len);
}
bool w_zov_source(void* user, uint8_t* data, uint32_t bitoffs,
yaml_writer_func wf, void* opaque)
{
return yaml_conv_220::w_zov_source(user, data, bitoffs, wf, opaque);
}
#endif
static uint8_t select_mod_type(void* user, uint8_t* data, uint32_t bitoffs)