Back to Site
Loading...
Searching...
No Matches
librats::PeerNetwork Class Referenceabstract

#include <peer_network.h>

Inheritance diagram for librats::PeerNetwork:
[legend]

Public Types

using MessageHandler = std::function< void(const Peer &, ByteView)>
 
using PeerEventHandler = std::function< void(const Peer &)>
 
using PeerDisconnectHandler = std::function< void(const PeerId &)>
 
using DialFailedHandler = std::function< void(const Address &)>
 

Public Member Functions

virtual ~PeerNetwork ()=default
 
virtual const PeerIdlocal_id () const =0
 
virtual uint16_t listen_port () const =0
 our advertised TCP port
 
virtual void connect (const Address &address)=0
 dial a discovered peer
 
virtual void send (const PeerId &to, MessageType type, ByteView payload)=0
 
virtual void broadcast (MessageType type, ByteView payload)=0
 
virtual std::vector< PeerIdconnected_peers () const =0
 
virtual std::vector< PeerInfopeers () const =0
 snapshot incl. dialable addresses
 
virtual void on (MessageType type, MessageHandler handler)=0
 
virtual void on_peer_connected (PeerEventHandler handler)=0
 
virtual void on_peer_disconnected (PeerDisconnectHandler handler)=0
 
virtual void on_dial_failed (DialFailedHandler handler)=0
 

Detailed Description

Definition at line 28 of file peer_network.h.

Member Typedef Documentation

◆ DialFailedHandler

using librats::PeerNetwork::DialFailedHandler = std::function<void(const Address&)>

Definition at line 35 of file peer_network.h.

◆ MessageHandler

using librats::PeerNetwork::MessageHandler = std::function<void(const Peer&, ByteView)>

Definition at line 31 of file peer_network.h.

◆ PeerDisconnectHandler

using librats::PeerNetwork::PeerDisconnectHandler = std::function<void(const PeerId&)>

Definition at line 34 of file peer_network.h.

◆ PeerEventHandler

using librats::PeerNetwork::PeerEventHandler = std::function<void(const Peer&)>

Definition at line 33 of file peer_network.h.

Constructor & Destructor Documentation

◆ ~PeerNetwork()

virtual librats::PeerNetwork::~PeerNetwork ( )
virtualdefault

Member Function Documentation

◆ broadcast()

virtual void librats::PeerNetwork::broadcast ( MessageType  type,
ByteView  payload 
)
pure virtual

Implemented in librats::Node.

◆ connect()

virtual void librats::PeerNetwork::connect ( const Address address)
pure virtual

dial a discovered peer

Implemented in librats::Node.

◆ connected_peers()

virtual std::vector< PeerId > librats::PeerNetwork::connected_peers ( ) const
pure virtual

Implemented in librats::Node.

◆ listen_port()

virtual uint16_t librats::PeerNetwork::listen_port ( ) const
pure virtual

our advertised TCP port

Implemented in librats::Node.

◆ local_id()

virtual const PeerId & librats::PeerNetwork::local_id ( ) const
pure virtual

Implemented in librats::Node.

◆ on()

virtual void librats::PeerNetwork::on ( MessageType  type,
MessageHandler  handler 
)
pure virtual

Implemented in librats::Node.

◆ on_dial_failed()

virtual void librats::PeerNetwork::on_dial_failed ( DialFailedHandler  handler)
pure virtual

Implemented in librats::Node.

◆ on_peer_connected()

virtual void librats::PeerNetwork::on_peer_connected ( PeerEventHandler  handler)
pure virtual

Implemented in librats::Node.

◆ on_peer_disconnected()

virtual void librats::PeerNetwork::on_peer_disconnected ( PeerDisconnectHandler  handler)
pure virtual

Implemented in librats::Node.

◆ peers()

virtual std::vector< PeerInfo > librats::PeerNetwork::peers ( ) const
pure virtual

snapshot incl. dialable addresses

Implemented in librats::Node.

◆ send()

virtual void librats::PeerNetwork::send ( const PeerId to,
MessageType  type,
ByteView  payload 
)
pure virtual

Implemented in librats::Node.


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