Mercurial > hg > orthanc
comparison Core/Logging.h @ 3996:c2b9a7a1c74a
ORTHANC_FRAMEWORK_BUILDING_PLUGIN
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 05 Jun 2020 18:26:01 +0200 |
parents | 1f405a3fdeca |
children | b3f09bc9734b |
comparison
equal
deleted
inserted
replaced
3995:1f405a3fdeca | 3996:c2b9a7a1c74a |
---|---|
62 | 62 |
63 namespace Orthanc | 63 namespace Orthanc |
64 { | 64 { |
65 namespace Logging | 65 namespace Logging |
66 { | 66 { |
67 enum Level | |
68 { | |
69 Level_ERROR, | |
70 Level_WARNING, | |
71 Level_INFO, | |
72 Level_TRACE | |
73 }; | |
74 | |
67 #if ORTHANC_ENABLE_LOGGING_PLUGIN == 1 | 75 #if ORTHANC_ENABLE_LOGGING_PLUGIN == 1 |
68 // "pluginContext" must be of type "OrthancPluginContext" | 76 // "pluginContext" must be of type "OrthancPluginContext" |
69 ORTHANC_PUBLIC void Initialize(void* pluginContext); | 77 ORTHANC_PUBLIC void Initialize(void* pluginContext); |
70 #else | 78 #else |
71 ORTHANC_PUBLIC void Initialize(); | 79 ORTHANC_PUBLIC void Initialize(); |
122 #elif (ORTHANC_ENABLE_LOGGING_PLUGIN == 1 || \ | 130 #elif (ORTHANC_ENABLE_LOGGING_PLUGIN == 1 || \ |
123 ORTHANC_ENABLE_LOGGING_STDIO == 1) | 131 ORTHANC_ENABLE_LOGGING_STDIO == 1) |
124 | 132 |
125 # include <boost/noncopyable.hpp> | 133 # include <boost/noncopyable.hpp> |
126 # define LOG(level) ::Orthanc::Logging::InternalLogger \ | 134 # define LOG(level) ::Orthanc::Logging::InternalLogger \ |
127 (::Orthanc::Logging::InternalLevel_ ## level, __FILE__, __LINE__) | 135 (::Orthanc::Logging::Level_ ## level, __FILE__, __LINE__) |
128 # define VLOG(level) ::Orthanc::Logging::InternalLogger \ | 136 # define VLOG(level) ::Orthanc::Logging::InternalLogger \ |
129 (::Orthanc::Logging::InternalLevel_TRACE, __FILE__, __LINE__) | 137 (::Orthanc::Logging::Level_TRACE, __FILE__, __LINE__) |
130 | 138 |
131 namespace Orthanc | 139 namespace Orthanc |
132 { | 140 { |
133 namespace Logging | 141 namespace Logging |
134 { | 142 { |
135 enum InternalLevel | |
136 { | |
137 InternalLevel_ERROR, | |
138 InternalLevel_WARNING, | |
139 InternalLevel_INFO, | |
140 InternalLevel_TRACE | |
141 }; | |
142 | |
143 class ORTHANC_PUBLIC InternalLogger : public boost::noncopyable | 143 class ORTHANC_PUBLIC InternalLogger : public boost::noncopyable |
144 { | 144 { |
145 private: | 145 private: |
146 InternalLevel level_; | 146 Level level_; |
147 std::stringstream messageStream_; | 147 std::stringstream messageStream_; |
148 | 148 |
149 public: | 149 public: |
150 InternalLogger(InternalLevel level, | 150 InternalLogger(Level level, |
151 const char* file, | 151 const char* file, |
152 int line); | 152 int line); |
153 | 153 |
154 ~InternalLogger(); | 154 ~InternalLogger(); |
155 | 155 |