// // Created by titov on 15.01.2022. // #ifndef UMLIBRARY_DEV_IMESSAGESERVER_HH #define UMLIBRARY_DEV_IMESSAGESERVER_HH #include #include namespace communication { struct IMessageClient { virtual bool response( const char * data, std::size_t size ) = 0; }; struct IMessageServer { virtual bool request( IMessageClient * client, const char * data, std::size_t size ) = 0; }; struct IMessageRouter { typedef uint32_t ServerId; virtual void attach( IMessageServer * server, ServerId id ) = 0; virtual void start() = 0; virtual bool stop() = 0; }; } #endif //UMLIBRARY_DEV_IMESSAGESERVER_HH