75 #include "../base/macros.h"
76 #include "../base/message_loop.h"
136 void rebuild_message();
147 std::unique_ptr<Impl> impl_;
Periodic multicast broadcaster of the process's active VLink endpoints.
Definition: discovery_reporter.h:86
~DiscoveryReporter() override
Stops the loop and releases the UDP socket.
void on_end() override
Hook invoked once on the loop thread after the last task runs.
void add(NodeImpl *node)
Registers a node so that subsequent broadcasts include it.
size_t get_max_task_count() const override
Returns the maximum queue depth.
void on_begin() override
Hook invoked once on the loop thread before the first task runs.
DiscoveryReporter()
Builds the reporter, opens its UDP socket and arms the periodic timer.
uint32_t get_max_elapsed_time() const override
Returns the maximum allowed task execution time in milliseconds.
void remove(NodeImpl *node)
Unregisters a node so that subsequent broadcasts exclude it.
Serial task dispatcher with selectable queue backend and bounded timer registry.
Definition: message_loop.h:126
Backbone of every transport-specific VLink node implementation.
Definition: node_impl.h:163
#define VLINK_EXPORT
Definition: macros.h:81
#define VLINK_DISALLOW_COPY_AND_ASSIGN(classname)
Deletes the copy constructor and copy-assignment operator of classname.
Definition: macros.h:174
VLINK_EXPORT std::string get_host_name() noexcept
Returns the local machine's host name as reported by the operating system.
VLINK_EXPORT std::string get_app_name() noexcept
Returns the file-name portion of the executable's absolute path.