2 Copyright (C) 2012 Intel Corporation
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
14 You should have received a copy of the GNU Lesser General Public
15 License along with this library; if not, write to the Free Software
16 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
27 #include "timestamp.h"
31 void debugOut(string message);
37 static const int Error;
38 static const int Warning;
40 DebugOut(int debugLevel = 4)
42 mDebugLevel = debugLevel;
47 if(mDebugLevel <= debugThreshhold || mDebugLevel == Error || mDebugLevel == Warning)
49 out<<bufferTime(amb::currentTime())<<" | ";
51 if(mDebugLevel == Error)
53 if(mDebugLevel == Warning)
58 DebugOut const& operator << (string message) const
64 if(mDebugLevel <= debugThreshhold)
69 DebugOut const& operator << (ostream & (*manip)(std::ostream&)) const
75 if(mDebugLevel <= debugThreshhold)
80 DebugOut const & operator << (double val) const
86 if(mDebugLevel <= debugThreshhold)
91 static void setDebugThreshhold(int th)
96 static void setOutput(ostream &o)
103 std::string bufferTime(double time)
111 while(f.str().length() <= 15)
119 static int debugThreshhold;
120 static std::streambuf *buf;