base: Reimplement the DPRINTF mechanism in a Logger class
authorAndrew Bardsley <Andrew.Bardsley@arm.com>
Thu, 16 Oct 2014 09:49:53 +0000 (05:49 -0400)
committerAndrew Bardsley <Andrew.Bardsley@arm.com>
Thu, 16 Oct 2014 09:49:53 +0000 (05:49 -0400)
commit960935a5bd31b0a325285beb1deb816429c7fe00
treefcd7159f26be72be63bc49242a7648c613232830
parenta2d246b6b8379f9a74dbc56feefc155f615b5ea4
base: Reimplement the DPRINTF mechanism in a Logger class

This patch adds a Logger class encapsulating dprintf.  This allows
variants of DPRINTF logging to be constructed and substituted in
place of the default behaviour.

The Logger provides a logMessage(when, name, format, ...) member
function like Trace::dprintf and a getOstream member function to
use a raw ostream for logging.

A class OstreamLogger is provided which generates the customary
debugging output with Trace::OstreamLogger::logMessage being the
old Trace::dprintf.
src/base/trace.cc
src/base/trace.hh
src/python/swig/trace.i