Mads
Multi-Agent Distributed System
Loading...
Searching...
No Matches
socket_monitor.hpp File Reference
#include <chrono>
#include <cstdint>
#include <memory>
#include <optional>
#include <string>
#include <zmq.hpp>

Go to the source code of this file.

Classes

struct  Mads::LinkState
 
class  Mads::SocketMonitor
 One monitor per monitored socket. start() must be called before the socket's connect()/bind(): libzmq lets a connection through – and may fire its lifecycle events – while no monitor is attached yet, exactly the same race Mads::ZapAuth::start() avoids for the ZAP handler. More...
 

Namespaces

namespace  Mads
 

Enumerations

enum class  Mads::LinkEvent {
  Mads::None , Mads::Connected , Mads::ConnectDelayed , Mads::ConnectRetried ,
  Mads::HandshakeSucceeded , Mads::HandshakeFailedAuth , Mads::HandshakeFailedProtocol , Mads::HandshakeFailedNoDetail ,
  Mads::Disconnected , Mads::AcceptFailed
}
 
enum class  Mads::LinkStatus { Mads::Unknown , Mads::Up , Mads::Down }