1 
   2 #ifndef __PERF_COLOR_H
   3 #define __PERF_COLOR_H
   4 
   5 #include <stdio.h>
   6 #include <stdarg.h>
   7 
   8 
   9 #define COLOR_MAXLEN 24
  10 
  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.5
  23 #define MIN_RED         5.0
  24 
  25 
  26 
  27 
  28 extern int perf_use_color_default;
  29 
  30 
  31 
  32 
  33 
  34 int perf_color_default_config(const char *var, const char *value, void *cb);
  35 
  36 int perf_config_colorbool(const char *var, const char *value, int stdout_is_tty);
  37 int color_vsnprintf(char *bf, size_t size, const char *color,
  38                     const char *fmt, va_list args);
  39 int color_vfprintf(FILE *fp, const char *color, const char *fmt, va_list args);
  40 int color_fprintf(FILE *fp, const char *color, const char *fmt, ...);
  41 int color_snprintf(char *bf, size_t size, const char *color, const char *fmt, ...);
  42 int color_fwrite_lines(FILE *fp, const char *color, size_t count, const char *buf);
  43 int value_color_snprintf(char *bf, size_t size, const char *fmt, double value);
  44 int percent_color_snprintf(char *bf, size_t size, const char *fmt, ...);
  45 int percent_color_len_snprintf(char *bf, size_t size, const char *fmt, ...);
  46 int percent_color_fprintf(FILE *fp, const char *fmt, double percent);
  47 const char *get_percent_color(double percent);
  48 
  49 #endif