Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

macros.h File Reference

#include "debug/utils.h"

Go to the source code of this file.

Defines

#define THIN   "0"
#define BOLD   "1"
#define RED(S)   "\033["S";31m"
#define GREEN(S)   "\033["S";32m"
#define YELLOW(S)   "\033["S";33m"
#define BLUE(S)   "\033["S";34m"
#define MAGENTA(S)   "\033["S";35m"
#define CYAN(S)   "\033["S";36m"
#define WHITE(S)   "\033["S";37m"
#define NORMAL   "\033[0;0m"
#define DEFAULT_OUT   std::cout
#define DEFAULT_ERR   std::cerr
#define PRINT(OUT, S)   (OUT) << (S)
#define PRINT_INT(OUT, N)   (OUT) << (N)
#define PRINT_FILE(OUT)   PRINT(OUT, debug_shortSource(__FILE__))
#define DODEBUG(STATEMENT)   STATEMENT
#define PRINT_INFO(INFO)
#define PRINT_CINFO(COLOR, INFO)
#define PRINT_COLOR(OUT, COLOR)   PRINT(OUT, COLOR)
#define ASSERT(COND, PRINTME)
#define assertx(STATEMENT)   assert(STATEMENT)
#define DODEBUGX(STATEMENT)   STATEMENT
#define RAND()   rand()
#define RAND64()


Define Documentation

#define ASSERT COND,
PRINTME   ) 
 

Value:

do {                                               \
    if (!(COND))                                   \
    {                                              \
        PRINT_COLOR(DEFAULT_ERR, RED(BOLD));       \
        PRINT_FILE(DEFAULT_ERR);                   \
        PRINT(DEFAULT_ERR, "(");                   \
        PRINT_INT(DEFAULT_ERR, __LINE__);          \
        PRINT(DEFAULT_ERR, ") ");                  \
        PRINT(DEFAULT_ERR, __PRETTY_FUNCTION__);   \
        PRINT(DEFAULT_ERR, ": Assertion `"         \
              MAGENTA(BOLD) #COND RED(BOLD)        \
              "' failed." NORMAL "\n");            \
        PRINTME;                                   \
        abort();                                   \
    }                                              \
} while(0)

#define assertx STATEMENT   )     assert(STATEMENT)
 

#define BLUE S   )     "\033["S";34m"
 

#define BOLD   "1"
 

#define CYAN S   )     "\033["S";36m"
 

#define DEFAULT_ERR   std::cerr
 

#define DEFAULT_OUT   std::cout
 

#define DODEBUG STATEMENT   )     STATEMENT
 

#define DODEBUGX STATEMENT   )     STATEMENT
 

#define GREEN S   )     "\033["S";32m"
 

#define MAGENTA S   )     "\033["S";35m"
 

#define NORMAL   "\033[0;0m"
 

#define PRINT OUT,
S   )     (OUT) << (S)
 

#define PRINT_CINFO COLOR,
INFO   ) 
 

Value:

do {                                        \
  PRINT(DEFAULT_OUT, COLOR);                \
  PRINT(DEFAULT_OUT, __PRETTY_FUNCTION__);  \
  PRINT(DEFAULT_OUT, ": " INFO NORMAL "\n");\
} while(0)

#define PRINT_COLOR OUT,
COLOR   )     PRINT(OUT, COLOR)
 

#define PRINT_FILE OUT   )     PRINT(OUT, debug_shortSource(__FILE__))
 

#define PRINT_INFO INFO   ) 
 

Value:

do {                                       \
  PRINT(DEFAULT_OUT, __PRETTY_FUNCTION__); \
  PRINT(DEFAULT_OUT, ": " INFO "\n");      \
} while(0)

#define PRINT_INT OUT,
 )     (OUT) << (N)
 

 
#define RAND  )     rand()
 

 
#define RAND64  ) 
 

Value:

((((uint64_t)rand()) << 32) | \
 (((uint64_t)rand())))

#define RED S   )     "\033["S";31m"
 

#define THIN   "0"
 

#define WHITE S   )     "\033["S";37m"
 

#define YELLOW S   )     "\033["S";33m"
 


Generated on Fri Jun 30 00:02:51 2006 for Module debug by  doxygen 1.4.2