![]() |
Mads
Multi-Agent Distributed System
|
Rendering knobs for topology_graph(). More...
#include <topology_graph.hpp>
Public Attributes | |
| bool | expand_catch_all = false |
| std::optional< LiveSubscriptions > | live |
Rendering knobs for topology_graph().
Definition at line 73 of file topology_graph.hpp.
| bool Mads::GraphOptions::expand_catch_all = false |
Draw one edge per publisher into every subscribe-all (sub_topic = [""]) subscriber, instead of collapsing them into a count shown on the subscriber's own (all) line. Off by default: a subscribe-all subscriber matches every publisher by definition, so in any real deployment (a logger, a monitor, a recorder...) those edges are both the least informative and the most numerous, and they bury the wiring the graph is actually being read for. Nothing is lost by collapsing them – "receives everything" is exactly what the (all) line says.
Definition at line 82 of file topology_graph.hpp.
| std::optional<LiveSubscriptions> Mads::GraphOptions::live |
When set, overlay live subscriber counts onto the declared graph (mads doctor --graph --graph-live). This annotates, never replaces: the nodes and edges still come from the settings file, because an anonymous topic -> count table cannot name agents or identify publishers and so cannot draw a graph by itself.
Three states become distinguishable that are identical without it: a declared subscription with someone listening, a declared subscription with nobody listening, and a live subscription nobody declared (invisible entirely on a settings-only graph).
Note the overlay speaks only about subscribers. A pure publisher's liveness leaves no trace in a subscription table, so a source is never reported as offline – only as unheard, which the declared graph already shows.
Definition at line 99 of file topology_graph.hpp.