mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-05-25 16:56:25 +08:00
listener: clear screen on multiple output
I suggest to clear the screen when using the listener with -n. This way the updates don't just scroll by which isn't legible but instead stay in place and update, similar to the top command.
This commit is contained in:
@@ -113,6 +113,9 @@ void listener(const orb_id_t &id, unsigned num_msgs, int topic_instance,
|
||||
fds[1].fd = sub;
|
||||
fds[1].events = POLLIN;
|
||||
|
||||
// Clear screen
|
||||
dprintf(1, "\033[2J\n");
|
||||
|
||||
while (msgs_received < num_msgs) {
|
||||
|
||||
if (poll(&fds[0], 2, int(MESSAGE_TIMEOUT_S * 1000)) > 0) {
|
||||
@@ -139,6 +142,8 @@ void listener(const orb_id_t &id, unsigned num_msgs, int topic_instance,
|
||||
if (fds[1].revents & POLLIN) {
|
||||
msgs_received++;
|
||||
|
||||
// Move cursor to home position
|
||||
dprintf(1, "\033[H");
|
||||
PX4_INFO_RAW("\nTOPIC: %s instance %d #%d\n", id->o_name, topic_instance, msgs_received);
|
||||
|
||||
int ret = listener_print_topic(id, sub);
|
||||
|
||||
Reference in New Issue
Block a user