about summary refs log tree commit diff
path: root/cli/btcli.c
diff options
context:
space:
mode:
Diffstat (limited to 'cli/btcli.c')
-rw-r--r--cli/btcli.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/cli/btcli.c b/cli/btcli.c
index 78a3313..f1305a2 100644
--- a/cli/btcli.c
+++ b/cli/btcli.c
@@ -24,6 +24,35 @@ handle_ipc_res(enum ipc_err code, const char *cmd, const char *target)
     return code;
 }
 
+void
+print_percent(long long part, long long whole)
+{
+    printf("%5.1f%% ", floor(1000.0 * part / whole) / 10);
+}
+
+void
+print_rate(long long rate)
+{
+    if (rate >= 999.995 * (1 << 10))
+        printf("%6.2fMB/s ", (double)rate / (1 << 20));
+    else
+        printf("%6.2fkB/s ", (double)rate / (1 << 10));
+}
+
+void
+print_size(long long size)
+{
+    if (size >= 999.995 * (1 << 20))
+        printf("%6.2fG ", (double)size / (1 << 30));
+    else
+        printf("%6.2fM ", (double)size / (1 << 20));
+}
+void
+print_ratio(long long part, long long whole)
+{
+    printf("%7.2f ", (double)part / whole);
+}
+
 char
 tstate_char(enum ipc_tstate ts)
 {