1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __PERF_COLOR_H 3 #define __PERF_COLOR_H 4 5 #include <stdio.h> 6 7 /* "\033[1;38;5;2xx;48;5;2xxm\0" is 23 bytes */ 8 #define COLOR_MAXLEN 24 9 10 #define PERF_COLOR_NORMAL "" 11 #define PERF_COLOR_RESET "\033[m" 12 #define PERF_COLOR_BOLD "\033[1m" 13 #define PERF_COLOR_RED "\033[31m" 14 #define PERF_COLOR_GREEN "\033[32m" 15 #define PERF_COLOR_YELLOW "\033[33m" 16 #define PERF_COLOR_BLUE "\033[34m" 17 #define PERF_COLOR_MAGENTA "\033[35m" 18 #define PERF_COLOR_CYAN "\033[36m" 19 #define PERF_COLOR_BG_RED "\033[41m" 20 21 #define MIN_GREEN 0.5 22 #define MIN_RED 5.0 23 24 /* 25 * This variable stores the value of color.ui 26 */ 27 extern int perf_use_color_default; 28 29 30 /* 31 * Use this instead of perf_default_config if you need the value of color.ui. 32 */ 33 int perf_color_default_config(const char *var, const char *value, void *cb); 34 35 int perf_config_colorbool(const char *var, const char *value, int stdout_is_tty); 36 int color_vsnprintf(char *bf, size_t size, const char *color, 37 const char *fmt, va_list args); 38 int color_vfprintf(FILE *fp, const char *color, const char *fmt, va_list args); 39 int color_fprintf(FILE *fp, const char *color, const char *fmt, ...); 40 int color_snprintf(char *bf, size_t size, const char *color, const char *fmt, ...); 41 int color_fwrite_lines(FILE *fp, const char *color, size_t count, const char *buf); 42 int value_color_snprintf(char *bf, size_t size, const char *fmt, double value); 43 int percent_color_snprintf(char *bf, size_t size, const char *fmt, ...); 44 int percent_color_len_snprintf(char *bf, size_t size, const char *fmt, ...); 45 int percent_color_fprintf(FILE *fp, const char *fmt, double percent); 46 const char *get_percent_color(double percent); 47 48 #endif /* __PERF_COLOR_H */ 49