/workspaces/astro/sol3-sdk/cpp/sol3/net/connection_handler.h Source File

Space-ng SDK: /workspaces/astro/sol3-sdk/cpp/sol3/net/connection_handler.h Source File
Space-ng SDK
connection_handler.h
Go to the documentation of this file.
1 // Copyright (c) Space-ng, inc. All rights reserved.
2 
3 #pragma once
4 
5 #include "sol3/net/data_frame.h"
7 
8 #include <boost/system/error_code.hpp>
9 
10 namespace sol3::net {
11 
12 // Handles lifecycle events for a TCP connection.
14  public:
15  virtual ~IConnectionHandler() = default;
16  virtual void onConnect(TcpConnectionId connection_id) = 0;
17  // Invoked when a frame is received
18  virtual void onData(DataFrame const& frame) = 0;
19  // Invoked when a frame is sent
20  virtual void onSend() = 0;
21  virtual void onDisconnect(TcpConnectionId connection_id) = 0;
22  virtual void onError(boost::system::error_code const& ec) = 0;
23 };
24 
25 } // namespace sol3::net
Definition: connection_handler.h:13
virtual void onError(boost::system::error_code const &ec)=0
virtual ~IConnectionHandler()=default
virtual void onData(DataFrame const &frame)=0
virtual void onDisconnect(TcpConnectionId connection_id)=0
virtual void onConnect(TcpConnectionId connection_id)=0
Definition: buffer_pool.h:12
uint64_t TcpConnectionId
A unique identifier for a TCP connection.
Definition: tcp_connection_id.h:10
Definition: data_frame.h:12