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