From 1a78330ad6f2ba15a051410fabe060cf783d615a Mon Sep 17 00:00:00 2001 From: chatlanin Date: Sun, 22 Feb 2026 15:29:54 +0300 Subject: [PATCH] added raw data plugin --- bin/main.cpp | 12 ++++++------ src/plugins/raw_data/raw_data.cpp | 21 ++++++++++++++++++++- src/plugins/raw_data/raw_data.hpp | 2 ++ 3 files changed, 28 insertions(+), 7 deletions(-) diff --git a/bin/main.cpp b/bin/main.cpp index cc1cf09..dc6bcc5 100644 --- a/bin/main.cpp +++ b/bin/main.cpp @@ -14,10 +14,10 @@ auto main() -> int auto r = hr::run(setup); hack::log()("size:", r.m_data.size()); - if (!r.empty()) - { - std::vector s; - for (auto p : r.m_data) s.push_back(p.m_value[0]); - hack::log()(s); - } + // if (!r.empty()) + // { + // std::vector s; + // for (auto p : r.m_data) s.push_back(p.m_value[0]); + // hack::log()(s); + // } } diff --git a/src/plugins/raw_data/raw_data.cpp b/src/plugins/raw_data/raw_data.cpp index d2e1c24..2db7416 100644 --- a/src/plugins/raw_data/raw_data.cpp +++ b/src/plugins/raw_data/raw_data.cpp @@ -16,7 +16,8 @@ namespace hr::plugins result::bit b; b.m_value = base; b.m_duration = timestamp; - m_result.set_bit(b); + m_tmp.set_bit(b); + m_size += base.size(); } void raw_data::process(cvec_t& fft, fvec_t& base, real_time timestamp) @@ -25,6 +26,24 @@ namespace hr::plugins result raw_data::get_result() { + if (m_tmp.m_data.empty()) + return m_result; + + m_result.m_data.reserve(m_size); + + std::size_t index = 0; + for (auto& t : m_tmp.m_data) + { + hack::log()(t.m_value.size()); + for (auto s : t.m_value) + { + result::bit b; + b.m_value.push_back(s); + b.m_duration = t.m_duration; + m_result.set_bit(b); + } + } + return m_result; } } diff --git a/src/plugins/raw_data/raw_data.hpp b/src/plugins/raw_data/raw_data.hpp index a54cbaa..eb7523e 100644 --- a/src/plugins/raw_data/raw_data.hpp +++ b/src/plugins/raw_data/raw_data.hpp @@ -12,6 +12,8 @@ namespace hr::plugins private: result m_result; + result m_tmp; + std::size_t m_size = 0; public: void process(fvec_t& base, real_time timestamp) override;