#ifndef MATADOR_SOCKET_INTERRUPTER_HPP #define MATADOR_SOCKET_INTERRUPTER_HPP #include "matador/net/ip.hpp" #include "matador/logger/logger.hpp" #include namespace matador::net { /// @cond MATADOR_DEV class OOS_NET_API socket_interrupter { public: socket_interrupter(); ~socket_interrupter(); socket_type socket_id() const; void interrupt(); bool reset(); private: tcp::socket server_; tcp::socket client_; logger::logger log_; std::array indicator_ = { { 0 } }; std::array consumer_ = {}; }; /// @endcond } #endif //MATADOR_SOCKET_INTERRUPTER_HPP