1493e62ebSKrzysztof Grobelny #include "types/readings.hpp" 2493e62ebSKrzysztof Grobelny 3493e62ebSKrzysztof Grobelny #include "utils/transform.hpp" 4493e62ebSKrzysztof Grobelny 5493e62ebSKrzysztof Grobelny namespace utils 6493e62ebSKrzysztof Grobelny { 7493e62ebSKrzysztof Grobelny 8493e62ebSKrzysztof Grobelny namespace ts = utils::tstring; 9493e62ebSKrzysztof Grobelny toLabeledReadings(const Readings & readings)10493e62ebSKrzysztof GrobelnyLabeledReadings toLabeledReadings(const Readings& readings) 11493e62ebSKrzysztof Grobelny { 12*c7935fa1SPatrick Williams return LabeledReadings{ 13*c7935fa1SPatrick Williams std::get<0>(readings), 14*c7935fa1SPatrick Williams utils::transform(std::get<1>(readings), [](const auto& readingData) { 15493e62ebSKrzysztof Grobelny return LabeledReadingData{readingData}; 16493e62ebSKrzysztof Grobelny })}; 17493e62ebSKrzysztof Grobelny } 18493e62ebSKrzysztof Grobelny toReadings(const LabeledReadings & labeledReadings)19493e62ebSKrzysztof GrobelnyReadings toReadings(const LabeledReadings& labeledReadings) 20493e62ebSKrzysztof Grobelny { 21493e62ebSKrzysztof Grobelny return Readings{labeledReadings.at_label<ts::Timestamp>(), 22493e62ebSKrzysztof Grobelny utils::transform(labeledReadings.at_label<ts::Readings>(), 23493e62ebSKrzysztof Grobelny [](const auto& labeledReadingData) { 24493e62ebSKrzysztof Grobelny return labeledReadingData.to_tuple(); 25493e62ebSKrzysztof Grobelny })}; 26493e62ebSKrzysztof Grobelny } 27493e62ebSKrzysztof Grobelny 28493e62ebSKrzysztof Grobelny } // namespace utils 29