Go to the documentation of this file.00001 #ifndef logging_log_trace_H
00002 #define logging_log_trace_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00032 #ifndef __cplusplus
00033 #error This is a C++ include file and cannot be used from plain C
00034 #endif
00035
00036 #include <string>
00037 #include "loggingLogger.h"
00038 #include <OS_NS_time.h>
00039
00040 namespace Logging
00041 {
00042
00046 class LogTrace
00047 {
00048 public:
00050 typedef Loki::SmartPtr<LogTrace,
00051 Loki::NoCopy,
00052 Loki::DisallowConversion,
00053 Loki::RejectNull,
00054 Loki::DefaultSPStorage> LogTraceSmartPtr;
00055
00063 LogTrace(Logger::LoggerSmartPtr logger,
00064 const std::string &method,
00065 const std::string &file,
00066 unsigned long line);
00067
00073 LogTrace(Logger::LoggerSmartPtr logger,
00074 const std::string &method);
00075
00079 virtual
00080 ~LogTrace();
00081
00082 protected:
00083
00091 virtual void
00092 entryLog(Logger::LoggerSmartPtr logger,
00093 std::string method,
00094 std::string file,
00095 unsigned long line);
00096
00097 private:
00099 Logger::LoggerSmartPtr logger_m;
00100
00102 std::string methodName_m;
00103
00104
00105 std::string fileName_m;
00106
00107
00108 unsigned long lineNumber_m;
00109
00110 ACE_Time_Value start_time;
00111 ACE_Time_Value end_time;
00112 };
00113
00114 };
00115
00116 #endif