#pragma once #include "server.hpp" #include "receiver.hpp" #include "cmix.pb.h" #include #include class Stats { boost::asio::io_service io_service; Server server; std::list connections; typedef std::vector Column; typedef std::map Table; typedef std::map Tables; Tables data; void accept_connection(std::unique_ptr&& socket); void handle_performance(std::list::iterator it, cmix_proto::Performance const& perf); void handle_message(std::list::iterator it, cmix_proto::CMixMessage message); public: Stats(ListenSettings lsettings); void run(); void output(std::string file); };