blob: dea082b7960210a17ccd2ee12d71a61a6192a503 [file] [log] [blame]
John Kacur8b40f522009-09-24 18:02:18 +02001#ifndef __PERF_COLOR_H
2#define __PERF_COLOR_H
Ingo Molnar8fc03212009-06-04 15:19:47 +02003
4/* "\033[1;38;5;2xx;48;5;2xxm\0" is 23 bytes */
5#define COLOR_MAXLEN 24
6
7#define PERF_COLOR_NORMAL ""
8#define PERF_COLOR_RESET "\033[m"
9#define PERF_COLOR_BOLD "\033[1m"
10#define PERF_COLOR_RED "\033[31m"
11#define PERF_COLOR_GREEN "\033[32m"
12#define PERF_COLOR_YELLOW "\033[33m"
13#define PERF_COLOR_BLUE "\033[34m"
14#define PERF_COLOR_MAGENTA "\033[35m"
15#define PERF_COLOR_CYAN "\033[36m"
16#define PERF_COLOR_BG_RED "\033[41m"
17
Frederic Weisbecker1e11fd82009-07-02 20:14:34 +020018#define MIN_GREEN 0.5
19#define MIN_RED 5.0
20
Ingo Molnar8fc03212009-06-04 15:19:47 +020021/*
22 * This variable stores the value of color.ui
23 */
24extern int perf_use_color_default;
25
26
27/*
28 * Use this instead of perf_default_config if you need the value of color.ui.
29 */
30int perf_color_default_config(const char *var, const char *value, void *cb);
31
32int perf_config_colorbool(const char *var, const char *value, int stdout_is_tty);
33void color_parse(const char *value, const char *var, char *dst);
34void color_parse_mem(const char *value, int len, const char *var, char *dst);
Arnaldo Carvalho de Meloa4e3b952010-03-31 11:33:40 -030035int color_vsnprintf(char *bf, size_t size, const char *color,
36 const char *fmt, va_list args);
Frederic Weisbecker8f28827a2009-08-16 22:05:48 +020037int color_vfprintf(FILE *fp, const char *color, const char *fmt, va_list args);
Ingo Molnar8fc03212009-06-04 15:19:47 +020038int color_fprintf(FILE *fp, const char *color, const char *fmt, ...);
Arnaldo Carvalho de Meloa4e3b952010-03-31 11:33:40 -030039int color_snprintf(char *bf, size_t size, const char *color, const char *fmt, ...);
Ingo Molnar8fc03212009-06-04 15:19:47 +020040int color_fprintf_ln(FILE *fp, const char *color, const char *fmt, ...);
41int color_fwrite_lines(FILE *fp, const char *color, size_t count, const char *buf);
Arnaldo Carvalho de Meloa4e3b952010-03-31 11:33:40 -030042int percent_color_snprintf(char *bf, size_t size, const char *fmt, double percent);
Frederic Weisbecker1e11fd82009-07-02 20:14:34 +020043int percent_color_fprintf(FILE *fp, const char *fmt, double percent);
Ingo Molnar83a09442009-08-15 12:26:57 +020044const char *get_percent_color(double percent);
Ingo Molnar8fc03212009-06-04 15:19:47 +020045
John Kacur8b40f522009-09-24 18:02:18 +020046#endif /* __PERF_COLOR_H */