Merge tag 'trace-printf-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[drm/drm-misc.git] / tools / perf / util / color.h
blob9a7248dbe2d74e22c94fc04dab5cdf5de7adc74f
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __PERF_COLOR_H
3 #define __PERF_COLOR_H
5 #include <linux/compiler.h>
6 #include <stdio.h>
7 #include <stdarg.h>
9 /* "\033[1;38;5;2xx;48;5;2xxm\0" is 23 bytes */
10 #define COLOR_MAXLEN 24
12 #define PERF_COLOR_NORMAL ""
13 #define PERF_COLOR_RESET "\033[m"
14 #define PERF_COLOR_BOLD "\033[1m"
15 #define PERF_COLOR_RED "\033[31m"
16 #define PERF_COLOR_GREEN "\033[32m"
17 #define PERF_COLOR_YELLOW "\033[33m"
18 #define PERF_COLOR_BLUE "\033[34m"
19 #define PERF_COLOR_MAGENTA "\033[35m"
20 #define PERF_COLOR_CYAN "\033[36m"
21 #define PERF_COLOR_BG_RED "\033[41m"
23 #define MIN_GREEN 0.5
24 #define MIN_RED 5.0
26 #define PERF_COLOR_DELETE_LINE "\033[A\33[2K\r"
28 * This variable stores the value of color.ui
30 extern int perf_use_color_default;
34 * Use this instead of perf_default_config if you need the value of color.ui.
36 int perf_color_default_config(const char *var, const char *value, void *cb);
38 int perf_config_colorbool(const char *var, const char *value, int stdout_is_tty);
39 int color_vsnprintf(char *bf, size_t size, const char *color,
40 const char *fmt, va_list args);
41 int color_vfprintf(FILE *fp, const char *color, const char *fmt, va_list args);
42 int color_fprintf(FILE *fp, const char *color, const char *fmt, ...) __printf(3, 4);
43 int color_snprintf(char *bf, size_t size, const char *color, const char *fmt, ...) __printf(4, 5);
44 int value_color_snprintf(char *bf, size_t size, const char *fmt, double value);
45 int percent_color_snprintf(char *bf, size_t size, const char *fmt, ...) __printf(3, 4);
46 int percent_color_len_snprintf(char *bf, size_t size, const char *fmt, ...) __printf(3, 4);
47 int percent_color_fprintf(FILE *fp, const char *fmt, double percent);
48 const char *get_percent_color(double percent);
50 #endif /* __PERF_COLOR_H */