#pragma once #include #include #include #include #include "navparse.hh" struct InfluxPusher { explicit InfluxPusher(std::string_view dbname); void addValueObserver(int src, std::string_view name, const std::initializer_list>& values, double t, std::optional satid=std::optional()); void addValue(const SatID& id, std::string_view name, const std::initializer_list>& values, double t, std::optional src = std::optional()); void checkSend(); void doSend(const std::set& buffer); ~InfluxPusher(); std::set d_buffer; void queueValue(const std::string& line); time_t d_lastsent{0}; string d_dbname; bool d_mute{false}; };