ros2_control - humble
Loading...
Searching...
No Matches
sim_display_text.hpp
1
19#pragma once
20
21#include <cstdint>
22#include <cstdio>
23#include <string>
24#include <utility>
25
26namespace mujoco_ros2_control
27{
28
50inline std::pair<std::string, std::string> compose_sim_display_text(bool running, uint64_t step_count, double sim_time,
51 double desired_pct, double actual_pct, int ncon)
52{
53 char sim_time_buf[24], desired_buf[16], actual_buf[16];
54 std::snprintf(sim_time_buf, sizeof(sim_time_buf), "%.3f s", sim_time);
55 std::snprintf(desired_buf, sizeof(desired_buf), "%.1f%%", desired_pct);
56 std::snprintf(actual_buf, sizeof(actual_buf), "%.1f%%", actual_pct);
57
58 const std::string title = "Status\nSteps\nSim Time\nDesired Speed\nActual Speed\nContacts";
59 const std::string content = std::string(running ? "Running" : "Paused") + "\n" + std::to_string(step_count) + "\n" +
60 sim_time_buf + "\n" + desired_buf + "\n" + actual_buf + "\n" + std::to_string(ncon);
61 return { title, content };
62}
63
64} // namespace mujoco_ros2_control
Definition data.hpp:31
std::pair< std::string, std::string > compose_sim_display_text(bool running, uint64_t step_count, double sim_time, double desired_pct, double actual_pct, int ncon)
Composes the title/content text pair for the native-viewer status overlay.
Definition sim_display_text.hpp:50