Home | History | Annotate | Download | only in src
      1 #ifndef BENCHMARK_COLORPRINT_H_
      2 #define BENCHMARK_COLORPRINT_H_
      3 
      4 #include <cstdarg>
      5 #include <iostream>
      6 #include <string>
      7 
      8 namespace benchmark {
      9 enum LogColor {
     10   COLOR_DEFAULT,
     11   COLOR_RED,
     12   COLOR_GREEN,
     13   COLOR_YELLOW,
     14   COLOR_BLUE,
     15   COLOR_MAGENTA,
     16   COLOR_CYAN,
     17   COLOR_WHITE
     18 };
     19 
     20 std::string FormatString(const char* msg, va_list args);
     21 std::string FormatString(const char* msg, ...);
     22 
     23 void ColorPrintf(std::ostream& out, LogColor color, const char* fmt,
     24                  va_list args);
     25 void ColorPrintf(std::ostream& out, LogColor color, const char* fmt, ...);
     26 
     27 // Returns true if stdout appears to be a terminal that supports colored
     28 // output, false otherwise.
     29 bool IsColorTerminal();
     30 
     31 }  // end namespace benchmark
     32 
     33 #endif  // BENCHMARK_COLORPRINT_H_
     34