27 #include "timestamp.h"
31 void debugOut(
const string &message);
37 static const int Error;
38 static const int Warning;
42 mDebugLevel = debugLevel;
44 if(mDebugLevel <= debugThreshhold || mDebugLevel == Error || mDebugLevel == Warning)
48 out<<bufferTime(amb::currentTime())<<
" | ";
50 if(mDebugLevel == Error)
52 if(mDebugLevel == Warning)
56 DebugOut const& operator << (
const string &message)
const
58 if(mDebugLevel <= debugThreshhold || mDebugLevel == Error || mDebugLevel == Warning)
67 DebugOut const& operator << (ostream & (*manip)(std::ostream&))
const
71 if(mDebugLevel <= debugThreshhold || mDebugLevel == Error || mDebugLevel == Warning)
77 if((mDebugLevel == Error && throwErr))
79 throw std::runtime_error(
"Abort on Error is set");
81 else if ((mDebugLevel == Warning && throwWarn))
83 throw std::runtime_error(
"Abort on Warning is set");
89 DebugOut const & operator << (
double val)
const
91 if(mDebugLevel <= debugThreshhold || mDebugLevel == Error || mDebugLevel == Warning)
100 static void setDebugThreshhold(
int th)
102 debugThreshhold = th;
105 static void setOutput(ostream &o)
110 static void setThrowWarn(
bool v)
115 static void setThrowErr(
bool v)
120 static const int getDebugThreshhold()
122 return debugThreshhold;
127 std::string bufferTime(
double time)
135 while(f.str().length() <= 15)
143 static int debugThreshhold;
144 static std::streambuf *buf;
145 static bool throwWarn;
146 static bool throwErr;
Definition: debugout.h:33