gramods
Public Member Functions | List of all members
gramods::gmNetwork::SyncNode::Impl::Peer Struct Reference

A connection and communication handler for one single peer. More...

Inheritance diagram for gramods::gmNetwork::SyncNode::Impl::Peer:
Inheritance graph
[legend]
Collaboration diagram for gramods::gmNetwork::SyncNode::Impl::Peer:
Collaboration graph
[legend]

Public Member Functions

 Peer (asio::io_context &io_context, SyncNode::Impl *parent, std::string address, asio::ip::tcp::resolver::results_type endpoints, std::size_t local_peer_idx, std::size_t peer_idx)
 Create a beta node. More...
 
 Peer (asio::io_context &io_context, SyncNode::Impl *parent, asio::ip::tcp::socket socket, std::size_t local_peer_idx)
 
void connect ()
 
void on_connect (std::error_code ec, asio::ip::tcp::endpoint end)
 
void on_data (std::error_code ec, std::shared_ptr< std::vector< char >> read_buffer, std::size_t length)
 
void on_write (std::error_code ec, std::size_t length)
 
void setup_pingpong_timer ()
 
void setup_timeout_timer ()
 
void reset_timers ()
 
void on_pingpong_timeout ()
 
void on_timeout_timeout ()
 
bool isConnected ()
 
void sendMessage (Protocol::Message mess)
 
void readData ()
 
std::size_t getPeerIdx ()
 

Detailed Description

A connection and communication handler for one single peer.

Constructor & Destructor Documentation

◆ Peer()

gramods::gmNetwork::SyncNode::Impl::Peer::Peer ( asio::io_context &  io_context,
SyncNode::Impl parent,
std::string  address,
asio::ip::tcp::resolver::results_type  endpoints,
std::size_t  local_peer_idx,
std::size_t  peer_idx 
)
inline

Create a beta node.


The documentation for this struct was generated from the following file: