14 #include "tbb/spin_mutex.h"
44 virtual void addPrinter(
DtPrinter* printer);
47 virtual void addAndManagePrinter(
DtPrinter* printer);
51 virtual void removePrinter(
DtPrinter* printer);
56 virtual DtOutputStream& printError(
const DtString& channel =
"");
57 virtual DtOutputStream& printWarn(
const DtString& channel =
"");
58 virtual DtOutputStream& printInfo(
const DtString& channel =
"");
59 virtual DtOutputStream& printVerbose(
const DtString& channel =
"");
60 virtual DtOutputStream& printDebug(
const DtString& channel =
"");
64 virtual int channelNotifyLevel(
const DtString& channel);
65 virtual void setChannelNotifyLevel(
const DtString& channel,
69 virtual void setChannelPrefix(
const DtString& channel,
72 virtual bool channelEnabled(
const DtString& channel);
73 virtual void setChannelEnabled(
const DtString& channel,
76 virtual void addDefaultStream(
int notifyLevel, DtOutputStream&
stream);
78 virtual DtOutputStream& defaultStream(
int notifyLevel);
81 virtual void printStatus(
const DtString& channel =
"");
86 DtOutputStreamBuffer*,
int&,
int,
DtPrinter*,
const std::string&);
87 virtual void setStreamCreatorFcn(DtOutputChannelStreamCreatorFcn fcn);
89 typedef DtOutputStreamBuffer* (*DtOutputStreamBufferCreatorFcn)();
90 virtual void setStreamBufferCreatorFcn(DtOutputStreamBufferCreatorFcn fcn);
92 virtual DtOutputStreamBuffer* createStreamBuffer();
94 virtual void setManageDefaultStreams(
bool manage);
96 virtual std::vector<DtString> allChannels();
99 virtual DtOutputStream& streamForChannel(
const DtString& channel,
int notifyLevel);
102 int &globalThresholdRef,
int threshold = 1,
DtPrinter *dflt_printer = 0,
103 const std::string& prefix =
"");
105 virtual void attachToAllStreams(
DtPrinter* printer);
106 virtual void detachFromAllStreams(
DtPrinter* printer);
110 virtual void addAllPrinters(DtOutputStream*
stream);
153 DtOutputStreamBuffer *b,
154 int &globalThresholdRef,
157 const std::string& prefix =
"")
158 : DtOutputStream(b, globalThresholdRef, threshold, dflt_printer)
168 virtual void write(
const std::string &str )
191 DtOutputStreamBuffer *b,
192 int &globalThresholdRef,
195 const std::string& prefix =
"")
198 threshold, dflt_printer, prefix);