base: remove Trace::enabled flag

The DTRACE() macro tests both Trace::enabled and the specific flag. This
change uses the same administrative interface for enabling/disabling
tracing, but masks the SimpleFlags settings directly. This eliminates a
load for every DTRACE() test, e.g. DPRINTF.
This commit is contained in:
Curtis Dunham
2015-09-30 15:21:55 -05:00
parent ccf4f6c3d7
commit 02881a7bf3
13 changed files with 72 additions and 35 deletions

View File

@@ -32,7 +32,7 @@ import util
from internal.trace import output, ignore
def disable():
internal.trace.cvar.enabled = False
internal.trace.disable()
def enable():
internal.trace.cvar.enabled = True
internal.trace.enable()

View File

@@ -54,9 +54,11 @@ ignore(const char *expr)
Trace::getDebugLogger()->setIgnore(ignore);
}
using Trace::enabled;
inline void enable() { Trace::enable(); }
inline void disable() { Trace::disable(); }
%}
extern void output(const char *string);
extern void ignore(const char *expr);
extern bool enabled;
extern void enable();
extern void disable();