Mads
Multi-Agent Distributed System
Loading...
Searching...
No Matches
Mads::ServiceDiscovery Class Reference

#include <service_discovery.hpp>

Classes

struct  ServiceInfo
 

Public Member Functions

 ServiceDiscovery (uint16_t discovery_port=DEFAULT_DISCOVERY_PORT)
 
 ~ServiceDiscovery ()
 
 ServiceDiscovery (const ServiceDiscovery &)=delete
 
ServiceDiscoveryoperator= (const ServiceDiscovery &)=delete
 
 ServiceDiscovery (ServiceDiscovery &&)=delete
 
ServiceDiscoveryoperator= (ServiceDiscovery &&)=delete
 
uint16_t discovery_port () const noexcept
 
bool is_advertising () const noexcept
 
void advertise_once (const ServiceInfo &service) const
 
void start_advertising (ServiceInfo &service, std::chrono::milliseconds interval=DEFAULT_ADVERTISE_INTERVAL)
 
void stop_advertising ()
 
ServiceInfo discover (const std::string &room="", std::chrono::milliseconds timeout=std::chrono::milliseconds::zero()) const
 
std::map< std::string, ServiceDiscovery::ServiceInfolist_rooms (std::chrono::milliseconds timeout=std::chrono::milliseconds{1000}) const
 

Static Public Attributes

static constexpr uint16_t DEFAULT_DISCOVERY_PORT = 39092
 
static constexpr std::chrono::milliseconds DEFAULT_ADVERTISE_INTERVAL {1000}
 

Detailed Description

Definition at line 20 of file service_discovery.hpp.

Constructor & Destructor Documentation

◆ ServiceDiscovery() [1/3]

Mads::ServiceDiscovery::ServiceDiscovery ( uint16_t  discovery_port = DEFAULT_DISCOVERY_PORT)
explicit

◆ ~ServiceDiscovery()

Mads::ServiceDiscovery::~ServiceDiscovery ( )

◆ ServiceDiscovery() [2/3]

Mads::ServiceDiscovery::ServiceDiscovery ( const ServiceDiscovery )
delete

◆ ServiceDiscovery() [3/3]

Mads::ServiceDiscovery::ServiceDiscovery ( ServiceDiscovery &&  )
delete

Member Function Documentation

◆ advertise_once()

void Mads::ServiceDiscovery::advertise_once ( const ServiceInfo service) const

◆ discover()

ServiceInfo Mads::ServiceDiscovery::discover ( const std::string &  room = "",
std::chrono::milliseconds  timeout = std::chrono::milliseconds::zero() 
) const

◆ discovery_port()

uint16_t Mads::ServiceDiscovery::discovery_port ( ) const
noexcept

◆ is_advertising()

bool Mads::ServiceDiscovery::is_advertising ( ) const
noexcept

◆ list_rooms()

std::map< std::string, ServiceDiscovery::ServiceInfo > Mads::ServiceDiscovery::list_rooms ( std::chrono::milliseconds  timeout = std::chrono::milliseconds{1000}) const

◆ operator=() [1/2]

ServiceDiscovery & Mads::ServiceDiscovery::operator= ( const ServiceDiscovery )
delete

◆ operator=() [2/2]

ServiceDiscovery & Mads::ServiceDiscovery::operator= ( ServiceDiscovery &&  )
delete

◆ start_advertising()

void Mads::ServiceDiscovery::start_advertising ( ServiceInfo service,
std::chrono::milliseconds  interval = DEFAULT_ADVERTISE_INTERVAL 
)

◆ stop_advertising()

void Mads::ServiceDiscovery::stop_advertising ( )

Member Data Documentation

◆ DEFAULT_ADVERTISE_INTERVAL

constexpr std::chrono::milliseconds Mads::ServiceDiscovery::DEFAULT_ADVERTISE_INTERVAL {1000}
staticconstexpr

Definition at line 36 of file service_discovery.hpp.

◆ DEFAULT_DISCOVERY_PORT

constexpr uint16_t Mads::ServiceDiscovery::DEFAULT_DISCOVERY_PORT = 39092
staticconstexpr

Definition at line 35 of file service_discovery.hpp.


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