#pragma once #include namespace interface { /** * Classes implementing this interface will handle the low level sending and * receiving commands. */ struct communicator { /// Initiate receiving the next command. virtual void receive () = 0; /// Send command to the server. virtual void send (std::string const &command) = 0; }; }