Changeset 97 for trunk/IPs/systemC/processor/Morpheo/Common/include/Debug.h
- Timestamp:
- Dec 19, 2008, 4:34:00 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/IPs/systemC/processor/Morpheo/Common/include/Debug.h
r88 r97 9 9 * function to help the debugging : 10 10 * 11 * - debug_tab12 11 * - log_printf 13 12 * - log_begin … … 26 25 27 26 #include "Common/include/Message.h" 27 #include "Common/include/FromString.h" 28 #include "Common/include/ChangeCase.h" 28 29 #include "Behavioural/include/Debug_component.h" 29 30 #include <systemc.h> … … 36 37 namespace morpheo { 37 38 38 enum _debug_verbosity39 typedef enum 39 40 { 40 41 DEBUG_NONE , … … 43 44 DEBUG_FUNC , 44 45 DEBUG_ALL 45 } ;46 47 std::string debug_tab (void);48 void debug_tab_inc (void); 49 void debug_ tab_dec(void);50 46 } debug_verbosity_t; 47 48 extern debug_verbosity_t debug; 49 50 void debug_init (void); 51 void debug_init (debug_verbosity_t level); 51 52 #ifdef DEBUG 53 52 54 # define log_printf(level, component, func, str... ) \ 53 55 do \ 54 56 { \ 55 if ((DEBUG == DEBUG_ALL ) or \ 57 debug_init(); \ 58 \ 59 if ((debug == DEBUG_ALL ) or \ 56 60 (DEBUG_ ## level == DEBUG_NONE) or \ 57 (( DEBUG_ ## level <= DEBUG) and \61 (( DEBUG_ ## level <= debug) and \ 58 62 ( DEBUG_ ## component == true )) ) \ 59 63 { \ … … 67 71 } \ 68 72 \ 69 if (DEBUG >= DEBUG_FUNC) \ 70 { \ 71 msg("%s",debug_tab().c_str()); \ 72 } \ 73 if (DEBUG >= DEBUG_ALL ) \ 73 if (debug >= DEBUG_ALL ) \ 74 74 { \ 75 75 switch (DEBUG_ ## level) \ … … 83 83 } \ 84 84 } \ 85 if ( DEBUG>= DEBUG_FUNC) \85 if (debug >= DEBUG_FUNC) \ 86 86 { \ 87 87 msg( "<%s> " ,func); \ … … 98 98 do \ 99 99 { \ 100 debug_tab_inc (); \101 100 log_printf(FUNC,component,func,_("Begin")); \ 102 101 } while(0) … … 106 105 { \ 107 106 log_printf(FUNC,component,func,_("End")); \ 108 debug_tab_dec (); \109 107 } while(0) 110 108 … … 172 170 #endif 173 171 172 173 template<> inline debug_verbosity_t fromString<debug_verbosity_t> (const std::string& x) 174 { 175 std::string y=x; 176 LowerCase(y); 177 178 if ( (y.compare("0") == 0) or 179 (y.compare("none") == 0)) 180 return DEBUG_NONE ; 181 if ( (y.compare("1") == 0) or 182 (y.compare("info") == 0)) 183 return DEBUG_INFO ; 184 if ( (y.compare("2") == 0) or 185 (y.compare("trace") == 0)) 186 return DEBUG_TRACE; 187 if ( (y.compare("3") == 0) or 188 (y.compare("func") == 0)) 189 return DEBUG_FUNC ; 190 if ( (y.compare("4") == 0) or 191 (y.compare("all") == 0)) 192 return DEBUG_ALL ; 193 194 #ifdef DEBUG 195 return DEBUG; 196 #else 197 return DEBUG_NONE ; 198 #endif 199 } 200 174 201 }; // end namespace morpheo 175 202 #endif // !DEBUG_H
Note: See TracChangeset
for help on using the changeset viewer.