28#ifndef __SYSTEMC_EXT_UTIL_SC_REPORT_HANDLER_HH__
29#define __SYSTEMC_EXT_UTIL_SC_REPORT_HANDLER_HH__
43 SC_UNSPECIFIED = 0x0000,
44 SC_DO_NOTHING = 0x0001,
48 SC_CACHE_REPORT = 0x0010,
49 SC_INTERRUPT = 0x0020,
58 SC_DEFAULT_ERROR_ACTIONS = SC_LOG | SC_CACHE_REPORT |
SC_THROW,
59 SC_DEFAULT_FATAL_ACTIONS = SC_LOG | SC_DISPLAY | SC_CACHE_REPORT | SC_ABORT
68 const char *file,
int line);
70 int verbosity,
const char *file,
int line);
83 static int stop_after(
const char *msg_type,
int limit=-1);
87 static int get_count(
const char *msg_type);
115#define SC_REPORT_INFO_VERB(msg_type, msg, verbosity) \
116 ::sc_core::sc_report_handler::report( \
117 ::sc_core::SC_INFO, msg_type, msg, verbosity, __FILE__, __LINE__)
119#define SC_REPORT_INFO(msg_type, msg) \
120 ::sc_core::sc_report_handler::report( \
121 ::sc_core::SC_INFO, msg_type, msg, __FILE__, __LINE__)
123#define SC_REPORT_WARNING(msg_type, msg) \
124 ::sc_core::sc_report_handler::report( \
125 ::sc_core::SC_WARNING, msg_type, msg, __FILE__, __LINE__)
127#define SC_REPORT_ERROR(msg_type, msg) \
128 ::sc_core::sc_report_handler::report( \
129 ::sc_core::SC_ERROR, msg_type, msg, __FILE__, __LINE__)
131#define SC_REPORT_FATAL(msg_type, msg) \
132 ::sc_core::sc_report_handler::report( \
133 ::sc_core::SC_FATAL, msg_type, msg, __FILE__, __LINE__)
135#define sc_assert(expr) \
136 ((void)((expr) ? 0 : (SC_REPORT_FATAL( \
137 ::sc_core::SC_ID_ASSERTION_FAILED_, #expr), 0)))
static sc_report * get_cached_report()
static sc_actions suppress()
static sc_actions set_actions(sc_severity, sc_actions=SC_UNSPECIFIED)
static int get_count(sc_severity)
static bool set_log_file_name(const char *)
static sc_actions get_new_action_id()
static sc_actions force()
static int set_verbosity_level(int)
static void default_handler(const sc_report &, const sc_actions &)
static sc_actions get_catch_actions()
static void report(sc_severity, const char *msg_type, const char *msg, const char *file, int line)
static const char * get_log_file_name()
static int stop_after(sc_severity, int limit=-1)
static sc_actions set_catch_actions(sc_actions)
static int get_verbosity_level()
static void set_handler(sc_report_handler_proc)
static void clear_cached_report()
bool sc_report_close_default_log()
void sc_interrupt_here(const char *msg_type, sc_severity)
const std::string sc_report_compose_message(const sc_report &)
void sc_stop_here(const char *msg_type, sc_severity)