Update of /cvsroot/pclasses/pclasses2/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10913/src
Modified Files:
Trace.cpp
Log Message:
- Added a this-pointer to P_TRACE macro.
- Added a P_TRACE_GLOBAL macro without this-pointer.
Index: Trace.cpp
===================================================================
RCS file: /cvsroot/pclasses/pclasses2/src/Trace.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- Trace.cpp 28 Apr 2005 10:11:36 -0000 1.2
+++ Trace.cpp 6 May 2005 15:26:25 -0000 1.3
@@ -24,8 +24,16 @@
namespace P {
-TraceStream::TraceStream(TraceLog& log, const SourceInfo& si, const char* cl)
-: std::ostream(new std::stringbuf()), _log(log), _src(si), _class(cl)
+TraceStream::TraceStream(TraceLog& log, const SourceInfo& si,
+ const char* cl, const void* obj)
+: std::ostream(new std::stringbuf()), _log(log), _src(si),
+ _class(cl), _obj(obj)
+{
+}
+
+TraceStream::TraceStream(TraceLog& log, const SourceInfo& si)
+: std::ostream(new std::stringbuf()), _log(log), _src(si),
+ _class(""), _obj(0)
{
}
@@ -38,7 +46,10 @@
TraceStream::~TraceStream()
{
std::stringbuf* sb = static_cast<std::stringbuf*>(rdbuf());
- _log.output(_src, _class, sb->str());
+ if(!_class.empty())
+ _log.output(_src, _class, _obj, sb->str());
+ else
+ _log.output(_src, sb->str());
delete sb;
}
@@ -58,16 +69,28 @@
{
}
-TraceStream TraceLog::stream(const SourceInfo& si, const char* cl)
+TraceStream TraceLog::stream(const SourceInfo& si, const char* cl,
+ const void* obj)
{
- return TraceStream(*this, si, cl);
+ return TraceStream(*this, si, cl, obj);
}
-void TraceLog::output(const SourceInfo& si, const std::string& cl,
- const std::string& msg)
+TraceStream TraceLog::stream(const SourceInfo& si)
+{
+ return TraceStream(*this, si);
+}
+
+void TraceLog::output(const SourceInfo& si, const std::string& cl,
+ const void* obj, const std::string& msg)
{
//std::cout << si.file() << ":" << si.line() << std::endl;
- std::cout << cl << ": " << msg << std::endl;
+ std::cout << cl << '[' << obj << "]: " << msg << std::endl;
+}
+
+void TraceLog::output(const SourceInfo& si, const std::string& msg)
+{
+ //std::cout << si.file() << ":" << si.line() << std::endl;
+ std::cout << msg << std::endl;
}
TraceLog& TraceLog::instance()
|