8#include <boost/asio/any_io_executor.hpp>
9#include <boost/asio/experimental/coro.hpp>
10#include <boost/asio/thread_pool.hpp>
11#include <boost/asio/use_awaitable.hpp>
12#include <boost/thread/future.hpp>
17#include <glaze/core/opts.hpp>
18#include <glaze/core/write.hpp>
19#include <glaze/glaze.hpp>
21#include <spdlog/spdlog.h>
33 std ::map<std::string, std::vector<uint64_t>>
marker_data{ {
"vmm_id", {} }, {
"srs_timestamp", {} } };
34 std ::map<std::string, std::vector<uint16_t>>
hit_data{ {
"is_over_threshold", {} },
35 {
"channel_num", {} },
56 explicit operator bool()
const {
return value; }
77 const auto* data_struct = prev_data_converter(line_number);
83 static constexpr auto name_ = std::string_view{};
auto get_n_lines() const -> std::size_t
std::expected< OutputType, std::string_view > RunResult
Json(const Json &)=delete
std::vector< Bool > is_first_item_
Json & operator=(const Json &)=delete
Json & operator=(Json &&)=default
std::vector< std::string > string_buffers_
Json(const std::string &filename, process::DataConvertOptions convert_mode, std::size_t n_lines=1)
static constexpr auto IsStructType
std::vector< CompactExportData > data_buffers_
auto operator()(std::size_t line_number=0) const -> OutputType
auto get_filename() const -> const std::string &
std::vector< std::fstream > file_streams_
static constexpr auto name_
void write_json(const StructData &data_struct, std::size_t line_num)
auto run(const OutputTo< InputType > auto &prev_data_converter, std::size_t line_number=0) -> RunResult
std::vector< OutputType > output_data_
void fill_hit_data(const std::vector< HitData > &hits)
std ::map< std::string, std::vector< uint64_t > > marker_data
std ::map< std::string, std::vector< uint16_t > > hit_data
void fill_marker_data(const std::vector< MarkerData > &markers)
void set_value(const StructData &data_struct)