Get network metadata for debugging/visualization.
177{
179
182 metadata["bounds_min"] = std::format("({:.2f}, {:.2f}, {:.2f})",
184 metadata["bounds_max"] = std::format("({:.2f}, {:.2f}, {:.2f})",
186
187 if (
auto* topology_op =
dynamic_cast<const TopologyOperator*
>(
m_operator.get())) {
188 if (auto connections = topology_op->query_state("connection_count")) {
189 metadata["connection_count"] = std::to_string(static_cast<size_t>(*connections));
190 }
191 if (auto topology_count = topology_op->query_state("topology_count")) {
192 metadata["topology_count"] = std::to_string(static_cast<size_t>(*topology_count));
193 }
194 }
195
196 if (
auto* path_op =
dynamic_cast<const PathOperator*
>(
m_operator.get())) {
197 if (auto vertex_count = path_op->query_state("vertex_count")) {
198 metadata["vertex_count"] = std::to_string(static_cast<size_t>(*vertex_count));
199 }
200 if (auto path_count = path_op->query_state("path_count")) {
201 metadata["path_count"] = std::to_string(static_cast<size_t>(*path_count));
202 }
203 }
204
205 return metadata;
206}
virtual std::unordered_map< std::string, std::string > get_metadata() const
Get network metadata for debugging/visualization.
size_t get_node_count() const override
Get the number of nodes in the network.
std::unique_ptr< NetworkOperator > m_operator
Kinesis::SamplerBounds m_bounds