tte_debug.h

Go to the documentation of this file.
00001 /* -*- coding: iso-8859-1 -*-
00002  * Copyright (C) 2009 TTTech Computertechnik AG. All rights reserved
00003  * Schoenbrunnerstrasse 7, A--1040 Wien, Austria. office@tttech.com
00004  *
00005  *++
00006  * Name
00007  *    tte_debug.h
00008  *
00009  * Purpose
00010  *    Debug functionality
00011  *
00012  * Revision Dates
00013  *    30-Jan-2009 (KZU) Creation
00014  *    19-Feb-2009 (KSE) Implement MISRA rules
00015  *    ««revision-date»»
00016  *--
00017  */
00018 #ifndef TTE_DEBUG_H_
00019 #define TTE_DEBUG_H_
00020 
00021 #include "tte_environment.h"
00022 
00023 #ifdef LOG_CALLS
00024 #   define enter()     print_log("  >> %s(), %s: %u\n", __func__, __FILE__, __LINE__)
00025 #   define leave(cmd)  do { \
00026         print_log("  << %s(), %s: %u\n", __func__, __FILE__, __LINE__); \
00027         cmd; \
00028     } while (0)
00029 #else
00030 #   define enter()
00031 #   define leave(cmd)  do {cmd;} while (0)
00032 #endif
00033 
00034 
00035 #ifdef TTE_DEBUG
00036 #define print_debug print_log
00037 #else
00038 #define print_debug(...)  do {} while(0)
00039 #endif
00040 
00041 #define print_debug_loc(msg)  print_debug("%s() in %s:%u - %s", __func__, __FILE__, __LINE__, msg)
00042 
00043 
00044 #ifdef TTE_DEBUG_VERBOSE
00045 #define print_debug_v  print_log
00046 #else
00047 #define print_debug_v(...)  do {} while(0)
00048 #endif
00049 
00050 
00051 /* The print_error macro is used to print detailed error messages.
00052  * This is normally enabled during compilation. */
00053 #ifdef TTE_VERBOSE_ERRORS
00054 #   define print_error        print_log
00055 #else
00056 #   define print_error(...)   do {} while(0)
00057 #endif
00058 
00059 #endif /* TTE_DEBUG_H_ */
00060 
Generated on Tue Nov 29 14:09:18 2011 for TTEthernet Model for INET Framework by  doxygen 1.6.3