μHAL (v2.8.17)
Part of the IPbus software repository
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
log.hxx
Go to the documentation of this file.
1
2#include <mutex> // for lock_guard, mutex
3#include <sstream> // for ostream, stringstream, endl
4#include <string> // for operator+, basic_string
5
6#include "uhal/log/exception.hpp" // for exception
7#include "uhal/log/LogLevels.hpp" // for insert, ErrorLevel, DebugL...
8#include "uhal/log/log_inserters.quote.hpp" // for operator<<
9
10
11namespace uhal{
12
13// ======================================================================================================================================================
14// WARNING! This file is automatically generated! Do not modify it! Any changes will be overwritten!
15// ======================================================================================================================================================
16
17template< typename T0 >
18void log ( FatalLevel& aFatal , const T0& aArg0 )
19{
20 #ifndef LOGGING_EXCLUDE_FATAL
21 if( LoggingIncludes( aFatal ) ){
22 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
23 std::ostream& lStr( aFatal.stream() );
24 aFatal.head();
25 insert( lStr , aArg0 );
26 aFatal.tail();
27 }
28 #endif
29}
30
31template< typename T0 , typename T1 >
32void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 )
33{
34 #ifndef LOGGING_EXCLUDE_FATAL
35 if( LoggingIncludes( aFatal ) ){
36 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
37 std::ostream& lStr( aFatal.stream() );
38 aFatal.head();
39 insert( lStr , aArg0 );
40 insert( lStr , aArg1 );
41 aFatal.tail();
42 }
43 #endif
44}
45
46template< typename T0 , typename T1 , typename T2 >
47void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 )
48{
49 #ifndef LOGGING_EXCLUDE_FATAL
50 if( LoggingIncludes( aFatal ) ){
51 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
52 std::ostream& lStr( aFatal.stream() );
53 aFatal.head();
54 insert( lStr , aArg0 );
55 insert( lStr , aArg1 );
56 insert( lStr , aArg2 );
57 aFatal.tail();
58 }
59 #endif
60}
61
62template< typename T0 , typename T1 , typename T2 , typename T3 >
63void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 )
64{
65 #ifndef LOGGING_EXCLUDE_FATAL
66 if( LoggingIncludes( aFatal ) ){
67 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
68 std::ostream& lStr( aFatal.stream() );
69 aFatal.head();
70 insert( lStr , aArg0 );
71 insert( lStr , aArg1 );
72 insert( lStr , aArg2 );
73 insert( lStr , aArg3 );
74 aFatal.tail();
75 }
76 #endif
77}
78
79template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
80void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 )
81{
82 #ifndef LOGGING_EXCLUDE_FATAL
83 if( LoggingIncludes( aFatal ) ){
84 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
85 std::ostream& lStr( aFatal.stream() );
86 aFatal.head();
87 insert( lStr , aArg0 );
88 insert( lStr , aArg1 );
89 insert( lStr , aArg2 );
90 insert( lStr , aArg3 );
91 insert( lStr , aArg4 );
92 aFatal.tail();
93 }
94 #endif
95}
96
97template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
98void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 )
99{
100 #ifndef LOGGING_EXCLUDE_FATAL
101 if( LoggingIncludes( aFatal ) ){
102 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
103 std::ostream& lStr( aFatal.stream() );
104 aFatal.head();
105 insert( lStr , aArg0 );
106 insert( lStr , aArg1 );
107 insert( lStr , aArg2 );
108 insert( lStr , aArg3 );
109 insert( lStr , aArg4 );
110 insert( lStr , aArg5 );
111 aFatal.tail();
112 }
113 #endif
114}
115
116template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
117void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 )
118{
119 #ifndef LOGGING_EXCLUDE_FATAL
120 if( LoggingIncludes( aFatal ) ){
121 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
122 std::ostream& lStr( aFatal.stream() );
123 aFatal.head();
124 insert( lStr , aArg0 );
125 insert( lStr , aArg1 );
126 insert( lStr , aArg2 );
127 insert( lStr , aArg3 );
128 insert( lStr , aArg4 );
129 insert( lStr , aArg5 );
130 insert( lStr , aArg6 );
131 aFatal.tail();
132 }
133 #endif
134}
135
136template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
137void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 )
138{
139 #ifndef LOGGING_EXCLUDE_FATAL
140 if( LoggingIncludes( aFatal ) ){
141 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
142 std::ostream& lStr( aFatal.stream() );
143 aFatal.head();
144 insert( lStr , aArg0 );
145 insert( lStr , aArg1 );
146 insert( lStr , aArg2 );
147 insert( lStr , aArg3 );
148 insert( lStr , aArg4 );
149 insert( lStr , aArg5 );
150 insert( lStr , aArg6 );
151 insert( lStr , aArg7 );
152 aFatal.tail();
153 }
154 #endif
155}
156
157template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
158void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 )
159{
160 #ifndef LOGGING_EXCLUDE_FATAL
161 if( LoggingIncludes( aFatal ) ){
162 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
163 std::ostream& lStr( aFatal.stream() );
164 aFatal.head();
165 insert( lStr , aArg0 );
166 insert( lStr , aArg1 );
167 insert( lStr , aArg2 );
168 insert( lStr , aArg3 );
169 insert( lStr , aArg4 );
170 insert( lStr , aArg5 );
171 insert( lStr , aArg6 );
172 insert( lStr , aArg7 );
173 insert( lStr , aArg8 );
174 aFatal.tail();
175 }
176 #endif
177}
178
179template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
180void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 )
181{
182 #ifndef LOGGING_EXCLUDE_FATAL
183 if( LoggingIncludes( aFatal ) ){
184 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
185 std::ostream& lStr( aFatal.stream() );
186 aFatal.head();
187 insert( lStr , aArg0 );
188 insert( lStr , aArg1 );
189 insert( lStr , aArg2 );
190 insert( lStr , aArg3 );
191 insert( lStr , aArg4 );
192 insert( lStr , aArg5 );
193 insert( lStr , aArg6 );
194 insert( lStr , aArg7 );
195 insert( lStr , aArg8 );
196 insert( lStr , aArg9 );
197 aFatal.tail();
198 }
199 #endif
200}
201
202template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
203void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 )
204{
205 #ifndef LOGGING_EXCLUDE_FATAL
206 if( LoggingIncludes( aFatal ) ){
207 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
208 std::ostream& lStr( aFatal.stream() );
209 aFatal.head();
210 insert( lStr , aArg0 );
211 insert( lStr , aArg1 );
212 insert( lStr , aArg2 );
213 insert( lStr , aArg3 );
214 insert( lStr , aArg4 );
215 insert( lStr , aArg5 );
216 insert( lStr , aArg6 );
217 insert( lStr , aArg7 );
218 insert( lStr , aArg8 );
219 insert( lStr , aArg9 );
220 insert( lStr , aArg10 );
221 aFatal.tail();
222 }
223 #endif
224}
225
226template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 >
227void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 )
228{
229 #ifndef LOGGING_EXCLUDE_FATAL
230 if( LoggingIncludes( aFatal ) ){
231 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
232 std::ostream& lStr( aFatal.stream() );
233 aFatal.head();
234 insert( lStr , aArg0 );
235 insert( lStr , aArg1 );
236 insert( lStr , aArg2 );
237 insert( lStr , aArg3 );
238 insert( lStr , aArg4 );
239 insert( lStr , aArg5 );
240 insert( lStr , aArg6 );
241 insert( lStr , aArg7 );
242 insert( lStr , aArg8 );
243 insert( lStr , aArg9 );
244 insert( lStr , aArg10 );
245 insert( lStr , aArg11 );
246 aFatal.tail();
247 }
248 #endif
249}
250
251template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 >
252void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 )
253{
254 #ifndef LOGGING_EXCLUDE_FATAL
255 if( LoggingIncludes( aFatal ) ){
256 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
257 std::ostream& lStr( aFatal.stream() );
258 aFatal.head();
259 insert( lStr , aArg0 );
260 insert( lStr , aArg1 );
261 insert( lStr , aArg2 );
262 insert( lStr , aArg3 );
263 insert( lStr , aArg4 );
264 insert( lStr , aArg5 );
265 insert( lStr , aArg6 );
266 insert( lStr , aArg7 );
267 insert( lStr , aArg8 );
268 insert( lStr , aArg9 );
269 insert( lStr , aArg10 );
270 insert( lStr , aArg11 );
271 insert( lStr , aArg12 );
272 aFatal.tail();
273 }
274 #endif
275}
276
277template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 >
278void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 )
279{
280 #ifndef LOGGING_EXCLUDE_FATAL
281 if( LoggingIncludes( aFatal ) ){
282 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
283 std::ostream& lStr( aFatal.stream() );
284 aFatal.head();
285 insert( lStr , aArg0 );
286 insert( lStr , aArg1 );
287 insert( lStr , aArg2 );
288 insert( lStr , aArg3 );
289 insert( lStr , aArg4 );
290 insert( lStr , aArg5 );
291 insert( lStr , aArg6 );
292 insert( lStr , aArg7 );
293 insert( lStr , aArg8 );
294 insert( lStr , aArg9 );
295 insert( lStr , aArg10 );
296 insert( lStr , aArg11 );
297 insert( lStr , aArg12 );
298 insert( lStr , aArg13 );
299 aFatal.tail();
300 }
301 #endif
302}
303
304template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 >
305void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 )
306{
307 #ifndef LOGGING_EXCLUDE_FATAL
308 if( LoggingIncludes( aFatal ) ){
309 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
310 std::ostream& lStr( aFatal.stream() );
311 aFatal.head();
312 insert( lStr , aArg0 );
313 insert( lStr , aArg1 );
314 insert( lStr , aArg2 );
315 insert( lStr , aArg3 );
316 insert( lStr , aArg4 );
317 insert( lStr , aArg5 );
318 insert( lStr , aArg6 );
319 insert( lStr , aArg7 );
320 insert( lStr , aArg8 );
321 insert( lStr , aArg9 );
322 insert( lStr , aArg10 );
323 insert( lStr , aArg11 );
324 insert( lStr , aArg12 );
325 insert( lStr , aArg13 );
326 insert( lStr , aArg14 );
327 aFatal.tail();
328 }
329 #endif
330}
331
332template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 >
333void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 )
334{
335 #ifndef LOGGING_EXCLUDE_FATAL
336 if( LoggingIncludes( aFatal ) ){
337 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
338 std::ostream& lStr( aFatal.stream() );
339 aFatal.head();
340 insert( lStr , aArg0 );
341 insert( lStr , aArg1 );
342 insert( lStr , aArg2 );
343 insert( lStr , aArg3 );
344 insert( lStr , aArg4 );
345 insert( lStr , aArg5 );
346 insert( lStr , aArg6 );
347 insert( lStr , aArg7 );
348 insert( lStr , aArg8 );
349 insert( lStr , aArg9 );
350 insert( lStr , aArg10 );
351 insert( lStr , aArg11 );
352 insert( lStr , aArg12 );
353 insert( lStr , aArg13 );
354 insert( lStr , aArg14 );
355 insert( lStr , aArg15 );
356 aFatal.tail();
357 }
358 #endif
359}
360
361template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 >
362void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 )
363{
364 #ifndef LOGGING_EXCLUDE_FATAL
365 if( LoggingIncludes( aFatal ) ){
366 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
367 std::ostream& lStr( aFatal.stream() );
368 aFatal.head();
369 insert( lStr , aArg0 );
370 insert( lStr , aArg1 );
371 insert( lStr , aArg2 );
372 insert( lStr , aArg3 );
373 insert( lStr , aArg4 );
374 insert( lStr , aArg5 );
375 insert( lStr , aArg6 );
376 insert( lStr , aArg7 );
377 insert( lStr , aArg8 );
378 insert( lStr , aArg9 );
379 insert( lStr , aArg10 );
380 insert( lStr , aArg11 );
381 insert( lStr , aArg12 );
382 insert( lStr , aArg13 );
383 insert( lStr , aArg14 );
384 insert( lStr , aArg15 );
385 insert( lStr , aArg16 );
386 aFatal.tail();
387 }
388 #endif
389}
390
391template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 >
392void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 )
393{
394 #ifndef LOGGING_EXCLUDE_FATAL
395 if( LoggingIncludes( aFatal ) ){
396 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
397 std::ostream& lStr( aFatal.stream() );
398 aFatal.head();
399 insert( lStr , aArg0 );
400 insert( lStr , aArg1 );
401 insert( lStr , aArg2 );
402 insert( lStr , aArg3 );
403 insert( lStr , aArg4 );
404 insert( lStr , aArg5 );
405 insert( lStr , aArg6 );
406 insert( lStr , aArg7 );
407 insert( lStr , aArg8 );
408 insert( lStr , aArg9 );
409 insert( lStr , aArg10 );
410 insert( lStr , aArg11 );
411 insert( lStr , aArg12 );
412 insert( lStr , aArg13 );
413 insert( lStr , aArg14 );
414 insert( lStr , aArg15 );
415 insert( lStr , aArg16 );
416 insert( lStr , aArg17 );
417 aFatal.tail();
418 }
419 #endif
420}
421
422template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 >
423void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 )
424{
425 #ifndef LOGGING_EXCLUDE_FATAL
426 if( LoggingIncludes( aFatal ) ){
427 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
428 std::ostream& lStr( aFatal.stream() );
429 aFatal.head();
430 insert( lStr , aArg0 );
431 insert( lStr , aArg1 );
432 insert( lStr , aArg2 );
433 insert( lStr , aArg3 );
434 insert( lStr , aArg4 );
435 insert( lStr , aArg5 );
436 insert( lStr , aArg6 );
437 insert( lStr , aArg7 );
438 insert( lStr , aArg8 );
439 insert( lStr , aArg9 );
440 insert( lStr , aArg10 );
441 insert( lStr , aArg11 );
442 insert( lStr , aArg12 );
443 insert( lStr , aArg13 );
444 insert( lStr , aArg14 );
445 insert( lStr , aArg15 );
446 insert( lStr , aArg16 );
447 insert( lStr , aArg17 );
448 insert( lStr , aArg18 );
449 aFatal.tail();
450 }
451 #endif
452}
453
454template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 >
455void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 )
456{
457 #ifndef LOGGING_EXCLUDE_FATAL
458 if( LoggingIncludes( aFatal ) ){
459 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
460 std::ostream& lStr( aFatal.stream() );
461 aFatal.head();
462 insert( lStr , aArg0 );
463 insert( lStr , aArg1 );
464 insert( lStr , aArg2 );
465 insert( lStr , aArg3 );
466 insert( lStr , aArg4 );
467 insert( lStr , aArg5 );
468 insert( lStr , aArg6 );
469 insert( lStr , aArg7 );
470 insert( lStr , aArg8 );
471 insert( lStr , aArg9 );
472 insert( lStr , aArg10 );
473 insert( lStr , aArg11 );
474 insert( lStr , aArg12 );
475 insert( lStr , aArg13 );
476 insert( lStr , aArg14 );
477 insert( lStr , aArg15 );
478 insert( lStr , aArg16 );
479 insert( lStr , aArg17 );
480 insert( lStr , aArg18 );
481 insert( lStr , aArg19 );
482 aFatal.tail();
483 }
484 #endif
485}
486
487template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 >
488void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 )
489{
490 #ifndef LOGGING_EXCLUDE_FATAL
491 if( LoggingIncludes( aFatal ) ){
492 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
493 std::ostream& lStr( aFatal.stream() );
494 aFatal.head();
495 insert( lStr , aArg0 );
496 insert( lStr , aArg1 );
497 insert( lStr , aArg2 );
498 insert( lStr , aArg3 );
499 insert( lStr , aArg4 );
500 insert( lStr , aArg5 );
501 insert( lStr , aArg6 );
502 insert( lStr , aArg7 );
503 insert( lStr , aArg8 );
504 insert( lStr , aArg9 );
505 insert( lStr , aArg10 );
506 insert( lStr , aArg11 );
507 insert( lStr , aArg12 );
508 insert( lStr , aArg13 );
509 insert( lStr , aArg14 );
510 insert( lStr , aArg15 );
511 insert( lStr , aArg16 );
512 insert( lStr , aArg17 );
513 insert( lStr , aArg18 );
514 insert( lStr , aArg19 );
515 insert( lStr , aArg20 );
516 aFatal.tail();
517 }
518 #endif
519}
520
521template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 >
522void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 )
523{
524 #ifndef LOGGING_EXCLUDE_FATAL
525 if( LoggingIncludes( aFatal ) ){
526 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
527 std::ostream& lStr( aFatal.stream() );
528 aFatal.head();
529 insert( lStr , aArg0 );
530 insert( lStr , aArg1 );
531 insert( lStr , aArg2 );
532 insert( lStr , aArg3 );
533 insert( lStr , aArg4 );
534 insert( lStr , aArg5 );
535 insert( lStr , aArg6 );
536 insert( lStr , aArg7 );
537 insert( lStr , aArg8 );
538 insert( lStr , aArg9 );
539 insert( lStr , aArg10 );
540 insert( lStr , aArg11 );
541 insert( lStr , aArg12 );
542 insert( lStr , aArg13 );
543 insert( lStr , aArg14 );
544 insert( lStr , aArg15 );
545 insert( lStr , aArg16 );
546 insert( lStr , aArg17 );
547 insert( lStr , aArg18 );
548 insert( lStr , aArg19 );
549 insert( lStr , aArg20 );
550 insert( lStr , aArg21 );
551 aFatal.tail();
552 }
553 #endif
554}
555
556template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 >
557void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 )
558{
559 #ifndef LOGGING_EXCLUDE_FATAL
560 if( LoggingIncludes( aFatal ) ){
561 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
562 std::ostream& lStr( aFatal.stream() );
563 aFatal.head();
564 insert( lStr , aArg0 );
565 insert( lStr , aArg1 );
566 insert( lStr , aArg2 );
567 insert( lStr , aArg3 );
568 insert( lStr , aArg4 );
569 insert( lStr , aArg5 );
570 insert( lStr , aArg6 );
571 insert( lStr , aArg7 );
572 insert( lStr , aArg8 );
573 insert( lStr , aArg9 );
574 insert( lStr , aArg10 );
575 insert( lStr , aArg11 );
576 insert( lStr , aArg12 );
577 insert( lStr , aArg13 );
578 insert( lStr , aArg14 );
579 insert( lStr , aArg15 );
580 insert( lStr , aArg16 );
581 insert( lStr , aArg17 );
582 insert( lStr , aArg18 );
583 insert( lStr , aArg19 );
584 insert( lStr , aArg20 );
585 insert( lStr , aArg21 );
586 insert( lStr , aArg22 );
587 aFatal.tail();
588 }
589 #endif
590}
591
592template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 >
593void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 )
594{
595 #ifndef LOGGING_EXCLUDE_FATAL
596 if( LoggingIncludes( aFatal ) ){
597 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
598 std::ostream& lStr( aFatal.stream() );
599 aFatal.head();
600 insert( lStr , aArg0 );
601 insert( lStr , aArg1 );
602 insert( lStr , aArg2 );
603 insert( lStr , aArg3 );
604 insert( lStr , aArg4 );
605 insert( lStr , aArg5 );
606 insert( lStr , aArg6 );
607 insert( lStr , aArg7 );
608 insert( lStr , aArg8 );
609 insert( lStr , aArg9 );
610 insert( lStr , aArg10 );
611 insert( lStr , aArg11 );
612 insert( lStr , aArg12 );
613 insert( lStr , aArg13 );
614 insert( lStr , aArg14 );
615 insert( lStr , aArg15 );
616 insert( lStr , aArg16 );
617 insert( lStr , aArg17 );
618 insert( lStr , aArg18 );
619 insert( lStr , aArg19 );
620 insert( lStr , aArg20 );
621 insert( lStr , aArg21 );
622 insert( lStr , aArg22 );
623 insert( lStr , aArg23 );
624 aFatal.tail();
625 }
626 #endif
627}
628
629template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 >
630void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 )
631{
632 #ifndef LOGGING_EXCLUDE_FATAL
633 if( LoggingIncludes( aFatal ) ){
634 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
635 std::ostream& lStr( aFatal.stream() );
636 aFatal.head();
637 insert( lStr , aArg0 );
638 insert( lStr , aArg1 );
639 insert( lStr , aArg2 );
640 insert( lStr , aArg3 );
641 insert( lStr , aArg4 );
642 insert( lStr , aArg5 );
643 insert( lStr , aArg6 );
644 insert( lStr , aArg7 );
645 insert( lStr , aArg8 );
646 insert( lStr , aArg9 );
647 insert( lStr , aArg10 );
648 insert( lStr , aArg11 );
649 insert( lStr , aArg12 );
650 insert( lStr , aArg13 );
651 insert( lStr , aArg14 );
652 insert( lStr , aArg15 );
653 insert( lStr , aArg16 );
654 insert( lStr , aArg17 );
655 insert( lStr , aArg18 );
656 insert( lStr , aArg19 );
657 insert( lStr , aArg20 );
658 insert( lStr , aArg21 );
659 insert( lStr , aArg22 );
660 insert( lStr , aArg23 );
661 insert( lStr , aArg24 );
662 aFatal.tail();
663 }
664 #endif
665}
666
667template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 >
668void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 )
669{
670 #ifndef LOGGING_EXCLUDE_FATAL
671 if( LoggingIncludes( aFatal ) ){
672 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
673 std::ostream& lStr( aFatal.stream() );
674 aFatal.head();
675 insert( lStr , aArg0 );
676 insert( lStr , aArg1 );
677 insert( lStr , aArg2 );
678 insert( lStr , aArg3 );
679 insert( lStr , aArg4 );
680 insert( lStr , aArg5 );
681 insert( lStr , aArg6 );
682 insert( lStr , aArg7 );
683 insert( lStr , aArg8 );
684 insert( lStr , aArg9 );
685 insert( lStr , aArg10 );
686 insert( lStr , aArg11 );
687 insert( lStr , aArg12 );
688 insert( lStr , aArg13 );
689 insert( lStr , aArg14 );
690 insert( lStr , aArg15 );
691 insert( lStr , aArg16 );
692 insert( lStr , aArg17 );
693 insert( lStr , aArg18 );
694 insert( lStr , aArg19 );
695 insert( lStr , aArg20 );
696 insert( lStr , aArg21 );
697 insert( lStr , aArg22 );
698 insert( lStr , aArg23 );
699 insert( lStr , aArg24 );
700 insert( lStr , aArg25 );
701 aFatal.tail();
702 }
703 #endif
704}
705
706template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 >
707void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 )
708{
709 #ifndef LOGGING_EXCLUDE_FATAL
710 if( LoggingIncludes( aFatal ) ){
711 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
712 std::ostream& lStr( aFatal.stream() );
713 aFatal.head();
714 insert( lStr , aArg0 );
715 insert( lStr , aArg1 );
716 insert( lStr , aArg2 );
717 insert( lStr , aArg3 );
718 insert( lStr , aArg4 );
719 insert( lStr , aArg5 );
720 insert( lStr , aArg6 );
721 insert( lStr , aArg7 );
722 insert( lStr , aArg8 );
723 insert( lStr , aArg9 );
724 insert( lStr , aArg10 );
725 insert( lStr , aArg11 );
726 insert( lStr , aArg12 );
727 insert( lStr , aArg13 );
728 insert( lStr , aArg14 );
729 insert( lStr , aArg15 );
730 insert( lStr , aArg16 );
731 insert( lStr , aArg17 );
732 insert( lStr , aArg18 );
733 insert( lStr , aArg19 );
734 insert( lStr , aArg20 );
735 insert( lStr , aArg21 );
736 insert( lStr , aArg22 );
737 insert( lStr , aArg23 );
738 insert( lStr , aArg24 );
739 insert( lStr , aArg25 );
740 insert( lStr , aArg26 );
741 aFatal.tail();
742 }
743 #endif
744}
745
746template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 >
747void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 )
748{
749 #ifndef LOGGING_EXCLUDE_FATAL
750 if( LoggingIncludes( aFatal ) ){
751 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
752 std::ostream& lStr( aFatal.stream() );
753 aFatal.head();
754 insert( lStr , aArg0 );
755 insert( lStr , aArg1 );
756 insert( lStr , aArg2 );
757 insert( lStr , aArg3 );
758 insert( lStr , aArg4 );
759 insert( lStr , aArg5 );
760 insert( lStr , aArg6 );
761 insert( lStr , aArg7 );
762 insert( lStr , aArg8 );
763 insert( lStr , aArg9 );
764 insert( lStr , aArg10 );
765 insert( lStr , aArg11 );
766 insert( lStr , aArg12 );
767 insert( lStr , aArg13 );
768 insert( lStr , aArg14 );
769 insert( lStr , aArg15 );
770 insert( lStr , aArg16 );
771 insert( lStr , aArg17 );
772 insert( lStr , aArg18 );
773 insert( lStr , aArg19 );
774 insert( lStr , aArg20 );
775 insert( lStr , aArg21 );
776 insert( lStr , aArg22 );
777 insert( lStr , aArg23 );
778 insert( lStr , aArg24 );
779 insert( lStr , aArg25 );
780 insert( lStr , aArg26 );
781 insert( lStr , aArg27 );
782 aFatal.tail();
783 }
784 #endif
785}
786
787template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 >
788void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 )
789{
790 #ifndef LOGGING_EXCLUDE_FATAL
791 if( LoggingIncludes( aFatal ) ){
792 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
793 std::ostream& lStr( aFatal.stream() );
794 aFatal.head();
795 insert( lStr , aArg0 );
796 insert( lStr , aArg1 );
797 insert( lStr , aArg2 );
798 insert( lStr , aArg3 );
799 insert( lStr , aArg4 );
800 insert( lStr , aArg5 );
801 insert( lStr , aArg6 );
802 insert( lStr , aArg7 );
803 insert( lStr , aArg8 );
804 insert( lStr , aArg9 );
805 insert( lStr , aArg10 );
806 insert( lStr , aArg11 );
807 insert( lStr , aArg12 );
808 insert( lStr , aArg13 );
809 insert( lStr , aArg14 );
810 insert( lStr , aArg15 );
811 insert( lStr , aArg16 );
812 insert( lStr , aArg17 );
813 insert( lStr , aArg18 );
814 insert( lStr , aArg19 );
815 insert( lStr , aArg20 );
816 insert( lStr , aArg21 );
817 insert( lStr , aArg22 );
818 insert( lStr , aArg23 );
819 insert( lStr , aArg24 );
820 insert( lStr , aArg25 );
821 insert( lStr , aArg26 );
822 insert( lStr , aArg27 );
823 insert( lStr , aArg28 );
824 aFatal.tail();
825 }
826 #endif
827}
828
829template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 >
830void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 )
831{
832 #ifndef LOGGING_EXCLUDE_FATAL
833 if( LoggingIncludes( aFatal ) ){
834 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
835 std::ostream& lStr( aFatal.stream() );
836 aFatal.head();
837 insert( lStr , aArg0 );
838 insert( lStr , aArg1 );
839 insert( lStr , aArg2 );
840 insert( lStr , aArg3 );
841 insert( lStr , aArg4 );
842 insert( lStr , aArg5 );
843 insert( lStr , aArg6 );
844 insert( lStr , aArg7 );
845 insert( lStr , aArg8 );
846 insert( lStr , aArg9 );
847 insert( lStr , aArg10 );
848 insert( lStr , aArg11 );
849 insert( lStr , aArg12 );
850 insert( lStr , aArg13 );
851 insert( lStr , aArg14 );
852 insert( lStr , aArg15 );
853 insert( lStr , aArg16 );
854 insert( lStr , aArg17 );
855 insert( lStr , aArg18 );
856 insert( lStr , aArg19 );
857 insert( lStr , aArg20 );
858 insert( lStr , aArg21 );
859 insert( lStr , aArg22 );
860 insert( lStr , aArg23 );
861 insert( lStr , aArg24 );
862 insert( lStr , aArg25 );
863 insert( lStr , aArg26 );
864 insert( lStr , aArg27 );
865 insert( lStr , aArg28 );
866 insert( lStr , aArg29 );
867 aFatal.tail();
868 }
869 #endif
870}
871
872template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 >
873void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 )
874{
875 #ifndef LOGGING_EXCLUDE_FATAL
876 if( LoggingIncludes( aFatal ) ){
877 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
878 std::ostream& lStr( aFatal.stream() );
879 aFatal.head();
880 insert( lStr , aArg0 );
881 insert( lStr , aArg1 );
882 insert( lStr , aArg2 );
883 insert( lStr , aArg3 );
884 insert( lStr , aArg4 );
885 insert( lStr , aArg5 );
886 insert( lStr , aArg6 );
887 insert( lStr , aArg7 );
888 insert( lStr , aArg8 );
889 insert( lStr , aArg9 );
890 insert( lStr , aArg10 );
891 insert( lStr , aArg11 );
892 insert( lStr , aArg12 );
893 insert( lStr , aArg13 );
894 insert( lStr , aArg14 );
895 insert( lStr , aArg15 );
896 insert( lStr , aArg16 );
897 insert( lStr , aArg17 );
898 insert( lStr , aArg18 );
899 insert( lStr , aArg19 );
900 insert( lStr , aArg20 );
901 insert( lStr , aArg21 );
902 insert( lStr , aArg22 );
903 insert( lStr , aArg23 );
904 insert( lStr , aArg24 );
905 insert( lStr , aArg25 );
906 insert( lStr , aArg26 );
907 insert( lStr , aArg27 );
908 insert( lStr , aArg28 );
909 insert( lStr , aArg29 );
910 insert( lStr , aArg30 );
911 aFatal.tail();
912 }
913 #endif
914}
915
916template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 , typename T31 >
917void log ( FatalLevel& aFatal , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 , const T31& aArg31 )
918{
919 #ifndef LOGGING_EXCLUDE_FATAL
920 if( LoggingIncludes( aFatal ) ){
921 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
922 std::ostream& lStr( aFatal.stream() );
923 aFatal.head();
924 insert( lStr , aArg0 );
925 insert( lStr , aArg1 );
926 insert( lStr , aArg2 );
927 insert( lStr , aArg3 );
928 insert( lStr , aArg4 );
929 insert( lStr , aArg5 );
930 insert( lStr , aArg6 );
931 insert( lStr , aArg7 );
932 insert( lStr , aArg8 );
933 insert( lStr , aArg9 );
934 insert( lStr , aArg10 );
935 insert( lStr , aArg11 );
936 insert( lStr , aArg12 );
937 insert( lStr , aArg13 );
938 insert( lStr , aArg14 );
939 insert( lStr , aArg15 );
940 insert( lStr , aArg16 );
941 insert( lStr , aArg17 );
942 insert( lStr , aArg18 );
943 insert( lStr , aArg19 );
944 insert( lStr , aArg20 );
945 insert( lStr , aArg21 );
946 insert( lStr , aArg22 );
947 insert( lStr , aArg23 );
948 insert( lStr , aArg24 );
949 insert( lStr , aArg25 );
950 insert( lStr , aArg26 );
951 insert( lStr , aArg27 );
952 insert( lStr , aArg28 );
953 insert( lStr , aArg29 );
954 insert( lStr , aArg30 );
955 insert( lStr , aArg31 );
956 aFatal.tail();
957 }
958 #endif
959}
960
961// ======================================================================================================================================================
962// WARNING! This file is automatically generated! Do not modify it! Any changes will be overwritten!
963// ======================================================================================================================================================
964
965template< typename T0 >
966void log ( ErrorLevel& aError , const T0& aArg0 )
967{
968 #ifndef LOGGING_EXCLUDE_FATAL
969 #ifndef LOGGING_EXCLUDE_ERROR
970 if( LoggingIncludes( aError ) ){
971 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
972 std::ostream& lStr( aError.stream() );
973 aError.head();
974 insert( lStr , aArg0 );
975 aError.tail();
976 }
977 #endif
978 #endif
979}
980
981template< typename T0 , typename T1 >
982void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 )
983{
984 #ifndef LOGGING_EXCLUDE_FATAL
985 #ifndef LOGGING_EXCLUDE_ERROR
986 if( LoggingIncludes( aError ) ){
987 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
988 std::ostream& lStr( aError.stream() );
989 aError.head();
990 insert( lStr , aArg0 );
991 insert( lStr , aArg1 );
992 aError.tail();
993 }
994 #endif
995 #endif
996}
997
998template< typename T0 , typename T1 , typename T2 >
999void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 )
1000{
1001 #ifndef LOGGING_EXCLUDE_FATAL
1002 #ifndef LOGGING_EXCLUDE_ERROR
1003 if( LoggingIncludes( aError ) ){
1004 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1005 std::ostream& lStr( aError.stream() );
1006 aError.head();
1007 insert( lStr , aArg0 );
1008 insert( lStr , aArg1 );
1009 insert( lStr , aArg2 );
1010 aError.tail();
1011 }
1012 #endif
1013 #endif
1014}
1015
1016template< typename T0 , typename T1 , typename T2 , typename T3 >
1017void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 )
1018{
1019 #ifndef LOGGING_EXCLUDE_FATAL
1020 #ifndef LOGGING_EXCLUDE_ERROR
1021 if( LoggingIncludes( aError ) ){
1022 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1023 std::ostream& lStr( aError.stream() );
1024 aError.head();
1025 insert( lStr , aArg0 );
1026 insert( lStr , aArg1 );
1027 insert( lStr , aArg2 );
1028 insert( lStr , aArg3 );
1029 aError.tail();
1030 }
1031 #endif
1032 #endif
1033}
1034
1035template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
1036void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 )
1037{
1038 #ifndef LOGGING_EXCLUDE_FATAL
1039 #ifndef LOGGING_EXCLUDE_ERROR
1040 if( LoggingIncludes( aError ) ){
1041 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1042 std::ostream& lStr( aError.stream() );
1043 aError.head();
1044 insert( lStr , aArg0 );
1045 insert( lStr , aArg1 );
1046 insert( lStr , aArg2 );
1047 insert( lStr , aArg3 );
1048 insert( lStr , aArg4 );
1049 aError.tail();
1050 }
1051 #endif
1052 #endif
1053}
1054
1055template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
1056void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 )
1057{
1058 #ifndef LOGGING_EXCLUDE_FATAL
1059 #ifndef LOGGING_EXCLUDE_ERROR
1060 if( LoggingIncludes( aError ) ){
1061 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1062 std::ostream& lStr( aError.stream() );
1063 aError.head();
1064 insert( lStr , aArg0 );
1065 insert( lStr , aArg1 );
1066 insert( lStr , aArg2 );
1067 insert( lStr , aArg3 );
1068 insert( lStr , aArg4 );
1069 insert( lStr , aArg5 );
1070 aError.tail();
1071 }
1072 #endif
1073 #endif
1074}
1075
1076template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
1077void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 )
1078{
1079 #ifndef LOGGING_EXCLUDE_FATAL
1080 #ifndef LOGGING_EXCLUDE_ERROR
1081 if( LoggingIncludes( aError ) ){
1082 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1083 std::ostream& lStr( aError.stream() );
1084 aError.head();
1085 insert( lStr , aArg0 );
1086 insert( lStr , aArg1 );
1087 insert( lStr , aArg2 );
1088 insert( lStr , aArg3 );
1089 insert( lStr , aArg4 );
1090 insert( lStr , aArg5 );
1091 insert( lStr , aArg6 );
1092 aError.tail();
1093 }
1094 #endif
1095 #endif
1096}
1097
1098template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
1099void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 )
1100{
1101 #ifndef LOGGING_EXCLUDE_FATAL
1102 #ifndef LOGGING_EXCLUDE_ERROR
1103 if( LoggingIncludes( aError ) ){
1104 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1105 std::ostream& lStr( aError.stream() );
1106 aError.head();
1107 insert( lStr , aArg0 );
1108 insert( lStr , aArg1 );
1109 insert( lStr , aArg2 );
1110 insert( lStr , aArg3 );
1111 insert( lStr , aArg4 );
1112 insert( lStr , aArg5 );
1113 insert( lStr , aArg6 );
1114 insert( lStr , aArg7 );
1115 aError.tail();
1116 }
1117 #endif
1118 #endif
1119}
1120
1121template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
1122void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 )
1123{
1124 #ifndef LOGGING_EXCLUDE_FATAL
1125 #ifndef LOGGING_EXCLUDE_ERROR
1126 if( LoggingIncludes( aError ) ){
1127 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1128 std::ostream& lStr( aError.stream() );
1129 aError.head();
1130 insert( lStr , aArg0 );
1131 insert( lStr , aArg1 );
1132 insert( lStr , aArg2 );
1133 insert( lStr , aArg3 );
1134 insert( lStr , aArg4 );
1135 insert( lStr , aArg5 );
1136 insert( lStr , aArg6 );
1137 insert( lStr , aArg7 );
1138 insert( lStr , aArg8 );
1139 aError.tail();
1140 }
1141 #endif
1142 #endif
1143}
1144
1145template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
1146void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 )
1147{
1148 #ifndef LOGGING_EXCLUDE_FATAL
1149 #ifndef LOGGING_EXCLUDE_ERROR
1150 if( LoggingIncludes( aError ) ){
1151 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1152 std::ostream& lStr( aError.stream() );
1153 aError.head();
1154 insert( lStr , aArg0 );
1155 insert( lStr , aArg1 );
1156 insert( lStr , aArg2 );
1157 insert( lStr , aArg3 );
1158 insert( lStr , aArg4 );
1159 insert( lStr , aArg5 );
1160 insert( lStr , aArg6 );
1161 insert( lStr , aArg7 );
1162 insert( lStr , aArg8 );
1163 insert( lStr , aArg9 );
1164 aError.tail();
1165 }
1166 #endif
1167 #endif
1168}
1169
1170template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
1171void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 )
1172{
1173 #ifndef LOGGING_EXCLUDE_FATAL
1174 #ifndef LOGGING_EXCLUDE_ERROR
1175 if( LoggingIncludes( aError ) ){
1176 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1177 std::ostream& lStr( aError.stream() );
1178 aError.head();
1179 insert( lStr , aArg0 );
1180 insert( lStr , aArg1 );
1181 insert( lStr , aArg2 );
1182 insert( lStr , aArg3 );
1183 insert( lStr , aArg4 );
1184 insert( lStr , aArg5 );
1185 insert( lStr , aArg6 );
1186 insert( lStr , aArg7 );
1187 insert( lStr , aArg8 );
1188 insert( lStr , aArg9 );
1189 insert( lStr , aArg10 );
1190 aError.tail();
1191 }
1192 #endif
1193 #endif
1194}
1195
1196template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 >
1197void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 )
1198{
1199 #ifndef LOGGING_EXCLUDE_FATAL
1200 #ifndef LOGGING_EXCLUDE_ERROR
1201 if( LoggingIncludes( aError ) ){
1202 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1203 std::ostream& lStr( aError.stream() );
1204 aError.head();
1205 insert( lStr , aArg0 );
1206 insert( lStr , aArg1 );
1207 insert( lStr , aArg2 );
1208 insert( lStr , aArg3 );
1209 insert( lStr , aArg4 );
1210 insert( lStr , aArg5 );
1211 insert( lStr , aArg6 );
1212 insert( lStr , aArg7 );
1213 insert( lStr , aArg8 );
1214 insert( lStr , aArg9 );
1215 insert( lStr , aArg10 );
1216 insert( lStr , aArg11 );
1217 aError.tail();
1218 }
1219 #endif
1220 #endif
1221}
1222
1223template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 >
1224void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 )
1225{
1226 #ifndef LOGGING_EXCLUDE_FATAL
1227 #ifndef LOGGING_EXCLUDE_ERROR
1228 if( LoggingIncludes( aError ) ){
1229 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1230 std::ostream& lStr( aError.stream() );
1231 aError.head();
1232 insert( lStr , aArg0 );
1233 insert( lStr , aArg1 );
1234 insert( lStr , aArg2 );
1235 insert( lStr , aArg3 );
1236 insert( lStr , aArg4 );
1237 insert( lStr , aArg5 );
1238 insert( lStr , aArg6 );
1239 insert( lStr , aArg7 );
1240 insert( lStr , aArg8 );
1241 insert( lStr , aArg9 );
1242 insert( lStr , aArg10 );
1243 insert( lStr , aArg11 );
1244 insert( lStr , aArg12 );
1245 aError.tail();
1246 }
1247 #endif
1248 #endif
1249}
1250
1251template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 >
1252void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 )
1253{
1254 #ifndef LOGGING_EXCLUDE_FATAL
1255 #ifndef LOGGING_EXCLUDE_ERROR
1256 if( LoggingIncludes( aError ) ){
1257 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1258 std::ostream& lStr( aError.stream() );
1259 aError.head();
1260 insert( lStr , aArg0 );
1261 insert( lStr , aArg1 );
1262 insert( lStr , aArg2 );
1263 insert( lStr , aArg3 );
1264 insert( lStr , aArg4 );
1265 insert( lStr , aArg5 );
1266 insert( lStr , aArg6 );
1267 insert( lStr , aArg7 );
1268 insert( lStr , aArg8 );
1269 insert( lStr , aArg9 );
1270 insert( lStr , aArg10 );
1271 insert( lStr , aArg11 );
1272 insert( lStr , aArg12 );
1273 insert( lStr , aArg13 );
1274 aError.tail();
1275 }
1276 #endif
1277 #endif
1278}
1279
1280template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 >
1281void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 )
1282{
1283 #ifndef LOGGING_EXCLUDE_FATAL
1284 #ifndef LOGGING_EXCLUDE_ERROR
1285 if( LoggingIncludes( aError ) ){
1286 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1287 std::ostream& lStr( aError.stream() );
1288 aError.head();
1289 insert( lStr , aArg0 );
1290 insert( lStr , aArg1 );
1291 insert( lStr , aArg2 );
1292 insert( lStr , aArg3 );
1293 insert( lStr , aArg4 );
1294 insert( lStr , aArg5 );
1295 insert( lStr , aArg6 );
1296 insert( lStr , aArg7 );
1297 insert( lStr , aArg8 );
1298 insert( lStr , aArg9 );
1299 insert( lStr , aArg10 );
1300 insert( lStr , aArg11 );
1301 insert( lStr , aArg12 );
1302 insert( lStr , aArg13 );
1303 insert( lStr , aArg14 );
1304 aError.tail();
1305 }
1306 #endif
1307 #endif
1308}
1309
1310template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 >
1311void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 )
1312{
1313 #ifndef LOGGING_EXCLUDE_FATAL
1314 #ifndef LOGGING_EXCLUDE_ERROR
1315 if( LoggingIncludes( aError ) ){
1316 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1317 std::ostream& lStr( aError.stream() );
1318 aError.head();
1319 insert( lStr , aArg0 );
1320 insert( lStr , aArg1 );
1321 insert( lStr , aArg2 );
1322 insert( lStr , aArg3 );
1323 insert( lStr , aArg4 );
1324 insert( lStr , aArg5 );
1325 insert( lStr , aArg6 );
1326 insert( lStr , aArg7 );
1327 insert( lStr , aArg8 );
1328 insert( lStr , aArg9 );
1329 insert( lStr , aArg10 );
1330 insert( lStr , aArg11 );
1331 insert( lStr , aArg12 );
1332 insert( lStr , aArg13 );
1333 insert( lStr , aArg14 );
1334 insert( lStr , aArg15 );
1335 aError.tail();
1336 }
1337 #endif
1338 #endif
1339}
1340
1341template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 >
1342void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 )
1343{
1344 #ifndef LOGGING_EXCLUDE_FATAL
1345 #ifndef LOGGING_EXCLUDE_ERROR
1346 if( LoggingIncludes( aError ) ){
1347 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1348 std::ostream& lStr( aError.stream() );
1349 aError.head();
1350 insert( lStr , aArg0 );
1351 insert( lStr , aArg1 );
1352 insert( lStr , aArg2 );
1353 insert( lStr , aArg3 );
1354 insert( lStr , aArg4 );
1355 insert( lStr , aArg5 );
1356 insert( lStr , aArg6 );
1357 insert( lStr , aArg7 );
1358 insert( lStr , aArg8 );
1359 insert( lStr , aArg9 );
1360 insert( lStr , aArg10 );
1361 insert( lStr , aArg11 );
1362 insert( lStr , aArg12 );
1363 insert( lStr , aArg13 );
1364 insert( lStr , aArg14 );
1365 insert( lStr , aArg15 );
1366 insert( lStr , aArg16 );
1367 aError.tail();
1368 }
1369 #endif
1370 #endif
1371}
1372
1373template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 >
1374void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 )
1375{
1376 #ifndef LOGGING_EXCLUDE_FATAL
1377 #ifndef LOGGING_EXCLUDE_ERROR
1378 if( LoggingIncludes( aError ) ){
1379 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1380 std::ostream& lStr( aError.stream() );
1381 aError.head();
1382 insert( lStr , aArg0 );
1383 insert( lStr , aArg1 );
1384 insert( lStr , aArg2 );
1385 insert( lStr , aArg3 );
1386 insert( lStr , aArg4 );
1387 insert( lStr , aArg5 );
1388 insert( lStr , aArg6 );
1389 insert( lStr , aArg7 );
1390 insert( lStr , aArg8 );
1391 insert( lStr , aArg9 );
1392 insert( lStr , aArg10 );
1393 insert( lStr , aArg11 );
1394 insert( lStr , aArg12 );
1395 insert( lStr , aArg13 );
1396 insert( lStr , aArg14 );
1397 insert( lStr , aArg15 );
1398 insert( lStr , aArg16 );
1399 insert( lStr , aArg17 );
1400 aError.tail();
1401 }
1402 #endif
1403 #endif
1404}
1405
1406template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 >
1407void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 )
1408{
1409 #ifndef LOGGING_EXCLUDE_FATAL
1410 #ifndef LOGGING_EXCLUDE_ERROR
1411 if( LoggingIncludes( aError ) ){
1412 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1413 std::ostream& lStr( aError.stream() );
1414 aError.head();
1415 insert( lStr , aArg0 );
1416 insert( lStr , aArg1 );
1417 insert( lStr , aArg2 );
1418 insert( lStr , aArg3 );
1419 insert( lStr , aArg4 );
1420 insert( lStr , aArg5 );
1421 insert( lStr , aArg6 );
1422 insert( lStr , aArg7 );
1423 insert( lStr , aArg8 );
1424 insert( lStr , aArg9 );
1425 insert( lStr , aArg10 );
1426 insert( lStr , aArg11 );
1427 insert( lStr , aArg12 );
1428 insert( lStr , aArg13 );
1429 insert( lStr , aArg14 );
1430 insert( lStr , aArg15 );
1431 insert( lStr , aArg16 );
1432 insert( lStr , aArg17 );
1433 insert( lStr , aArg18 );
1434 aError.tail();
1435 }
1436 #endif
1437 #endif
1438}
1439
1440template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 >
1441void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 )
1442{
1443 #ifndef LOGGING_EXCLUDE_FATAL
1444 #ifndef LOGGING_EXCLUDE_ERROR
1445 if( LoggingIncludes( aError ) ){
1446 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1447 std::ostream& lStr( aError.stream() );
1448 aError.head();
1449 insert( lStr , aArg0 );
1450 insert( lStr , aArg1 );
1451 insert( lStr , aArg2 );
1452 insert( lStr , aArg3 );
1453 insert( lStr , aArg4 );
1454 insert( lStr , aArg5 );
1455 insert( lStr , aArg6 );
1456 insert( lStr , aArg7 );
1457 insert( lStr , aArg8 );
1458 insert( lStr , aArg9 );
1459 insert( lStr , aArg10 );
1460 insert( lStr , aArg11 );
1461 insert( lStr , aArg12 );
1462 insert( lStr , aArg13 );
1463 insert( lStr , aArg14 );
1464 insert( lStr , aArg15 );
1465 insert( lStr , aArg16 );
1466 insert( lStr , aArg17 );
1467 insert( lStr , aArg18 );
1468 insert( lStr , aArg19 );
1469 aError.tail();
1470 }
1471 #endif
1472 #endif
1473}
1474
1475template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 >
1476void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 )
1477{
1478 #ifndef LOGGING_EXCLUDE_FATAL
1479 #ifndef LOGGING_EXCLUDE_ERROR
1480 if( LoggingIncludes( aError ) ){
1481 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1482 std::ostream& lStr( aError.stream() );
1483 aError.head();
1484 insert( lStr , aArg0 );
1485 insert( lStr , aArg1 );
1486 insert( lStr , aArg2 );
1487 insert( lStr , aArg3 );
1488 insert( lStr , aArg4 );
1489 insert( lStr , aArg5 );
1490 insert( lStr , aArg6 );
1491 insert( lStr , aArg7 );
1492 insert( lStr , aArg8 );
1493 insert( lStr , aArg9 );
1494 insert( lStr , aArg10 );
1495 insert( lStr , aArg11 );
1496 insert( lStr , aArg12 );
1497 insert( lStr , aArg13 );
1498 insert( lStr , aArg14 );
1499 insert( lStr , aArg15 );
1500 insert( lStr , aArg16 );
1501 insert( lStr , aArg17 );
1502 insert( lStr , aArg18 );
1503 insert( lStr , aArg19 );
1504 insert( lStr , aArg20 );
1505 aError.tail();
1506 }
1507 #endif
1508 #endif
1509}
1510
1511template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 >
1512void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 )
1513{
1514 #ifndef LOGGING_EXCLUDE_FATAL
1515 #ifndef LOGGING_EXCLUDE_ERROR
1516 if( LoggingIncludes( aError ) ){
1517 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1518 std::ostream& lStr( aError.stream() );
1519 aError.head();
1520 insert( lStr , aArg0 );
1521 insert( lStr , aArg1 );
1522 insert( lStr , aArg2 );
1523 insert( lStr , aArg3 );
1524 insert( lStr , aArg4 );
1525 insert( lStr , aArg5 );
1526 insert( lStr , aArg6 );
1527 insert( lStr , aArg7 );
1528 insert( lStr , aArg8 );
1529 insert( lStr , aArg9 );
1530 insert( lStr , aArg10 );
1531 insert( lStr , aArg11 );
1532 insert( lStr , aArg12 );
1533 insert( lStr , aArg13 );
1534 insert( lStr , aArg14 );
1535 insert( lStr , aArg15 );
1536 insert( lStr , aArg16 );
1537 insert( lStr , aArg17 );
1538 insert( lStr , aArg18 );
1539 insert( lStr , aArg19 );
1540 insert( lStr , aArg20 );
1541 insert( lStr , aArg21 );
1542 aError.tail();
1543 }
1544 #endif
1545 #endif
1546}
1547
1548template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 >
1549void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 )
1550{
1551 #ifndef LOGGING_EXCLUDE_FATAL
1552 #ifndef LOGGING_EXCLUDE_ERROR
1553 if( LoggingIncludes( aError ) ){
1554 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1555 std::ostream& lStr( aError.stream() );
1556 aError.head();
1557 insert( lStr , aArg0 );
1558 insert( lStr , aArg1 );
1559 insert( lStr , aArg2 );
1560 insert( lStr , aArg3 );
1561 insert( lStr , aArg4 );
1562 insert( lStr , aArg5 );
1563 insert( lStr , aArg6 );
1564 insert( lStr , aArg7 );
1565 insert( lStr , aArg8 );
1566 insert( lStr , aArg9 );
1567 insert( lStr , aArg10 );
1568 insert( lStr , aArg11 );
1569 insert( lStr , aArg12 );
1570 insert( lStr , aArg13 );
1571 insert( lStr , aArg14 );
1572 insert( lStr , aArg15 );
1573 insert( lStr , aArg16 );
1574 insert( lStr , aArg17 );
1575 insert( lStr , aArg18 );
1576 insert( lStr , aArg19 );
1577 insert( lStr , aArg20 );
1578 insert( lStr , aArg21 );
1579 insert( lStr , aArg22 );
1580 aError.tail();
1581 }
1582 #endif
1583 #endif
1584}
1585
1586template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 >
1587void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 )
1588{
1589 #ifndef LOGGING_EXCLUDE_FATAL
1590 #ifndef LOGGING_EXCLUDE_ERROR
1591 if( LoggingIncludes( aError ) ){
1592 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1593 std::ostream& lStr( aError.stream() );
1594 aError.head();
1595 insert( lStr , aArg0 );
1596 insert( lStr , aArg1 );
1597 insert( lStr , aArg2 );
1598 insert( lStr , aArg3 );
1599 insert( lStr , aArg4 );
1600 insert( lStr , aArg5 );
1601 insert( lStr , aArg6 );
1602 insert( lStr , aArg7 );
1603 insert( lStr , aArg8 );
1604 insert( lStr , aArg9 );
1605 insert( lStr , aArg10 );
1606 insert( lStr , aArg11 );
1607 insert( lStr , aArg12 );
1608 insert( lStr , aArg13 );
1609 insert( lStr , aArg14 );
1610 insert( lStr , aArg15 );
1611 insert( lStr , aArg16 );
1612 insert( lStr , aArg17 );
1613 insert( lStr , aArg18 );
1614 insert( lStr , aArg19 );
1615 insert( lStr , aArg20 );
1616 insert( lStr , aArg21 );
1617 insert( lStr , aArg22 );
1618 insert( lStr , aArg23 );
1619 aError.tail();
1620 }
1621 #endif
1622 #endif
1623}
1624
1625template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 >
1626void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 )
1627{
1628 #ifndef LOGGING_EXCLUDE_FATAL
1629 #ifndef LOGGING_EXCLUDE_ERROR
1630 if( LoggingIncludes( aError ) ){
1631 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1632 std::ostream& lStr( aError.stream() );
1633 aError.head();
1634 insert( lStr , aArg0 );
1635 insert( lStr , aArg1 );
1636 insert( lStr , aArg2 );
1637 insert( lStr , aArg3 );
1638 insert( lStr , aArg4 );
1639 insert( lStr , aArg5 );
1640 insert( lStr , aArg6 );
1641 insert( lStr , aArg7 );
1642 insert( lStr , aArg8 );
1643 insert( lStr , aArg9 );
1644 insert( lStr , aArg10 );
1645 insert( lStr , aArg11 );
1646 insert( lStr , aArg12 );
1647 insert( lStr , aArg13 );
1648 insert( lStr , aArg14 );
1649 insert( lStr , aArg15 );
1650 insert( lStr , aArg16 );
1651 insert( lStr , aArg17 );
1652 insert( lStr , aArg18 );
1653 insert( lStr , aArg19 );
1654 insert( lStr , aArg20 );
1655 insert( lStr , aArg21 );
1656 insert( lStr , aArg22 );
1657 insert( lStr , aArg23 );
1658 insert( lStr , aArg24 );
1659 aError.tail();
1660 }
1661 #endif
1662 #endif
1663}
1664
1665template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 >
1666void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 )
1667{
1668 #ifndef LOGGING_EXCLUDE_FATAL
1669 #ifndef LOGGING_EXCLUDE_ERROR
1670 if( LoggingIncludes( aError ) ){
1671 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1672 std::ostream& lStr( aError.stream() );
1673 aError.head();
1674 insert( lStr , aArg0 );
1675 insert( lStr , aArg1 );
1676 insert( lStr , aArg2 );
1677 insert( lStr , aArg3 );
1678 insert( lStr , aArg4 );
1679 insert( lStr , aArg5 );
1680 insert( lStr , aArg6 );
1681 insert( lStr , aArg7 );
1682 insert( lStr , aArg8 );
1683 insert( lStr , aArg9 );
1684 insert( lStr , aArg10 );
1685 insert( lStr , aArg11 );
1686 insert( lStr , aArg12 );
1687 insert( lStr , aArg13 );
1688 insert( lStr , aArg14 );
1689 insert( lStr , aArg15 );
1690 insert( lStr , aArg16 );
1691 insert( lStr , aArg17 );
1692 insert( lStr , aArg18 );
1693 insert( lStr , aArg19 );
1694 insert( lStr , aArg20 );
1695 insert( lStr , aArg21 );
1696 insert( lStr , aArg22 );
1697 insert( lStr , aArg23 );
1698 insert( lStr , aArg24 );
1699 insert( lStr , aArg25 );
1700 aError.tail();
1701 }
1702 #endif
1703 #endif
1704}
1705
1706template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 >
1707void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 )
1708{
1709 #ifndef LOGGING_EXCLUDE_FATAL
1710 #ifndef LOGGING_EXCLUDE_ERROR
1711 if( LoggingIncludes( aError ) ){
1712 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1713 std::ostream& lStr( aError.stream() );
1714 aError.head();
1715 insert( lStr , aArg0 );
1716 insert( lStr , aArg1 );
1717 insert( lStr , aArg2 );
1718 insert( lStr , aArg3 );
1719 insert( lStr , aArg4 );
1720 insert( lStr , aArg5 );
1721 insert( lStr , aArg6 );
1722 insert( lStr , aArg7 );
1723 insert( lStr , aArg8 );
1724 insert( lStr , aArg9 );
1725 insert( lStr , aArg10 );
1726 insert( lStr , aArg11 );
1727 insert( lStr , aArg12 );
1728 insert( lStr , aArg13 );
1729 insert( lStr , aArg14 );
1730 insert( lStr , aArg15 );
1731 insert( lStr , aArg16 );
1732 insert( lStr , aArg17 );
1733 insert( lStr , aArg18 );
1734 insert( lStr , aArg19 );
1735 insert( lStr , aArg20 );
1736 insert( lStr , aArg21 );
1737 insert( lStr , aArg22 );
1738 insert( lStr , aArg23 );
1739 insert( lStr , aArg24 );
1740 insert( lStr , aArg25 );
1741 insert( lStr , aArg26 );
1742 aError.tail();
1743 }
1744 #endif
1745 #endif
1746}
1747
1748template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 >
1749void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 )
1750{
1751 #ifndef LOGGING_EXCLUDE_FATAL
1752 #ifndef LOGGING_EXCLUDE_ERROR
1753 if( LoggingIncludes( aError ) ){
1754 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1755 std::ostream& lStr( aError.stream() );
1756 aError.head();
1757 insert( lStr , aArg0 );
1758 insert( lStr , aArg1 );
1759 insert( lStr , aArg2 );
1760 insert( lStr , aArg3 );
1761 insert( lStr , aArg4 );
1762 insert( lStr , aArg5 );
1763 insert( lStr , aArg6 );
1764 insert( lStr , aArg7 );
1765 insert( lStr , aArg8 );
1766 insert( lStr , aArg9 );
1767 insert( lStr , aArg10 );
1768 insert( lStr , aArg11 );
1769 insert( lStr , aArg12 );
1770 insert( lStr , aArg13 );
1771 insert( lStr , aArg14 );
1772 insert( lStr , aArg15 );
1773 insert( lStr , aArg16 );
1774 insert( lStr , aArg17 );
1775 insert( lStr , aArg18 );
1776 insert( lStr , aArg19 );
1777 insert( lStr , aArg20 );
1778 insert( lStr , aArg21 );
1779 insert( lStr , aArg22 );
1780 insert( lStr , aArg23 );
1781 insert( lStr , aArg24 );
1782 insert( lStr , aArg25 );
1783 insert( lStr , aArg26 );
1784 insert( lStr , aArg27 );
1785 aError.tail();
1786 }
1787 #endif
1788 #endif
1789}
1790
1791template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 >
1792void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 )
1793{
1794 #ifndef LOGGING_EXCLUDE_FATAL
1795 #ifndef LOGGING_EXCLUDE_ERROR
1796 if( LoggingIncludes( aError ) ){
1797 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1798 std::ostream& lStr( aError.stream() );
1799 aError.head();
1800 insert( lStr , aArg0 );
1801 insert( lStr , aArg1 );
1802 insert( lStr , aArg2 );
1803 insert( lStr , aArg3 );
1804 insert( lStr , aArg4 );
1805 insert( lStr , aArg5 );
1806 insert( lStr , aArg6 );
1807 insert( lStr , aArg7 );
1808 insert( lStr , aArg8 );
1809 insert( lStr , aArg9 );
1810 insert( lStr , aArg10 );
1811 insert( lStr , aArg11 );
1812 insert( lStr , aArg12 );
1813 insert( lStr , aArg13 );
1814 insert( lStr , aArg14 );
1815 insert( lStr , aArg15 );
1816 insert( lStr , aArg16 );
1817 insert( lStr , aArg17 );
1818 insert( lStr , aArg18 );
1819 insert( lStr , aArg19 );
1820 insert( lStr , aArg20 );
1821 insert( lStr , aArg21 );
1822 insert( lStr , aArg22 );
1823 insert( lStr , aArg23 );
1824 insert( lStr , aArg24 );
1825 insert( lStr , aArg25 );
1826 insert( lStr , aArg26 );
1827 insert( lStr , aArg27 );
1828 insert( lStr , aArg28 );
1829 aError.tail();
1830 }
1831 #endif
1832 #endif
1833}
1834
1835template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 >
1836void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 )
1837{
1838 #ifndef LOGGING_EXCLUDE_FATAL
1839 #ifndef LOGGING_EXCLUDE_ERROR
1840 if( LoggingIncludes( aError ) ){
1841 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1842 std::ostream& lStr( aError.stream() );
1843 aError.head();
1844 insert( lStr , aArg0 );
1845 insert( lStr , aArg1 );
1846 insert( lStr , aArg2 );
1847 insert( lStr , aArg3 );
1848 insert( lStr , aArg4 );
1849 insert( lStr , aArg5 );
1850 insert( lStr , aArg6 );
1851 insert( lStr , aArg7 );
1852 insert( lStr , aArg8 );
1853 insert( lStr , aArg9 );
1854 insert( lStr , aArg10 );
1855 insert( lStr , aArg11 );
1856 insert( lStr , aArg12 );
1857 insert( lStr , aArg13 );
1858 insert( lStr , aArg14 );
1859 insert( lStr , aArg15 );
1860 insert( lStr , aArg16 );
1861 insert( lStr , aArg17 );
1862 insert( lStr , aArg18 );
1863 insert( lStr , aArg19 );
1864 insert( lStr , aArg20 );
1865 insert( lStr , aArg21 );
1866 insert( lStr , aArg22 );
1867 insert( lStr , aArg23 );
1868 insert( lStr , aArg24 );
1869 insert( lStr , aArg25 );
1870 insert( lStr , aArg26 );
1871 insert( lStr , aArg27 );
1872 insert( lStr , aArg28 );
1873 insert( lStr , aArg29 );
1874 aError.tail();
1875 }
1876 #endif
1877 #endif
1878}
1879
1880template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 >
1881void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 )
1882{
1883 #ifndef LOGGING_EXCLUDE_FATAL
1884 #ifndef LOGGING_EXCLUDE_ERROR
1885 if( LoggingIncludes( aError ) ){
1886 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1887 std::ostream& lStr( aError.stream() );
1888 aError.head();
1889 insert( lStr , aArg0 );
1890 insert( lStr , aArg1 );
1891 insert( lStr , aArg2 );
1892 insert( lStr , aArg3 );
1893 insert( lStr , aArg4 );
1894 insert( lStr , aArg5 );
1895 insert( lStr , aArg6 );
1896 insert( lStr , aArg7 );
1897 insert( lStr , aArg8 );
1898 insert( lStr , aArg9 );
1899 insert( lStr , aArg10 );
1900 insert( lStr , aArg11 );
1901 insert( lStr , aArg12 );
1902 insert( lStr , aArg13 );
1903 insert( lStr , aArg14 );
1904 insert( lStr , aArg15 );
1905 insert( lStr , aArg16 );
1906 insert( lStr , aArg17 );
1907 insert( lStr , aArg18 );
1908 insert( lStr , aArg19 );
1909 insert( lStr , aArg20 );
1910 insert( lStr , aArg21 );
1911 insert( lStr , aArg22 );
1912 insert( lStr , aArg23 );
1913 insert( lStr , aArg24 );
1914 insert( lStr , aArg25 );
1915 insert( lStr , aArg26 );
1916 insert( lStr , aArg27 );
1917 insert( lStr , aArg28 );
1918 insert( lStr , aArg29 );
1919 insert( lStr , aArg30 );
1920 aError.tail();
1921 }
1922 #endif
1923 #endif
1924}
1925
1926template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 , typename T31 >
1927void log ( ErrorLevel& aError , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 , const T31& aArg31 )
1928{
1929 #ifndef LOGGING_EXCLUDE_FATAL
1930 #ifndef LOGGING_EXCLUDE_ERROR
1931 if( LoggingIncludes( aError ) ){
1932 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1933 std::ostream& lStr( aError.stream() );
1934 aError.head();
1935 insert( lStr , aArg0 );
1936 insert( lStr , aArg1 );
1937 insert( lStr , aArg2 );
1938 insert( lStr , aArg3 );
1939 insert( lStr , aArg4 );
1940 insert( lStr , aArg5 );
1941 insert( lStr , aArg6 );
1942 insert( lStr , aArg7 );
1943 insert( lStr , aArg8 );
1944 insert( lStr , aArg9 );
1945 insert( lStr , aArg10 );
1946 insert( lStr , aArg11 );
1947 insert( lStr , aArg12 );
1948 insert( lStr , aArg13 );
1949 insert( lStr , aArg14 );
1950 insert( lStr , aArg15 );
1951 insert( lStr , aArg16 );
1952 insert( lStr , aArg17 );
1953 insert( lStr , aArg18 );
1954 insert( lStr , aArg19 );
1955 insert( lStr , aArg20 );
1956 insert( lStr , aArg21 );
1957 insert( lStr , aArg22 );
1958 insert( lStr , aArg23 );
1959 insert( lStr , aArg24 );
1960 insert( lStr , aArg25 );
1961 insert( lStr , aArg26 );
1962 insert( lStr , aArg27 );
1963 insert( lStr , aArg28 );
1964 insert( lStr , aArg29 );
1965 insert( lStr , aArg30 );
1966 insert( lStr , aArg31 );
1967 aError.tail();
1968 }
1969 #endif
1970 #endif
1971}
1972
1973// ======================================================================================================================================================
1974// WARNING! This file is automatically generated! Do not modify it! Any changes will be overwritten!
1975// ======================================================================================================================================================
1976
1977template< typename T0 >
1978void log ( WarningLevel& aWarning , const T0& aArg0 )
1979{
1980 #ifndef LOGGING_EXCLUDE_FATAL
1981 #ifndef LOGGING_EXCLUDE_ERROR
1982 #ifndef LOGGING_EXCLUDE_WARNING
1983 if( LoggingIncludes( aWarning ) ){
1984 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
1985 std::ostream& lStr( aWarning.stream() );
1986 aWarning.head();
1987 insert( lStr , aArg0 );
1988 aWarning.tail();
1989 }
1990 #endif
1991 #endif
1992 #endif
1993}
1994
1995template< typename T0 , typename T1 >
1996void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 )
1997{
1998 #ifndef LOGGING_EXCLUDE_FATAL
1999 #ifndef LOGGING_EXCLUDE_ERROR
2000 #ifndef LOGGING_EXCLUDE_WARNING
2001 if( LoggingIncludes( aWarning ) ){
2002 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2003 std::ostream& lStr( aWarning.stream() );
2004 aWarning.head();
2005 insert( lStr , aArg0 );
2006 insert( lStr , aArg1 );
2007 aWarning.tail();
2008 }
2009 #endif
2010 #endif
2011 #endif
2012}
2013
2014template< typename T0 , typename T1 , typename T2 >
2015void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 )
2016{
2017 #ifndef LOGGING_EXCLUDE_FATAL
2018 #ifndef LOGGING_EXCLUDE_ERROR
2019 #ifndef LOGGING_EXCLUDE_WARNING
2020 if( LoggingIncludes( aWarning ) ){
2021 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2022 std::ostream& lStr( aWarning.stream() );
2023 aWarning.head();
2024 insert( lStr , aArg0 );
2025 insert( lStr , aArg1 );
2026 insert( lStr , aArg2 );
2027 aWarning.tail();
2028 }
2029 #endif
2030 #endif
2031 #endif
2032}
2033
2034template< typename T0 , typename T1 , typename T2 , typename T3 >
2035void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 )
2036{
2037 #ifndef LOGGING_EXCLUDE_FATAL
2038 #ifndef LOGGING_EXCLUDE_ERROR
2039 #ifndef LOGGING_EXCLUDE_WARNING
2040 if( LoggingIncludes( aWarning ) ){
2041 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2042 std::ostream& lStr( aWarning.stream() );
2043 aWarning.head();
2044 insert( lStr , aArg0 );
2045 insert( lStr , aArg1 );
2046 insert( lStr , aArg2 );
2047 insert( lStr , aArg3 );
2048 aWarning.tail();
2049 }
2050 #endif
2051 #endif
2052 #endif
2053}
2054
2055template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
2056void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 )
2057{
2058 #ifndef LOGGING_EXCLUDE_FATAL
2059 #ifndef LOGGING_EXCLUDE_ERROR
2060 #ifndef LOGGING_EXCLUDE_WARNING
2061 if( LoggingIncludes( aWarning ) ){
2062 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2063 std::ostream& lStr( aWarning.stream() );
2064 aWarning.head();
2065 insert( lStr , aArg0 );
2066 insert( lStr , aArg1 );
2067 insert( lStr , aArg2 );
2068 insert( lStr , aArg3 );
2069 insert( lStr , aArg4 );
2070 aWarning.tail();
2071 }
2072 #endif
2073 #endif
2074 #endif
2075}
2076
2077template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
2078void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 )
2079{
2080 #ifndef LOGGING_EXCLUDE_FATAL
2081 #ifndef LOGGING_EXCLUDE_ERROR
2082 #ifndef LOGGING_EXCLUDE_WARNING
2083 if( LoggingIncludes( aWarning ) ){
2084 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2085 std::ostream& lStr( aWarning.stream() );
2086 aWarning.head();
2087 insert( lStr , aArg0 );
2088 insert( lStr , aArg1 );
2089 insert( lStr , aArg2 );
2090 insert( lStr , aArg3 );
2091 insert( lStr , aArg4 );
2092 insert( lStr , aArg5 );
2093 aWarning.tail();
2094 }
2095 #endif
2096 #endif
2097 #endif
2098}
2099
2100template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
2101void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 )
2102{
2103 #ifndef LOGGING_EXCLUDE_FATAL
2104 #ifndef LOGGING_EXCLUDE_ERROR
2105 #ifndef LOGGING_EXCLUDE_WARNING
2106 if( LoggingIncludes( aWarning ) ){
2107 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2108 std::ostream& lStr( aWarning.stream() );
2109 aWarning.head();
2110 insert( lStr , aArg0 );
2111 insert( lStr , aArg1 );
2112 insert( lStr , aArg2 );
2113 insert( lStr , aArg3 );
2114 insert( lStr , aArg4 );
2115 insert( lStr , aArg5 );
2116 insert( lStr , aArg6 );
2117 aWarning.tail();
2118 }
2119 #endif
2120 #endif
2121 #endif
2122}
2123
2124template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
2125void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 )
2126{
2127 #ifndef LOGGING_EXCLUDE_FATAL
2128 #ifndef LOGGING_EXCLUDE_ERROR
2129 #ifndef LOGGING_EXCLUDE_WARNING
2130 if( LoggingIncludes( aWarning ) ){
2131 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2132 std::ostream& lStr( aWarning.stream() );
2133 aWarning.head();
2134 insert( lStr , aArg0 );
2135 insert( lStr , aArg1 );
2136 insert( lStr , aArg2 );
2137 insert( lStr , aArg3 );
2138 insert( lStr , aArg4 );
2139 insert( lStr , aArg5 );
2140 insert( lStr , aArg6 );
2141 insert( lStr , aArg7 );
2142 aWarning.tail();
2143 }
2144 #endif
2145 #endif
2146 #endif
2147}
2148
2149template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
2150void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 )
2151{
2152 #ifndef LOGGING_EXCLUDE_FATAL
2153 #ifndef LOGGING_EXCLUDE_ERROR
2154 #ifndef LOGGING_EXCLUDE_WARNING
2155 if( LoggingIncludes( aWarning ) ){
2156 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2157 std::ostream& lStr( aWarning.stream() );
2158 aWarning.head();
2159 insert( lStr , aArg0 );
2160 insert( lStr , aArg1 );
2161 insert( lStr , aArg2 );
2162 insert( lStr , aArg3 );
2163 insert( lStr , aArg4 );
2164 insert( lStr , aArg5 );
2165 insert( lStr , aArg6 );
2166 insert( lStr , aArg7 );
2167 insert( lStr , aArg8 );
2168 aWarning.tail();
2169 }
2170 #endif
2171 #endif
2172 #endif
2173}
2174
2175template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
2176void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 )
2177{
2178 #ifndef LOGGING_EXCLUDE_FATAL
2179 #ifndef LOGGING_EXCLUDE_ERROR
2180 #ifndef LOGGING_EXCLUDE_WARNING
2181 if( LoggingIncludes( aWarning ) ){
2182 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2183 std::ostream& lStr( aWarning.stream() );
2184 aWarning.head();
2185 insert( lStr , aArg0 );
2186 insert( lStr , aArg1 );
2187 insert( lStr , aArg2 );
2188 insert( lStr , aArg3 );
2189 insert( lStr , aArg4 );
2190 insert( lStr , aArg5 );
2191 insert( lStr , aArg6 );
2192 insert( lStr , aArg7 );
2193 insert( lStr , aArg8 );
2194 insert( lStr , aArg9 );
2195 aWarning.tail();
2196 }
2197 #endif
2198 #endif
2199 #endif
2200}
2201
2202template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
2203void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 )
2204{
2205 #ifndef LOGGING_EXCLUDE_FATAL
2206 #ifndef LOGGING_EXCLUDE_ERROR
2207 #ifndef LOGGING_EXCLUDE_WARNING
2208 if( LoggingIncludes( aWarning ) ){
2209 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2210 std::ostream& lStr( aWarning.stream() );
2211 aWarning.head();
2212 insert( lStr , aArg0 );
2213 insert( lStr , aArg1 );
2214 insert( lStr , aArg2 );
2215 insert( lStr , aArg3 );
2216 insert( lStr , aArg4 );
2217 insert( lStr , aArg5 );
2218 insert( lStr , aArg6 );
2219 insert( lStr , aArg7 );
2220 insert( lStr , aArg8 );
2221 insert( lStr , aArg9 );
2222 insert( lStr , aArg10 );
2223 aWarning.tail();
2224 }
2225 #endif
2226 #endif
2227 #endif
2228}
2229
2230template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 >
2231void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 )
2232{
2233 #ifndef LOGGING_EXCLUDE_FATAL
2234 #ifndef LOGGING_EXCLUDE_ERROR
2235 #ifndef LOGGING_EXCLUDE_WARNING
2236 if( LoggingIncludes( aWarning ) ){
2237 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2238 std::ostream& lStr( aWarning.stream() );
2239 aWarning.head();
2240 insert( lStr , aArg0 );
2241 insert( lStr , aArg1 );
2242 insert( lStr , aArg2 );
2243 insert( lStr , aArg3 );
2244 insert( lStr , aArg4 );
2245 insert( lStr , aArg5 );
2246 insert( lStr , aArg6 );
2247 insert( lStr , aArg7 );
2248 insert( lStr , aArg8 );
2249 insert( lStr , aArg9 );
2250 insert( lStr , aArg10 );
2251 insert( lStr , aArg11 );
2252 aWarning.tail();
2253 }
2254 #endif
2255 #endif
2256 #endif
2257}
2258
2259template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 >
2260void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 )
2261{
2262 #ifndef LOGGING_EXCLUDE_FATAL
2263 #ifndef LOGGING_EXCLUDE_ERROR
2264 #ifndef LOGGING_EXCLUDE_WARNING
2265 if( LoggingIncludes( aWarning ) ){
2266 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2267 std::ostream& lStr( aWarning.stream() );
2268 aWarning.head();
2269 insert( lStr , aArg0 );
2270 insert( lStr , aArg1 );
2271 insert( lStr , aArg2 );
2272 insert( lStr , aArg3 );
2273 insert( lStr , aArg4 );
2274 insert( lStr , aArg5 );
2275 insert( lStr , aArg6 );
2276 insert( lStr , aArg7 );
2277 insert( lStr , aArg8 );
2278 insert( lStr , aArg9 );
2279 insert( lStr , aArg10 );
2280 insert( lStr , aArg11 );
2281 insert( lStr , aArg12 );
2282 aWarning.tail();
2283 }
2284 #endif
2285 #endif
2286 #endif
2287}
2288
2289template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 >
2290void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 )
2291{
2292 #ifndef LOGGING_EXCLUDE_FATAL
2293 #ifndef LOGGING_EXCLUDE_ERROR
2294 #ifndef LOGGING_EXCLUDE_WARNING
2295 if( LoggingIncludes( aWarning ) ){
2296 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2297 std::ostream& lStr( aWarning.stream() );
2298 aWarning.head();
2299 insert( lStr , aArg0 );
2300 insert( lStr , aArg1 );
2301 insert( lStr , aArg2 );
2302 insert( lStr , aArg3 );
2303 insert( lStr , aArg4 );
2304 insert( lStr , aArg5 );
2305 insert( lStr , aArg6 );
2306 insert( lStr , aArg7 );
2307 insert( lStr , aArg8 );
2308 insert( lStr , aArg9 );
2309 insert( lStr , aArg10 );
2310 insert( lStr , aArg11 );
2311 insert( lStr , aArg12 );
2312 insert( lStr , aArg13 );
2313 aWarning.tail();
2314 }
2315 #endif
2316 #endif
2317 #endif
2318}
2319
2320template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 >
2321void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 )
2322{
2323 #ifndef LOGGING_EXCLUDE_FATAL
2324 #ifndef LOGGING_EXCLUDE_ERROR
2325 #ifndef LOGGING_EXCLUDE_WARNING
2326 if( LoggingIncludes( aWarning ) ){
2327 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2328 std::ostream& lStr( aWarning.stream() );
2329 aWarning.head();
2330 insert( lStr , aArg0 );
2331 insert( lStr , aArg1 );
2332 insert( lStr , aArg2 );
2333 insert( lStr , aArg3 );
2334 insert( lStr , aArg4 );
2335 insert( lStr , aArg5 );
2336 insert( lStr , aArg6 );
2337 insert( lStr , aArg7 );
2338 insert( lStr , aArg8 );
2339 insert( lStr , aArg9 );
2340 insert( lStr , aArg10 );
2341 insert( lStr , aArg11 );
2342 insert( lStr , aArg12 );
2343 insert( lStr , aArg13 );
2344 insert( lStr , aArg14 );
2345 aWarning.tail();
2346 }
2347 #endif
2348 #endif
2349 #endif
2350}
2351
2352template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 >
2353void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 )
2354{
2355 #ifndef LOGGING_EXCLUDE_FATAL
2356 #ifndef LOGGING_EXCLUDE_ERROR
2357 #ifndef LOGGING_EXCLUDE_WARNING
2358 if( LoggingIncludes( aWarning ) ){
2359 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2360 std::ostream& lStr( aWarning.stream() );
2361 aWarning.head();
2362 insert( lStr , aArg0 );
2363 insert( lStr , aArg1 );
2364 insert( lStr , aArg2 );
2365 insert( lStr , aArg3 );
2366 insert( lStr , aArg4 );
2367 insert( lStr , aArg5 );
2368 insert( lStr , aArg6 );
2369 insert( lStr , aArg7 );
2370 insert( lStr , aArg8 );
2371 insert( lStr , aArg9 );
2372 insert( lStr , aArg10 );
2373 insert( lStr , aArg11 );
2374 insert( lStr , aArg12 );
2375 insert( lStr , aArg13 );
2376 insert( lStr , aArg14 );
2377 insert( lStr , aArg15 );
2378 aWarning.tail();
2379 }
2380 #endif
2381 #endif
2382 #endif
2383}
2384
2385template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 >
2386void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 )
2387{
2388 #ifndef LOGGING_EXCLUDE_FATAL
2389 #ifndef LOGGING_EXCLUDE_ERROR
2390 #ifndef LOGGING_EXCLUDE_WARNING
2391 if( LoggingIncludes( aWarning ) ){
2392 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2393 std::ostream& lStr( aWarning.stream() );
2394 aWarning.head();
2395 insert( lStr , aArg0 );
2396 insert( lStr , aArg1 );
2397 insert( lStr , aArg2 );
2398 insert( lStr , aArg3 );
2399 insert( lStr , aArg4 );
2400 insert( lStr , aArg5 );
2401 insert( lStr , aArg6 );
2402 insert( lStr , aArg7 );
2403 insert( lStr , aArg8 );
2404 insert( lStr , aArg9 );
2405 insert( lStr , aArg10 );
2406 insert( lStr , aArg11 );
2407 insert( lStr , aArg12 );
2408 insert( lStr , aArg13 );
2409 insert( lStr , aArg14 );
2410 insert( lStr , aArg15 );
2411 insert( lStr , aArg16 );
2412 aWarning.tail();
2413 }
2414 #endif
2415 #endif
2416 #endif
2417}
2418
2419template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 >
2420void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 )
2421{
2422 #ifndef LOGGING_EXCLUDE_FATAL
2423 #ifndef LOGGING_EXCLUDE_ERROR
2424 #ifndef LOGGING_EXCLUDE_WARNING
2425 if( LoggingIncludes( aWarning ) ){
2426 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2427 std::ostream& lStr( aWarning.stream() );
2428 aWarning.head();
2429 insert( lStr , aArg0 );
2430 insert( lStr , aArg1 );
2431 insert( lStr , aArg2 );
2432 insert( lStr , aArg3 );
2433 insert( lStr , aArg4 );
2434 insert( lStr , aArg5 );
2435 insert( lStr , aArg6 );
2436 insert( lStr , aArg7 );
2437 insert( lStr , aArg8 );
2438 insert( lStr , aArg9 );
2439 insert( lStr , aArg10 );
2440 insert( lStr , aArg11 );
2441 insert( lStr , aArg12 );
2442 insert( lStr , aArg13 );
2443 insert( lStr , aArg14 );
2444 insert( lStr , aArg15 );
2445 insert( lStr , aArg16 );
2446 insert( lStr , aArg17 );
2447 aWarning.tail();
2448 }
2449 #endif
2450 #endif
2451 #endif
2452}
2453
2454template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 >
2455void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 )
2456{
2457 #ifndef LOGGING_EXCLUDE_FATAL
2458 #ifndef LOGGING_EXCLUDE_ERROR
2459 #ifndef LOGGING_EXCLUDE_WARNING
2460 if( LoggingIncludes( aWarning ) ){
2461 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2462 std::ostream& lStr( aWarning.stream() );
2463 aWarning.head();
2464 insert( lStr , aArg0 );
2465 insert( lStr , aArg1 );
2466 insert( lStr , aArg2 );
2467 insert( lStr , aArg3 );
2468 insert( lStr , aArg4 );
2469 insert( lStr , aArg5 );
2470 insert( lStr , aArg6 );
2471 insert( lStr , aArg7 );
2472 insert( lStr , aArg8 );
2473 insert( lStr , aArg9 );
2474 insert( lStr , aArg10 );
2475 insert( lStr , aArg11 );
2476 insert( lStr , aArg12 );
2477 insert( lStr , aArg13 );
2478 insert( lStr , aArg14 );
2479 insert( lStr , aArg15 );
2480 insert( lStr , aArg16 );
2481 insert( lStr , aArg17 );
2482 insert( lStr , aArg18 );
2483 aWarning.tail();
2484 }
2485 #endif
2486 #endif
2487 #endif
2488}
2489
2490template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 >
2491void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 )
2492{
2493 #ifndef LOGGING_EXCLUDE_FATAL
2494 #ifndef LOGGING_EXCLUDE_ERROR
2495 #ifndef LOGGING_EXCLUDE_WARNING
2496 if( LoggingIncludes( aWarning ) ){
2497 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2498 std::ostream& lStr( aWarning.stream() );
2499 aWarning.head();
2500 insert( lStr , aArg0 );
2501 insert( lStr , aArg1 );
2502 insert( lStr , aArg2 );
2503 insert( lStr , aArg3 );
2504 insert( lStr , aArg4 );
2505 insert( lStr , aArg5 );
2506 insert( lStr , aArg6 );
2507 insert( lStr , aArg7 );
2508 insert( lStr , aArg8 );
2509 insert( lStr , aArg9 );
2510 insert( lStr , aArg10 );
2511 insert( lStr , aArg11 );
2512 insert( lStr , aArg12 );
2513 insert( lStr , aArg13 );
2514 insert( lStr , aArg14 );
2515 insert( lStr , aArg15 );
2516 insert( lStr , aArg16 );
2517 insert( lStr , aArg17 );
2518 insert( lStr , aArg18 );
2519 insert( lStr , aArg19 );
2520 aWarning.tail();
2521 }
2522 #endif
2523 #endif
2524 #endif
2525}
2526
2527template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 >
2528void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 )
2529{
2530 #ifndef LOGGING_EXCLUDE_FATAL
2531 #ifndef LOGGING_EXCLUDE_ERROR
2532 #ifndef LOGGING_EXCLUDE_WARNING
2533 if( LoggingIncludes( aWarning ) ){
2534 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2535 std::ostream& lStr( aWarning.stream() );
2536 aWarning.head();
2537 insert( lStr , aArg0 );
2538 insert( lStr , aArg1 );
2539 insert( lStr , aArg2 );
2540 insert( lStr , aArg3 );
2541 insert( lStr , aArg4 );
2542 insert( lStr , aArg5 );
2543 insert( lStr , aArg6 );
2544 insert( lStr , aArg7 );
2545 insert( lStr , aArg8 );
2546 insert( lStr , aArg9 );
2547 insert( lStr , aArg10 );
2548 insert( lStr , aArg11 );
2549 insert( lStr , aArg12 );
2550 insert( lStr , aArg13 );
2551 insert( lStr , aArg14 );
2552 insert( lStr , aArg15 );
2553 insert( lStr , aArg16 );
2554 insert( lStr , aArg17 );
2555 insert( lStr , aArg18 );
2556 insert( lStr , aArg19 );
2557 insert( lStr , aArg20 );
2558 aWarning.tail();
2559 }
2560 #endif
2561 #endif
2562 #endif
2563}
2564
2565template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 >
2566void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 )
2567{
2568 #ifndef LOGGING_EXCLUDE_FATAL
2569 #ifndef LOGGING_EXCLUDE_ERROR
2570 #ifndef LOGGING_EXCLUDE_WARNING
2571 if( LoggingIncludes( aWarning ) ){
2572 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2573 std::ostream& lStr( aWarning.stream() );
2574 aWarning.head();
2575 insert( lStr , aArg0 );
2576 insert( lStr , aArg1 );
2577 insert( lStr , aArg2 );
2578 insert( lStr , aArg3 );
2579 insert( lStr , aArg4 );
2580 insert( lStr , aArg5 );
2581 insert( lStr , aArg6 );
2582 insert( lStr , aArg7 );
2583 insert( lStr , aArg8 );
2584 insert( lStr , aArg9 );
2585 insert( lStr , aArg10 );
2586 insert( lStr , aArg11 );
2587 insert( lStr , aArg12 );
2588 insert( lStr , aArg13 );
2589 insert( lStr , aArg14 );
2590 insert( lStr , aArg15 );
2591 insert( lStr , aArg16 );
2592 insert( lStr , aArg17 );
2593 insert( lStr , aArg18 );
2594 insert( lStr , aArg19 );
2595 insert( lStr , aArg20 );
2596 insert( lStr , aArg21 );
2597 aWarning.tail();
2598 }
2599 #endif
2600 #endif
2601 #endif
2602}
2603
2604template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 >
2605void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 )
2606{
2607 #ifndef LOGGING_EXCLUDE_FATAL
2608 #ifndef LOGGING_EXCLUDE_ERROR
2609 #ifndef LOGGING_EXCLUDE_WARNING
2610 if( LoggingIncludes( aWarning ) ){
2611 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2612 std::ostream& lStr( aWarning.stream() );
2613 aWarning.head();
2614 insert( lStr , aArg0 );
2615 insert( lStr , aArg1 );
2616 insert( lStr , aArg2 );
2617 insert( lStr , aArg3 );
2618 insert( lStr , aArg4 );
2619 insert( lStr , aArg5 );
2620 insert( lStr , aArg6 );
2621 insert( lStr , aArg7 );
2622 insert( lStr , aArg8 );
2623 insert( lStr , aArg9 );
2624 insert( lStr , aArg10 );
2625 insert( lStr , aArg11 );
2626 insert( lStr , aArg12 );
2627 insert( lStr , aArg13 );
2628 insert( lStr , aArg14 );
2629 insert( lStr , aArg15 );
2630 insert( lStr , aArg16 );
2631 insert( lStr , aArg17 );
2632 insert( lStr , aArg18 );
2633 insert( lStr , aArg19 );
2634 insert( lStr , aArg20 );
2635 insert( lStr , aArg21 );
2636 insert( lStr , aArg22 );
2637 aWarning.tail();
2638 }
2639 #endif
2640 #endif
2641 #endif
2642}
2643
2644template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 >
2645void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 )
2646{
2647 #ifndef LOGGING_EXCLUDE_FATAL
2648 #ifndef LOGGING_EXCLUDE_ERROR
2649 #ifndef LOGGING_EXCLUDE_WARNING
2650 if( LoggingIncludes( aWarning ) ){
2651 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2652 std::ostream& lStr( aWarning.stream() );
2653 aWarning.head();
2654 insert( lStr , aArg0 );
2655 insert( lStr , aArg1 );
2656 insert( lStr , aArg2 );
2657 insert( lStr , aArg3 );
2658 insert( lStr , aArg4 );
2659 insert( lStr , aArg5 );
2660 insert( lStr , aArg6 );
2661 insert( lStr , aArg7 );
2662 insert( lStr , aArg8 );
2663 insert( lStr , aArg9 );
2664 insert( lStr , aArg10 );
2665 insert( lStr , aArg11 );
2666 insert( lStr , aArg12 );
2667 insert( lStr , aArg13 );
2668 insert( lStr , aArg14 );
2669 insert( lStr , aArg15 );
2670 insert( lStr , aArg16 );
2671 insert( lStr , aArg17 );
2672 insert( lStr , aArg18 );
2673 insert( lStr , aArg19 );
2674 insert( lStr , aArg20 );
2675 insert( lStr , aArg21 );
2676 insert( lStr , aArg22 );
2677 insert( lStr , aArg23 );
2678 aWarning.tail();
2679 }
2680 #endif
2681 #endif
2682 #endif
2683}
2684
2685template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 >
2686void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 )
2687{
2688 #ifndef LOGGING_EXCLUDE_FATAL
2689 #ifndef LOGGING_EXCLUDE_ERROR
2690 #ifndef LOGGING_EXCLUDE_WARNING
2691 if( LoggingIncludes( aWarning ) ){
2692 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2693 std::ostream& lStr( aWarning.stream() );
2694 aWarning.head();
2695 insert( lStr , aArg0 );
2696 insert( lStr , aArg1 );
2697 insert( lStr , aArg2 );
2698 insert( lStr , aArg3 );
2699 insert( lStr , aArg4 );
2700 insert( lStr , aArg5 );
2701 insert( lStr , aArg6 );
2702 insert( lStr , aArg7 );
2703 insert( lStr , aArg8 );
2704 insert( lStr , aArg9 );
2705 insert( lStr , aArg10 );
2706 insert( lStr , aArg11 );
2707 insert( lStr , aArg12 );
2708 insert( lStr , aArg13 );
2709 insert( lStr , aArg14 );
2710 insert( lStr , aArg15 );
2711 insert( lStr , aArg16 );
2712 insert( lStr , aArg17 );
2713 insert( lStr , aArg18 );
2714 insert( lStr , aArg19 );
2715 insert( lStr , aArg20 );
2716 insert( lStr , aArg21 );
2717 insert( lStr , aArg22 );
2718 insert( lStr , aArg23 );
2719 insert( lStr , aArg24 );
2720 aWarning.tail();
2721 }
2722 #endif
2723 #endif
2724 #endif
2725}
2726
2727template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 >
2728void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 )
2729{
2730 #ifndef LOGGING_EXCLUDE_FATAL
2731 #ifndef LOGGING_EXCLUDE_ERROR
2732 #ifndef LOGGING_EXCLUDE_WARNING
2733 if( LoggingIncludes( aWarning ) ){
2734 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2735 std::ostream& lStr( aWarning.stream() );
2736 aWarning.head();
2737 insert( lStr , aArg0 );
2738 insert( lStr , aArg1 );
2739 insert( lStr , aArg2 );
2740 insert( lStr , aArg3 );
2741 insert( lStr , aArg4 );
2742 insert( lStr , aArg5 );
2743 insert( lStr , aArg6 );
2744 insert( lStr , aArg7 );
2745 insert( lStr , aArg8 );
2746 insert( lStr , aArg9 );
2747 insert( lStr , aArg10 );
2748 insert( lStr , aArg11 );
2749 insert( lStr , aArg12 );
2750 insert( lStr , aArg13 );
2751 insert( lStr , aArg14 );
2752 insert( lStr , aArg15 );
2753 insert( lStr , aArg16 );
2754 insert( lStr , aArg17 );
2755 insert( lStr , aArg18 );
2756 insert( lStr , aArg19 );
2757 insert( lStr , aArg20 );
2758 insert( lStr , aArg21 );
2759 insert( lStr , aArg22 );
2760 insert( lStr , aArg23 );
2761 insert( lStr , aArg24 );
2762 insert( lStr , aArg25 );
2763 aWarning.tail();
2764 }
2765 #endif
2766 #endif
2767 #endif
2768}
2769
2770template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 >
2771void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 )
2772{
2773 #ifndef LOGGING_EXCLUDE_FATAL
2774 #ifndef LOGGING_EXCLUDE_ERROR
2775 #ifndef LOGGING_EXCLUDE_WARNING
2776 if( LoggingIncludes( aWarning ) ){
2777 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2778 std::ostream& lStr( aWarning.stream() );
2779 aWarning.head();
2780 insert( lStr , aArg0 );
2781 insert( lStr , aArg1 );
2782 insert( lStr , aArg2 );
2783 insert( lStr , aArg3 );
2784 insert( lStr , aArg4 );
2785 insert( lStr , aArg5 );
2786 insert( lStr , aArg6 );
2787 insert( lStr , aArg7 );
2788 insert( lStr , aArg8 );
2789 insert( lStr , aArg9 );
2790 insert( lStr , aArg10 );
2791 insert( lStr , aArg11 );
2792 insert( lStr , aArg12 );
2793 insert( lStr , aArg13 );
2794 insert( lStr , aArg14 );
2795 insert( lStr , aArg15 );
2796 insert( lStr , aArg16 );
2797 insert( lStr , aArg17 );
2798 insert( lStr , aArg18 );
2799 insert( lStr , aArg19 );
2800 insert( lStr , aArg20 );
2801 insert( lStr , aArg21 );
2802 insert( lStr , aArg22 );
2803 insert( lStr , aArg23 );
2804 insert( lStr , aArg24 );
2805 insert( lStr , aArg25 );
2806 insert( lStr , aArg26 );
2807 aWarning.tail();
2808 }
2809 #endif
2810 #endif
2811 #endif
2812}
2813
2814template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 >
2815void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 )
2816{
2817 #ifndef LOGGING_EXCLUDE_FATAL
2818 #ifndef LOGGING_EXCLUDE_ERROR
2819 #ifndef LOGGING_EXCLUDE_WARNING
2820 if( LoggingIncludes( aWarning ) ){
2821 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2822 std::ostream& lStr( aWarning.stream() );
2823 aWarning.head();
2824 insert( lStr , aArg0 );
2825 insert( lStr , aArg1 );
2826 insert( lStr , aArg2 );
2827 insert( lStr , aArg3 );
2828 insert( lStr , aArg4 );
2829 insert( lStr , aArg5 );
2830 insert( lStr , aArg6 );
2831 insert( lStr , aArg7 );
2832 insert( lStr , aArg8 );
2833 insert( lStr , aArg9 );
2834 insert( lStr , aArg10 );
2835 insert( lStr , aArg11 );
2836 insert( lStr , aArg12 );
2837 insert( lStr , aArg13 );
2838 insert( lStr , aArg14 );
2839 insert( lStr , aArg15 );
2840 insert( lStr , aArg16 );
2841 insert( lStr , aArg17 );
2842 insert( lStr , aArg18 );
2843 insert( lStr , aArg19 );
2844 insert( lStr , aArg20 );
2845 insert( lStr , aArg21 );
2846 insert( lStr , aArg22 );
2847 insert( lStr , aArg23 );
2848 insert( lStr , aArg24 );
2849 insert( lStr , aArg25 );
2850 insert( lStr , aArg26 );
2851 insert( lStr , aArg27 );
2852 aWarning.tail();
2853 }
2854 #endif
2855 #endif
2856 #endif
2857}
2858
2859template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 >
2860void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 )
2861{
2862 #ifndef LOGGING_EXCLUDE_FATAL
2863 #ifndef LOGGING_EXCLUDE_ERROR
2864 #ifndef LOGGING_EXCLUDE_WARNING
2865 if( LoggingIncludes( aWarning ) ){
2866 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2867 std::ostream& lStr( aWarning.stream() );
2868 aWarning.head();
2869 insert( lStr , aArg0 );
2870 insert( lStr , aArg1 );
2871 insert( lStr , aArg2 );
2872 insert( lStr , aArg3 );
2873 insert( lStr , aArg4 );
2874 insert( lStr , aArg5 );
2875 insert( lStr , aArg6 );
2876 insert( lStr , aArg7 );
2877 insert( lStr , aArg8 );
2878 insert( lStr , aArg9 );
2879 insert( lStr , aArg10 );
2880 insert( lStr , aArg11 );
2881 insert( lStr , aArg12 );
2882 insert( lStr , aArg13 );
2883 insert( lStr , aArg14 );
2884 insert( lStr , aArg15 );
2885 insert( lStr , aArg16 );
2886 insert( lStr , aArg17 );
2887 insert( lStr , aArg18 );
2888 insert( lStr , aArg19 );
2889 insert( lStr , aArg20 );
2890 insert( lStr , aArg21 );
2891 insert( lStr , aArg22 );
2892 insert( lStr , aArg23 );
2893 insert( lStr , aArg24 );
2894 insert( lStr , aArg25 );
2895 insert( lStr , aArg26 );
2896 insert( lStr , aArg27 );
2897 insert( lStr , aArg28 );
2898 aWarning.tail();
2899 }
2900 #endif
2901 #endif
2902 #endif
2903}
2904
2905template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 >
2906void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 )
2907{
2908 #ifndef LOGGING_EXCLUDE_FATAL
2909 #ifndef LOGGING_EXCLUDE_ERROR
2910 #ifndef LOGGING_EXCLUDE_WARNING
2911 if( LoggingIncludes( aWarning ) ){
2912 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2913 std::ostream& lStr( aWarning.stream() );
2914 aWarning.head();
2915 insert( lStr , aArg0 );
2916 insert( lStr , aArg1 );
2917 insert( lStr , aArg2 );
2918 insert( lStr , aArg3 );
2919 insert( lStr , aArg4 );
2920 insert( lStr , aArg5 );
2921 insert( lStr , aArg6 );
2922 insert( lStr , aArg7 );
2923 insert( lStr , aArg8 );
2924 insert( lStr , aArg9 );
2925 insert( lStr , aArg10 );
2926 insert( lStr , aArg11 );
2927 insert( lStr , aArg12 );
2928 insert( lStr , aArg13 );
2929 insert( lStr , aArg14 );
2930 insert( lStr , aArg15 );
2931 insert( lStr , aArg16 );
2932 insert( lStr , aArg17 );
2933 insert( lStr , aArg18 );
2934 insert( lStr , aArg19 );
2935 insert( lStr , aArg20 );
2936 insert( lStr , aArg21 );
2937 insert( lStr , aArg22 );
2938 insert( lStr , aArg23 );
2939 insert( lStr , aArg24 );
2940 insert( lStr , aArg25 );
2941 insert( lStr , aArg26 );
2942 insert( lStr , aArg27 );
2943 insert( lStr , aArg28 );
2944 insert( lStr , aArg29 );
2945 aWarning.tail();
2946 }
2947 #endif
2948 #endif
2949 #endif
2950}
2951
2952template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 >
2953void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 )
2954{
2955 #ifndef LOGGING_EXCLUDE_FATAL
2956 #ifndef LOGGING_EXCLUDE_ERROR
2957 #ifndef LOGGING_EXCLUDE_WARNING
2958 if( LoggingIncludes( aWarning ) ){
2959 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
2960 std::ostream& lStr( aWarning.stream() );
2961 aWarning.head();
2962 insert( lStr , aArg0 );
2963 insert( lStr , aArg1 );
2964 insert( lStr , aArg2 );
2965 insert( lStr , aArg3 );
2966 insert( lStr , aArg4 );
2967 insert( lStr , aArg5 );
2968 insert( lStr , aArg6 );
2969 insert( lStr , aArg7 );
2970 insert( lStr , aArg8 );
2971 insert( lStr , aArg9 );
2972 insert( lStr , aArg10 );
2973 insert( lStr , aArg11 );
2974 insert( lStr , aArg12 );
2975 insert( lStr , aArg13 );
2976 insert( lStr , aArg14 );
2977 insert( lStr , aArg15 );
2978 insert( lStr , aArg16 );
2979 insert( lStr , aArg17 );
2980 insert( lStr , aArg18 );
2981 insert( lStr , aArg19 );
2982 insert( lStr , aArg20 );
2983 insert( lStr , aArg21 );
2984 insert( lStr , aArg22 );
2985 insert( lStr , aArg23 );
2986 insert( lStr , aArg24 );
2987 insert( lStr , aArg25 );
2988 insert( lStr , aArg26 );
2989 insert( lStr , aArg27 );
2990 insert( lStr , aArg28 );
2991 insert( lStr , aArg29 );
2992 insert( lStr , aArg30 );
2993 aWarning.tail();
2994 }
2995 #endif
2996 #endif
2997 #endif
2998}
2999
3000template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 , typename T31 >
3001void log ( WarningLevel& aWarning , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 , const T31& aArg31 )
3002{
3003 #ifndef LOGGING_EXCLUDE_FATAL
3004 #ifndef LOGGING_EXCLUDE_ERROR
3005 #ifndef LOGGING_EXCLUDE_WARNING
3006 if( LoggingIncludes( aWarning ) ){
3007 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3008 std::ostream& lStr( aWarning.stream() );
3009 aWarning.head();
3010 insert( lStr , aArg0 );
3011 insert( lStr , aArg1 );
3012 insert( lStr , aArg2 );
3013 insert( lStr , aArg3 );
3014 insert( lStr , aArg4 );
3015 insert( lStr , aArg5 );
3016 insert( lStr , aArg6 );
3017 insert( lStr , aArg7 );
3018 insert( lStr , aArg8 );
3019 insert( lStr , aArg9 );
3020 insert( lStr , aArg10 );
3021 insert( lStr , aArg11 );
3022 insert( lStr , aArg12 );
3023 insert( lStr , aArg13 );
3024 insert( lStr , aArg14 );
3025 insert( lStr , aArg15 );
3026 insert( lStr , aArg16 );
3027 insert( lStr , aArg17 );
3028 insert( lStr , aArg18 );
3029 insert( lStr , aArg19 );
3030 insert( lStr , aArg20 );
3031 insert( lStr , aArg21 );
3032 insert( lStr , aArg22 );
3033 insert( lStr , aArg23 );
3034 insert( lStr , aArg24 );
3035 insert( lStr , aArg25 );
3036 insert( lStr , aArg26 );
3037 insert( lStr , aArg27 );
3038 insert( lStr , aArg28 );
3039 insert( lStr , aArg29 );
3040 insert( lStr , aArg30 );
3041 insert( lStr , aArg31 );
3042 aWarning.tail();
3043 }
3044 #endif
3045 #endif
3046 #endif
3047}
3048
3049// ======================================================================================================================================================
3050// WARNING! This file is automatically generated! Do not modify it! Any changes will be overwritten!
3051// ======================================================================================================================================================
3052
3053template< typename T0 >
3054void log ( NoticeLevel& aNotice , const T0& aArg0 )
3055{
3056 #ifndef LOGGING_EXCLUDE_FATAL
3057 #ifndef LOGGING_EXCLUDE_ERROR
3058 #ifndef LOGGING_EXCLUDE_WARNING
3059 #ifndef LOGGING_EXCLUDE_NOTICE
3060 if( LoggingIncludes( aNotice ) ){
3061 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3062 std::ostream& lStr( aNotice.stream() );
3063 aNotice.head();
3064 insert( lStr , aArg0 );
3065 aNotice.tail();
3066 }
3067 #endif
3068 #endif
3069 #endif
3070 #endif
3071}
3072
3073template< typename T0 , typename T1 >
3074void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 )
3075{
3076 #ifndef LOGGING_EXCLUDE_FATAL
3077 #ifndef LOGGING_EXCLUDE_ERROR
3078 #ifndef LOGGING_EXCLUDE_WARNING
3079 #ifndef LOGGING_EXCLUDE_NOTICE
3080 if( LoggingIncludes( aNotice ) ){
3081 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3082 std::ostream& lStr( aNotice.stream() );
3083 aNotice.head();
3084 insert( lStr , aArg0 );
3085 insert( lStr , aArg1 );
3086 aNotice.tail();
3087 }
3088 #endif
3089 #endif
3090 #endif
3091 #endif
3092}
3093
3094template< typename T0 , typename T1 , typename T2 >
3095void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 )
3096{
3097 #ifndef LOGGING_EXCLUDE_FATAL
3098 #ifndef LOGGING_EXCLUDE_ERROR
3099 #ifndef LOGGING_EXCLUDE_WARNING
3100 #ifndef LOGGING_EXCLUDE_NOTICE
3101 if( LoggingIncludes( aNotice ) ){
3102 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3103 std::ostream& lStr( aNotice.stream() );
3104 aNotice.head();
3105 insert( lStr , aArg0 );
3106 insert( lStr , aArg1 );
3107 insert( lStr , aArg2 );
3108 aNotice.tail();
3109 }
3110 #endif
3111 #endif
3112 #endif
3113 #endif
3114}
3115
3116template< typename T0 , typename T1 , typename T2 , typename T3 >
3117void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 )
3118{
3119 #ifndef LOGGING_EXCLUDE_FATAL
3120 #ifndef LOGGING_EXCLUDE_ERROR
3121 #ifndef LOGGING_EXCLUDE_WARNING
3122 #ifndef LOGGING_EXCLUDE_NOTICE
3123 if( LoggingIncludes( aNotice ) ){
3124 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3125 std::ostream& lStr( aNotice.stream() );
3126 aNotice.head();
3127 insert( lStr , aArg0 );
3128 insert( lStr , aArg1 );
3129 insert( lStr , aArg2 );
3130 insert( lStr , aArg3 );
3131 aNotice.tail();
3132 }
3133 #endif
3134 #endif
3135 #endif
3136 #endif
3137}
3138
3139template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
3140void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 )
3141{
3142 #ifndef LOGGING_EXCLUDE_FATAL
3143 #ifndef LOGGING_EXCLUDE_ERROR
3144 #ifndef LOGGING_EXCLUDE_WARNING
3145 #ifndef LOGGING_EXCLUDE_NOTICE
3146 if( LoggingIncludes( aNotice ) ){
3147 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3148 std::ostream& lStr( aNotice.stream() );
3149 aNotice.head();
3150 insert( lStr , aArg0 );
3151 insert( lStr , aArg1 );
3152 insert( lStr , aArg2 );
3153 insert( lStr , aArg3 );
3154 insert( lStr , aArg4 );
3155 aNotice.tail();
3156 }
3157 #endif
3158 #endif
3159 #endif
3160 #endif
3161}
3162
3163template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
3164void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 )
3165{
3166 #ifndef LOGGING_EXCLUDE_FATAL
3167 #ifndef LOGGING_EXCLUDE_ERROR
3168 #ifndef LOGGING_EXCLUDE_WARNING
3169 #ifndef LOGGING_EXCLUDE_NOTICE
3170 if( LoggingIncludes( aNotice ) ){
3171 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3172 std::ostream& lStr( aNotice.stream() );
3173 aNotice.head();
3174 insert( lStr , aArg0 );
3175 insert( lStr , aArg1 );
3176 insert( lStr , aArg2 );
3177 insert( lStr , aArg3 );
3178 insert( lStr , aArg4 );
3179 insert( lStr , aArg5 );
3180 aNotice.tail();
3181 }
3182 #endif
3183 #endif
3184 #endif
3185 #endif
3186}
3187
3188template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
3189void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 )
3190{
3191 #ifndef LOGGING_EXCLUDE_FATAL
3192 #ifndef LOGGING_EXCLUDE_ERROR
3193 #ifndef LOGGING_EXCLUDE_WARNING
3194 #ifndef LOGGING_EXCLUDE_NOTICE
3195 if( LoggingIncludes( aNotice ) ){
3196 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3197 std::ostream& lStr( aNotice.stream() );
3198 aNotice.head();
3199 insert( lStr , aArg0 );
3200 insert( lStr , aArg1 );
3201 insert( lStr , aArg2 );
3202 insert( lStr , aArg3 );
3203 insert( lStr , aArg4 );
3204 insert( lStr , aArg5 );
3205 insert( lStr , aArg6 );
3206 aNotice.tail();
3207 }
3208 #endif
3209 #endif
3210 #endif
3211 #endif
3212}
3213
3214template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
3215void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 )
3216{
3217 #ifndef LOGGING_EXCLUDE_FATAL
3218 #ifndef LOGGING_EXCLUDE_ERROR
3219 #ifndef LOGGING_EXCLUDE_WARNING
3220 #ifndef LOGGING_EXCLUDE_NOTICE
3221 if( LoggingIncludes( aNotice ) ){
3222 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3223 std::ostream& lStr( aNotice.stream() );
3224 aNotice.head();
3225 insert( lStr , aArg0 );
3226 insert( lStr , aArg1 );
3227 insert( lStr , aArg2 );
3228 insert( lStr , aArg3 );
3229 insert( lStr , aArg4 );
3230 insert( lStr , aArg5 );
3231 insert( lStr , aArg6 );
3232 insert( lStr , aArg7 );
3233 aNotice.tail();
3234 }
3235 #endif
3236 #endif
3237 #endif
3238 #endif
3239}
3240
3241template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
3242void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 )
3243{
3244 #ifndef LOGGING_EXCLUDE_FATAL
3245 #ifndef LOGGING_EXCLUDE_ERROR
3246 #ifndef LOGGING_EXCLUDE_WARNING
3247 #ifndef LOGGING_EXCLUDE_NOTICE
3248 if( LoggingIncludes( aNotice ) ){
3249 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3250 std::ostream& lStr( aNotice.stream() );
3251 aNotice.head();
3252 insert( lStr , aArg0 );
3253 insert( lStr , aArg1 );
3254 insert( lStr , aArg2 );
3255 insert( lStr , aArg3 );
3256 insert( lStr , aArg4 );
3257 insert( lStr , aArg5 );
3258 insert( lStr , aArg6 );
3259 insert( lStr , aArg7 );
3260 insert( lStr , aArg8 );
3261 aNotice.tail();
3262 }
3263 #endif
3264 #endif
3265 #endif
3266 #endif
3267}
3268
3269template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
3270void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 )
3271{
3272 #ifndef LOGGING_EXCLUDE_FATAL
3273 #ifndef LOGGING_EXCLUDE_ERROR
3274 #ifndef LOGGING_EXCLUDE_WARNING
3275 #ifndef LOGGING_EXCLUDE_NOTICE
3276 if( LoggingIncludes( aNotice ) ){
3277 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3278 std::ostream& lStr( aNotice.stream() );
3279 aNotice.head();
3280 insert( lStr , aArg0 );
3281 insert( lStr , aArg1 );
3282 insert( lStr , aArg2 );
3283 insert( lStr , aArg3 );
3284 insert( lStr , aArg4 );
3285 insert( lStr , aArg5 );
3286 insert( lStr , aArg6 );
3287 insert( lStr , aArg7 );
3288 insert( lStr , aArg8 );
3289 insert( lStr , aArg9 );
3290 aNotice.tail();
3291 }
3292 #endif
3293 #endif
3294 #endif
3295 #endif
3296}
3297
3298template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
3299void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 )
3300{
3301 #ifndef LOGGING_EXCLUDE_FATAL
3302 #ifndef LOGGING_EXCLUDE_ERROR
3303 #ifndef LOGGING_EXCLUDE_WARNING
3304 #ifndef LOGGING_EXCLUDE_NOTICE
3305 if( LoggingIncludes( aNotice ) ){
3306 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3307 std::ostream& lStr( aNotice.stream() );
3308 aNotice.head();
3309 insert( lStr , aArg0 );
3310 insert( lStr , aArg1 );
3311 insert( lStr , aArg2 );
3312 insert( lStr , aArg3 );
3313 insert( lStr , aArg4 );
3314 insert( lStr , aArg5 );
3315 insert( lStr , aArg6 );
3316 insert( lStr , aArg7 );
3317 insert( lStr , aArg8 );
3318 insert( lStr , aArg9 );
3319 insert( lStr , aArg10 );
3320 aNotice.tail();
3321 }
3322 #endif
3323 #endif
3324 #endif
3325 #endif
3326}
3327
3328template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 >
3329void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 )
3330{
3331 #ifndef LOGGING_EXCLUDE_FATAL
3332 #ifndef LOGGING_EXCLUDE_ERROR
3333 #ifndef LOGGING_EXCLUDE_WARNING
3334 #ifndef LOGGING_EXCLUDE_NOTICE
3335 if( LoggingIncludes( aNotice ) ){
3336 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3337 std::ostream& lStr( aNotice.stream() );
3338 aNotice.head();
3339 insert( lStr , aArg0 );
3340 insert( lStr , aArg1 );
3341 insert( lStr , aArg2 );
3342 insert( lStr , aArg3 );
3343 insert( lStr , aArg4 );
3344 insert( lStr , aArg5 );
3345 insert( lStr , aArg6 );
3346 insert( lStr , aArg7 );
3347 insert( lStr , aArg8 );
3348 insert( lStr , aArg9 );
3349 insert( lStr , aArg10 );
3350 insert( lStr , aArg11 );
3351 aNotice.tail();
3352 }
3353 #endif
3354 #endif
3355 #endif
3356 #endif
3357}
3358
3359template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 >
3360void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 )
3361{
3362 #ifndef LOGGING_EXCLUDE_FATAL
3363 #ifndef LOGGING_EXCLUDE_ERROR
3364 #ifndef LOGGING_EXCLUDE_WARNING
3365 #ifndef LOGGING_EXCLUDE_NOTICE
3366 if( LoggingIncludes( aNotice ) ){
3367 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3368 std::ostream& lStr( aNotice.stream() );
3369 aNotice.head();
3370 insert( lStr , aArg0 );
3371 insert( lStr , aArg1 );
3372 insert( lStr , aArg2 );
3373 insert( lStr , aArg3 );
3374 insert( lStr , aArg4 );
3375 insert( lStr , aArg5 );
3376 insert( lStr , aArg6 );
3377 insert( lStr , aArg7 );
3378 insert( lStr , aArg8 );
3379 insert( lStr , aArg9 );
3380 insert( lStr , aArg10 );
3381 insert( lStr , aArg11 );
3382 insert( lStr , aArg12 );
3383 aNotice.tail();
3384 }
3385 #endif
3386 #endif
3387 #endif
3388 #endif
3389}
3390
3391template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 >
3392void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 )
3393{
3394 #ifndef LOGGING_EXCLUDE_FATAL
3395 #ifndef LOGGING_EXCLUDE_ERROR
3396 #ifndef LOGGING_EXCLUDE_WARNING
3397 #ifndef LOGGING_EXCLUDE_NOTICE
3398 if( LoggingIncludes( aNotice ) ){
3399 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3400 std::ostream& lStr( aNotice.stream() );
3401 aNotice.head();
3402 insert( lStr , aArg0 );
3403 insert( lStr , aArg1 );
3404 insert( lStr , aArg2 );
3405 insert( lStr , aArg3 );
3406 insert( lStr , aArg4 );
3407 insert( lStr , aArg5 );
3408 insert( lStr , aArg6 );
3409 insert( lStr , aArg7 );
3410 insert( lStr , aArg8 );
3411 insert( lStr , aArg9 );
3412 insert( lStr , aArg10 );
3413 insert( lStr , aArg11 );
3414 insert( lStr , aArg12 );
3415 insert( lStr , aArg13 );
3416 aNotice.tail();
3417 }
3418 #endif
3419 #endif
3420 #endif
3421 #endif
3422}
3423
3424template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 >
3425void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 )
3426{
3427 #ifndef LOGGING_EXCLUDE_FATAL
3428 #ifndef LOGGING_EXCLUDE_ERROR
3429 #ifndef LOGGING_EXCLUDE_WARNING
3430 #ifndef LOGGING_EXCLUDE_NOTICE
3431 if( LoggingIncludes( aNotice ) ){
3432 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3433 std::ostream& lStr( aNotice.stream() );
3434 aNotice.head();
3435 insert( lStr , aArg0 );
3436 insert( lStr , aArg1 );
3437 insert( lStr , aArg2 );
3438 insert( lStr , aArg3 );
3439 insert( lStr , aArg4 );
3440 insert( lStr , aArg5 );
3441 insert( lStr , aArg6 );
3442 insert( lStr , aArg7 );
3443 insert( lStr , aArg8 );
3444 insert( lStr , aArg9 );
3445 insert( lStr , aArg10 );
3446 insert( lStr , aArg11 );
3447 insert( lStr , aArg12 );
3448 insert( lStr , aArg13 );
3449 insert( lStr , aArg14 );
3450 aNotice.tail();
3451 }
3452 #endif
3453 #endif
3454 #endif
3455 #endif
3456}
3457
3458template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 >
3459void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 )
3460{
3461 #ifndef LOGGING_EXCLUDE_FATAL
3462 #ifndef LOGGING_EXCLUDE_ERROR
3463 #ifndef LOGGING_EXCLUDE_WARNING
3464 #ifndef LOGGING_EXCLUDE_NOTICE
3465 if( LoggingIncludes( aNotice ) ){
3466 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3467 std::ostream& lStr( aNotice.stream() );
3468 aNotice.head();
3469 insert( lStr , aArg0 );
3470 insert( lStr , aArg1 );
3471 insert( lStr , aArg2 );
3472 insert( lStr , aArg3 );
3473 insert( lStr , aArg4 );
3474 insert( lStr , aArg5 );
3475 insert( lStr , aArg6 );
3476 insert( lStr , aArg7 );
3477 insert( lStr , aArg8 );
3478 insert( lStr , aArg9 );
3479 insert( lStr , aArg10 );
3480 insert( lStr , aArg11 );
3481 insert( lStr , aArg12 );
3482 insert( lStr , aArg13 );
3483 insert( lStr , aArg14 );
3484 insert( lStr , aArg15 );
3485 aNotice.tail();
3486 }
3487 #endif
3488 #endif
3489 #endif
3490 #endif
3491}
3492
3493template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 >
3494void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 )
3495{
3496 #ifndef LOGGING_EXCLUDE_FATAL
3497 #ifndef LOGGING_EXCLUDE_ERROR
3498 #ifndef LOGGING_EXCLUDE_WARNING
3499 #ifndef LOGGING_EXCLUDE_NOTICE
3500 if( LoggingIncludes( aNotice ) ){
3501 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3502 std::ostream& lStr( aNotice.stream() );
3503 aNotice.head();
3504 insert( lStr , aArg0 );
3505 insert( lStr , aArg1 );
3506 insert( lStr , aArg2 );
3507 insert( lStr , aArg3 );
3508 insert( lStr , aArg4 );
3509 insert( lStr , aArg5 );
3510 insert( lStr , aArg6 );
3511 insert( lStr , aArg7 );
3512 insert( lStr , aArg8 );
3513 insert( lStr , aArg9 );
3514 insert( lStr , aArg10 );
3515 insert( lStr , aArg11 );
3516 insert( lStr , aArg12 );
3517 insert( lStr , aArg13 );
3518 insert( lStr , aArg14 );
3519 insert( lStr , aArg15 );
3520 insert( lStr , aArg16 );
3521 aNotice.tail();
3522 }
3523 #endif
3524 #endif
3525 #endif
3526 #endif
3527}
3528
3529template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 >
3530void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 )
3531{
3532 #ifndef LOGGING_EXCLUDE_FATAL
3533 #ifndef LOGGING_EXCLUDE_ERROR
3534 #ifndef LOGGING_EXCLUDE_WARNING
3535 #ifndef LOGGING_EXCLUDE_NOTICE
3536 if( LoggingIncludes( aNotice ) ){
3537 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3538 std::ostream& lStr( aNotice.stream() );
3539 aNotice.head();
3540 insert( lStr , aArg0 );
3541 insert( lStr , aArg1 );
3542 insert( lStr , aArg2 );
3543 insert( lStr , aArg3 );
3544 insert( lStr , aArg4 );
3545 insert( lStr , aArg5 );
3546 insert( lStr , aArg6 );
3547 insert( lStr , aArg7 );
3548 insert( lStr , aArg8 );
3549 insert( lStr , aArg9 );
3550 insert( lStr , aArg10 );
3551 insert( lStr , aArg11 );
3552 insert( lStr , aArg12 );
3553 insert( lStr , aArg13 );
3554 insert( lStr , aArg14 );
3555 insert( lStr , aArg15 );
3556 insert( lStr , aArg16 );
3557 insert( lStr , aArg17 );
3558 aNotice.tail();
3559 }
3560 #endif
3561 #endif
3562 #endif
3563 #endif
3564}
3565
3566template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 >
3567void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 )
3568{
3569 #ifndef LOGGING_EXCLUDE_FATAL
3570 #ifndef LOGGING_EXCLUDE_ERROR
3571 #ifndef LOGGING_EXCLUDE_WARNING
3572 #ifndef LOGGING_EXCLUDE_NOTICE
3573 if( LoggingIncludes( aNotice ) ){
3574 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3575 std::ostream& lStr( aNotice.stream() );
3576 aNotice.head();
3577 insert( lStr , aArg0 );
3578 insert( lStr , aArg1 );
3579 insert( lStr , aArg2 );
3580 insert( lStr , aArg3 );
3581 insert( lStr , aArg4 );
3582 insert( lStr , aArg5 );
3583 insert( lStr , aArg6 );
3584 insert( lStr , aArg7 );
3585 insert( lStr , aArg8 );
3586 insert( lStr , aArg9 );
3587 insert( lStr , aArg10 );
3588 insert( lStr , aArg11 );
3589 insert( lStr , aArg12 );
3590 insert( lStr , aArg13 );
3591 insert( lStr , aArg14 );
3592 insert( lStr , aArg15 );
3593 insert( lStr , aArg16 );
3594 insert( lStr , aArg17 );
3595 insert( lStr , aArg18 );
3596 aNotice.tail();
3597 }
3598 #endif
3599 #endif
3600 #endif
3601 #endif
3602}
3603
3604template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 >
3605void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 )
3606{
3607 #ifndef LOGGING_EXCLUDE_FATAL
3608 #ifndef LOGGING_EXCLUDE_ERROR
3609 #ifndef LOGGING_EXCLUDE_WARNING
3610 #ifndef LOGGING_EXCLUDE_NOTICE
3611 if( LoggingIncludes( aNotice ) ){
3612 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3613 std::ostream& lStr( aNotice.stream() );
3614 aNotice.head();
3615 insert( lStr , aArg0 );
3616 insert( lStr , aArg1 );
3617 insert( lStr , aArg2 );
3618 insert( lStr , aArg3 );
3619 insert( lStr , aArg4 );
3620 insert( lStr , aArg5 );
3621 insert( lStr , aArg6 );
3622 insert( lStr , aArg7 );
3623 insert( lStr , aArg8 );
3624 insert( lStr , aArg9 );
3625 insert( lStr , aArg10 );
3626 insert( lStr , aArg11 );
3627 insert( lStr , aArg12 );
3628 insert( lStr , aArg13 );
3629 insert( lStr , aArg14 );
3630 insert( lStr , aArg15 );
3631 insert( lStr , aArg16 );
3632 insert( lStr , aArg17 );
3633 insert( lStr , aArg18 );
3634 insert( lStr , aArg19 );
3635 aNotice.tail();
3636 }
3637 #endif
3638 #endif
3639 #endif
3640 #endif
3641}
3642
3643template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 >
3644void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 )
3645{
3646 #ifndef LOGGING_EXCLUDE_FATAL
3647 #ifndef LOGGING_EXCLUDE_ERROR
3648 #ifndef LOGGING_EXCLUDE_WARNING
3649 #ifndef LOGGING_EXCLUDE_NOTICE
3650 if( LoggingIncludes( aNotice ) ){
3651 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3652 std::ostream& lStr( aNotice.stream() );
3653 aNotice.head();
3654 insert( lStr , aArg0 );
3655 insert( lStr , aArg1 );
3656 insert( lStr , aArg2 );
3657 insert( lStr , aArg3 );
3658 insert( lStr , aArg4 );
3659 insert( lStr , aArg5 );
3660 insert( lStr , aArg6 );
3661 insert( lStr , aArg7 );
3662 insert( lStr , aArg8 );
3663 insert( lStr , aArg9 );
3664 insert( lStr , aArg10 );
3665 insert( lStr , aArg11 );
3666 insert( lStr , aArg12 );
3667 insert( lStr , aArg13 );
3668 insert( lStr , aArg14 );
3669 insert( lStr , aArg15 );
3670 insert( lStr , aArg16 );
3671 insert( lStr , aArg17 );
3672 insert( lStr , aArg18 );
3673 insert( lStr , aArg19 );
3674 insert( lStr , aArg20 );
3675 aNotice.tail();
3676 }
3677 #endif
3678 #endif
3679 #endif
3680 #endif
3681}
3682
3683template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 >
3684void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 )
3685{
3686 #ifndef LOGGING_EXCLUDE_FATAL
3687 #ifndef LOGGING_EXCLUDE_ERROR
3688 #ifndef LOGGING_EXCLUDE_WARNING
3689 #ifndef LOGGING_EXCLUDE_NOTICE
3690 if( LoggingIncludes( aNotice ) ){
3691 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3692 std::ostream& lStr( aNotice.stream() );
3693 aNotice.head();
3694 insert( lStr , aArg0 );
3695 insert( lStr , aArg1 );
3696 insert( lStr , aArg2 );
3697 insert( lStr , aArg3 );
3698 insert( lStr , aArg4 );
3699 insert( lStr , aArg5 );
3700 insert( lStr , aArg6 );
3701 insert( lStr , aArg7 );
3702 insert( lStr , aArg8 );
3703 insert( lStr , aArg9 );
3704 insert( lStr , aArg10 );
3705 insert( lStr , aArg11 );
3706 insert( lStr , aArg12 );
3707 insert( lStr , aArg13 );
3708 insert( lStr , aArg14 );
3709 insert( lStr , aArg15 );
3710 insert( lStr , aArg16 );
3711 insert( lStr , aArg17 );
3712 insert( lStr , aArg18 );
3713 insert( lStr , aArg19 );
3714 insert( lStr , aArg20 );
3715 insert( lStr , aArg21 );
3716 aNotice.tail();
3717 }
3718 #endif
3719 #endif
3720 #endif
3721 #endif
3722}
3723
3724template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 >
3725void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 )
3726{
3727 #ifndef LOGGING_EXCLUDE_FATAL
3728 #ifndef LOGGING_EXCLUDE_ERROR
3729 #ifndef LOGGING_EXCLUDE_WARNING
3730 #ifndef LOGGING_EXCLUDE_NOTICE
3731 if( LoggingIncludes( aNotice ) ){
3732 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3733 std::ostream& lStr( aNotice.stream() );
3734 aNotice.head();
3735 insert( lStr , aArg0 );
3736 insert( lStr , aArg1 );
3737 insert( lStr , aArg2 );
3738 insert( lStr , aArg3 );
3739 insert( lStr , aArg4 );
3740 insert( lStr , aArg5 );
3741 insert( lStr , aArg6 );
3742 insert( lStr , aArg7 );
3743 insert( lStr , aArg8 );
3744 insert( lStr , aArg9 );
3745 insert( lStr , aArg10 );
3746 insert( lStr , aArg11 );
3747 insert( lStr , aArg12 );
3748 insert( lStr , aArg13 );
3749 insert( lStr , aArg14 );
3750 insert( lStr , aArg15 );
3751 insert( lStr , aArg16 );
3752 insert( lStr , aArg17 );
3753 insert( lStr , aArg18 );
3754 insert( lStr , aArg19 );
3755 insert( lStr , aArg20 );
3756 insert( lStr , aArg21 );
3757 insert( lStr , aArg22 );
3758 aNotice.tail();
3759 }
3760 #endif
3761 #endif
3762 #endif
3763 #endif
3764}
3765
3766template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 >
3767void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 )
3768{
3769 #ifndef LOGGING_EXCLUDE_FATAL
3770 #ifndef LOGGING_EXCLUDE_ERROR
3771 #ifndef LOGGING_EXCLUDE_WARNING
3772 #ifndef LOGGING_EXCLUDE_NOTICE
3773 if( LoggingIncludes( aNotice ) ){
3774 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3775 std::ostream& lStr( aNotice.stream() );
3776 aNotice.head();
3777 insert( lStr , aArg0 );
3778 insert( lStr , aArg1 );
3779 insert( lStr , aArg2 );
3780 insert( lStr , aArg3 );
3781 insert( lStr , aArg4 );
3782 insert( lStr , aArg5 );
3783 insert( lStr , aArg6 );
3784 insert( lStr , aArg7 );
3785 insert( lStr , aArg8 );
3786 insert( lStr , aArg9 );
3787 insert( lStr , aArg10 );
3788 insert( lStr , aArg11 );
3789 insert( lStr , aArg12 );
3790 insert( lStr , aArg13 );
3791 insert( lStr , aArg14 );
3792 insert( lStr , aArg15 );
3793 insert( lStr , aArg16 );
3794 insert( lStr , aArg17 );
3795 insert( lStr , aArg18 );
3796 insert( lStr , aArg19 );
3797 insert( lStr , aArg20 );
3798 insert( lStr , aArg21 );
3799 insert( lStr , aArg22 );
3800 insert( lStr , aArg23 );
3801 aNotice.tail();
3802 }
3803 #endif
3804 #endif
3805 #endif
3806 #endif
3807}
3808
3809template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 >
3810void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 )
3811{
3812 #ifndef LOGGING_EXCLUDE_FATAL
3813 #ifndef LOGGING_EXCLUDE_ERROR
3814 #ifndef LOGGING_EXCLUDE_WARNING
3815 #ifndef LOGGING_EXCLUDE_NOTICE
3816 if( LoggingIncludes( aNotice ) ){
3817 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3818 std::ostream& lStr( aNotice.stream() );
3819 aNotice.head();
3820 insert( lStr , aArg0 );
3821 insert( lStr , aArg1 );
3822 insert( lStr , aArg2 );
3823 insert( lStr , aArg3 );
3824 insert( lStr , aArg4 );
3825 insert( lStr , aArg5 );
3826 insert( lStr , aArg6 );
3827 insert( lStr , aArg7 );
3828 insert( lStr , aArg8 );
3829 insert( lStr , aArg9 );
3830 insert( lStr , aArg10 );
3831 insert( lStr , aArg11 );
3832 insert( lStr , aArg12 );
3833 insert( lStr , aArg13 );
3834 insert( lStr , aArg14 );
3835 insert( lStr , aArg15 );
3836 insert( lStr , aArg16 );
3837 insert( lStr , aArg17 );
3838 insert( lStr , aArg18 );
3839 insert( lStr , aArg19 );
3840 insert( lStr , aArg20 );
3841 insert( lStr , aArg21 );
3842 insert( lStr , aArg22 );
3843 insert( lStr , aArg23 );
3844 insert( lStr , aArg24 );
3845 aNotice.tail();
3846 }
3847 #endif
3848 #endif
3849 #endif
3850 #endif
3851}
3852
3853template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 >
3854void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 )
3855{
3856 #ifndef LOGGING_EXCLUDE_FATAL
3857 #ifndef LOGGING_EXCLUDE_ERROR
3858 #ifndef LOGGING_EXCLUDE_WARNING
3859 #ifndef LOGGING_EXCLUDE_NOTICE
3860 if( LoggingIncludes( aNotice ) ){
3861 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3862 std::ostream& lStr( aNotice.stream() );
3863 aNotice.head();
3864 insert( lStr , aArg0 );
3865 insert( lStr , aArg1 );
3866 insert( lStr , aArg2 );
3867 insert( lStr , aArg3 );
3868 insert( lStr , aArg4 );
3869 insert( lStr , aArg5 );
3870 insert( lStr , aArg6 );
3871 insert( lStr , aArg7 );
3872 insert( lStr , aArg8 );
3873 insert( lStr , aArg9 );
3874 insert( lStr , aArg10 );
3875 insert( lStr , aArg11 );
3876 insert( lStr , aArg12 );
3877 insert( lStr , aArg13 );
3878 insert( lStr , aArg14 );
3879 insert( lStr , aArg15 );
3880 insert( lStr , aArg16 );
3881 insert( lStr , aArg17 );
3882 insert( lStr , aArg18 );
3883 insert( lStr , aArg19 );
3884 insert( lStr , aArg20 );
3885 insert( lStr , aArg21 );
3886 insert( lStr , aArg22 );
3887 insert( lStr , aArg23 );
3888 insert( lStr , aArg24 );
3889 insert( lStr , aArg25 );
3890 aNotice.tail();
3891 }
3892 #endif
3893 #endif
3894 #endif
3895 #endif
3896}
3897
3898template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 >
3899void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 )
3900{
3901 #ifndef LOGGING_EXCLUDE_FATAL
3902 #ifndef LOGGING_EXCLUDE_ERROR
3903 #ifndef LOGGING_EXCLUDE_WARNING
3904 #ifndef LOGGING_EXCLUDE_NOTICE
3905 if( LoggingIncludes( aNotice ) ){
3906 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3907 std::ostream& lStr( aNotice.stream() );
3908 aNotice.head();
3909 insert( lStr , aArg0 );
3910 insert( lStr , aArg1 );
3911 insert( lStr , aArg2 );
3912 insert( lStr , aArg3 );
3913 insert( lStr , aArg4 );
3914 insert( lStr , aArg5 );
3915 insert( lStr , aArg6 );
3916 insert( lStr , aArg7 );
3917 insert( lStr , aArg8 );
3918 insert( lStr , aArg9 );
3919 insert( lStr , aArg10 );
3920 insert( lStr , aArg11 );
3921 insert( lStr , aArg12 );
3922 insert( lStr , aArg13 );
3923 insert( lStr , aArg14 );
3924 insert( lStr , aArg15 );
3925 insert( lStr , aArg16 );
3926 insert( lStr , aArg17 );
3927 insert( lStr , aArg18 );
3928 insert( lStr , aArg19 );
3929 insert( lStr , aArg20 );
3930 insert( lStr , aArg21 );
3931 insert( lStr , aArg22 );
3932 insert( lStr , aArg23 );
3933 insert( lStr , aArg24 );
3934 insert( lStr , aArg25 );
3935 insert( lStr , aArg26 );
3936 aNotice.tail();
3937 }
3938 #endif
3939 #endif
3940 #endif
3941 #endif
3942}
3943
3944template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 >
3945void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 )
3946{
3947 #ifndef LOGGING_EXCLUDE_FATAL
3948 #ifndef LOGGING_EXCLUDE_ERROR
3949 #ifndef LOGGING_EXCLUDE_WARNING
3950 #ifndef LOGGING_EXCLUDE_NOTICE
3951 if( LoggingIncludes( aNotice ) ){
3952 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
3953 std::ostream& lStr( aNotice.stream() );
3954 aNotice.head();
3955 insert( lStr , aArg0 );
3956 insert( lStr , aArg1 );
3957 insert( lStr , aArg2 );
3958 insert( lStr , aArg3 );
3959 insert( lStr , aArg4 );
3960 insert( lStr , aArg5 );
3961 insert( lStr , aArg6 );
3962 insert( lStr , aArg7 );
3963 insert( lStr , aArg8 );
3964 insert( lStr , aArg9 );
3965 insert( lStr , aArg10 );
3966 insert( lStr , aArg11 );
3967 insert( lStr , aArg12 );
3968 insert( lStr , aArg13 );
3969 insert( lStr , aArg14 );
3970 insert( lStr , aArg15 );
3971 insert( lStr , aArg16 );
3972 insert( lStr , aArg17 );
3973 insert( lStr , aArg18 );
3974 insert( lStr , aArg19 );
3975 insert( lStr , aArg20 );
3976 insert( lStr , aArg21 );
3977 insert( lStr , aArg22 );
3978 insert( lStr , aArg23 );
3979 insert( lStr , aArg24 );
3980 insert( lStr , aArg25 );
3981 insert( lStr , aArg26 );
3982 insert( lStr , aArg27 );
3983 aNotice.tail();
3984 }
3985 #endif
3986 #endif
3987 #endif
3988 #endif
3989}
3990
3991template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 >
3992void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 )
3993{
3994 #ifndef LOGGING_EXCLUDE_FATAL
3995 #ifndef LOGGING_EXCLUDE_ERROR
3996 #ifndef LOGGING_EXCLUDE_WARNING
3997 #ifndef LOGGING_EXCLUDE_NOTICE
3998 if( LoggingIncludes( aNotice ) ){
3999 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4000 std::ostream& lStr( aNotice.stream() );
4001 aNotice.head();
4002 insert( lStr , aArg0 );
4003 insert( lStr , aArg1 );
4004 insert( lStr , aArg2 );
4005 insert( lStr , aArg3 );
4006 insert( lStr , aArg4 );
4007 insert( lStr , aArg5 );
4008 insert( lStr , aArg6 );
4009 insert( lStr , aArg7 );
4010 insert( lStr , aArg8 );
4011 insert( lStr , aArg9 );
4012 insert( lStr , aArg10 );
4013 insert( lStr , aArg11 );
4014 insert( lStr , aArg12 );
4015 insert( lStr , aArg13 );
4016 insert( lStr , aArg14 );
4017 insert( lStr , aArg15 );
4018 insert( lStr , aArg16 );
4019 insert( lStr , aArg17 );
4020 insert( lStr , aArg18 );
4021 insert( lStr , aArg19 );
4022 insert( lStr , aArg20 );
4023 insert( lStr , aArg21 );
4024 insert( lStr , aArg22 );
4025 insert( lStr , aArg23 );
4026 insert( lStr , aArg24 );
4027 insert( lStr , aArg25 );
4028 insert( lStr , aArg26 );
4029 insert( lStr , aArg27 );
4030 insert( lStr , aArg28 );
4031 aNotice.tail();
4032 }
4033 #endif
4034 #endif
4035 #endif
4036 #endif
4037}
4038
4039template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 >
4040void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 )
4041{
4042 #ifndef LOGGING_EXCLUDE_FATAL
4043 #ifndef LOGGING_EXCLUDE_ERROR
4044 #ifndef LOGGING_EXCLUDE_WARNING
4045 #ifndef LOGGING_EXCLUDE_NOTICE
4046 if( LoggingIncludes( aNotice ) ){
4047 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4048 std::ostream& lStr( aNotice.stream() );
4049 aNotice.head();
4050 insert( lStr , aArg0 );
4051 insert( lStr , aArg1 );
4052 insert( lStr , aArg2 );
4053 insert( lStr , aArg3 );
4054 insert( lStr , aArg4 );
4055 insert( lStr , aArg5 );
4056 insert( lStr , aArg6 );
4057 insert( lStr , aArg7 );
4058 insert( lStr , aArg8 );
4059 insert( lStr , aArg9 );
4060 insert( lStr , aArg10 );
4061 insert( lStr , aArg11 );
4062 insert( lStr , aArg12 );
4063 insert( lStr , aArg13 );
4064 insert( lStr , aArg14 );
4065 insert( lStr , aArg15 );
4066 insert( lStr , aArg16 );
4067 insert( lStr , aArg17 );
4068 insert( lStr , aArg18 );
4069 insert( lStr , aArg19 );
4070 insert( lStr , aArg20 );
4071 insert( lStr , aArg21 );
4072 insert( lStr , aArg22 );
4073 insert( lStr , aArg23 );
4074 insert( lStr , aArg24 );
4075 insert( lStr , aArg25 );
4076 insert( lStr , aArg26 );
4077 insert( lStr , aArg27 );
4078 insert( lStr , aArg28 );
4079 insert( lStr , aArg29 );
4080 aNotice.tail();
4081 }
4082 #endif
4083 #endif
4084 #endif
4085 #endif
4086}
4087
4088template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 >
4089void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 )
4090{
4091 #ifndef LOGGING_EXCLUDE_FATAL
4092 #ifndef LOGGING_EXCLUDE_ERROR
4093 #ifndef LOGGING_EXCLUDE_WARNING
4094 #ifndef LOGGING_EXCLUDE_NOTICE
4095 if( LoggingIncludes( aNotice ) ){
4096 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4097 std::ostream& lStr( aNotice.stream() );
4098 aNotice.head();
4099 insert( lStr , aArg0 );
4100 insert( lStr , aArg1 );
4101 insert( lStr , aArg2 );
4102 insert( lStr , aArg3 );
4103 insert( lStr , aArg4 );
4104 insert( lStr , aArg5 );
4105 insert( lStr , aArg6 );
4106 insert( lStr , aArg7 );
4107 insert( lStr , aArg8 );
4108 insert( lStr , aArg9 );
4109 insert( lStr , aArg10 );
4110 insert( lStr , aArg11 );
4111 insert( lStr , aArg12 );
4112 insert( lStr , aArg13 );
4113 insert( lStr , aArg14 );
4114 insert( lStr , aArg15 );
4115 insert( lStr , aArg16 );
4116 insert( lStr , aArg17 );
4117 insert( lStr , aArg18 );
4118 insert( lStr , aArg19 );
4119 insert( lStr , aArg20 );
4120 insert( lStr , aArg21 );
4121 insert( lStr , aArg22 );
4122 insert( lStr , aArg23 );
4123 insert( lStr , aArg24 );
4124 insert( lStr , aArg25 );
4125 insert( lStr , aArg26 );
4126 insert( lStr , aArg27 );
4127 insert( lStr , aArg28 );
4128 insert( lStr , aArg29 );
4129 insert( lStr , aArg30 );
4130 aNotice.tail();
4131 }
4132 #endif
4133 #endif
4134 #endif
4135 #endif
4136}
4137
4138template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 , typename T31 >
4139void log ( NoticeLevel& aNotice , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 , const T31& aArg31 )
4140{
4141 #ifndef LOGGING_EXCLUDE_FATAL
4142 #ifndef LOGGING_EXCLUDE_ERROR
4143 #ifndef LOGGING_EXCLUDE_WARNING
4144 #ifndef LOGGING_EXCLUDE_NOTICE
4145 if( LoggingIncludes( aNotice ) ){
4146 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4147 std::ostream& lStr( aNotice.stream() );
4148 aNotice.head();
4149 insert( lStr , aArg0 );
4150 insert( lStr , aArg1 );
4151 insert( lStr , aArg2 );
4152 insert( lStr , aArg3 );
4153 insert( lStr , aArg4 );
4154 insert( lStr , aArg5 );
4155 insert( lStr , aArg6 );
4156 insert( lStr , aArg7 );
4157 insert( lStr , aArg8 );
4158 insert( lStr , aArg9 );
4159 insert( lStr , aArg10 );
4160 insert( lStr , aArg11 );
4161 insert( lStr , aArg12 );
4162 insert( lStr , aArg13 );
4163 insert( lStr , aArg14 );
4164 insert( lStr , aArg15 );
4165 insert( lStr , aArg16 );
4166 insert( lStr , aArg17 );
4167 insert( lStr , aArg18 );
4168 insert( lStr , aArg19 );
4169 insert( lStr , aArg20 );
4170 insert( lStr , aArg21 );
4171 insert( lStr , aArg22 );
4172 insert( lStr , aArg23 );
4173 insert( lStr , aArg24 );
4174 insert( lStr , aArg25 );
4175 insert( lStr , aArg26 );
4176 insert( lStr , aArg27 );
4177 insert( lStr , aArg28 );
4178 insert( lStr , aArg29 );
4179 insert( lStr , aArg30 );
4180 insert( lStr , aArg31 );
4181 aNotice.tail();
4182 }
4183 #endif
4184 #endif
4185 #endif
4186 #endif
4187}
4188
4189// ======================================================================================================================================================
4190// WARNING! This file is automatically generated! Do not modify it! Any changes will be overwritten!
4191// ======================================================================================================================================================
4192
4193template< typename T0 >
4194void log ( InfoLevel& aInfo , const T0& aArg0 )
4195{
4196 #ifndef LOGGING_EXCLUDE_FATAL
4197 #ifndef LOGGING_EXCLUDE_ERROR
4198 #ifndef LOGGING_EXCLUDE_WARNING
4199 #ifndef LOGGING_EXCLUDE_NOTICE
4200 #ifndef LOGGING_EXCLUDE_INFO
4201 if( LoggingIncludes( aInfo ) ){
4202 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4203 std::ostream& lStr( aInfo.stream() );
4204 aInfo.head();
4205 insert( lStr , aArg0 );
4206 aInfo.tail();
4207 }
4208 #endif
4209 #endif
4210 #endif
4211 #endif
4212 #endif
4213}
4214
4215template< typename T0 , typename T1 >
4216void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 )
4217{
4218 #ifndef LOGGING_EXCLUDE_FATAL
4219 #ifndef LOGGING_EXCLUDE_ERROR
4220 #ifndef LOGGING_EXCLUDE_WARNING
4221 #ifndef LOGGING_EXCLUDE_NOTICE
4222 #ifndef LOGGING_EXCLUDE_INFO
4223 if( LoggingIncludes( aInfo ) ){
4224 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4225 std::ostream& lStr( aInfo.stream() );
4226 aInfo.head();
4227 insert( lStr , aArg0 );
4228 insert( lStr , aArg1 );
4229 aInfo.tail();
4230 }
4231 #endif
4232 #endif
4233 #endif
4234 #endif
4235 #endif
4236}
4237
4238template< typename T0 , typename T1 , typename T2 >
4239void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 )
4240{
4241 #ifndef LOGGING_EXCLUDE_FATAL
4242 #ifndef LOGGING_EXCLUDE_ERROR
4243 #ifndef LOGGING_EXCLUDE_WARNING
4244 #ifndef LOGGING_EXCLUDE_NOTICE
4245 #ifndef LOGGING_EXCLUDE_INFO
4246 if( LoggingIncludes( aInfo ) ){
4247 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4248 std::ostream& lStr( aInfo.stream() );
4249 aInfo.head();
4250 insert( lStr , aArg0 );
4251 insert( lStr , aArg1 );
4252 insert( lStr , aArg2 );
4253 aInfo.tail();
4254 }
4255 #endif
4256 #endif
4257 #endif
4258 #endif
4259 #endif
4260}
4261
4262template< typename T0 , typename T1 , typename T2 , typename T3 >
4263void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 )
4264{
4265 #ifndef LOGGING_EXCLUDE_FATAL
4266 #ifndef LOGGING_EXCLUDE_ERROR
4267 #ifndef LOGGING_EXCLUDE_WARNING
4268 #ifndef LOGGING_EXCLUDE_NOTICE
4269 #ifndef LOGGING_EXCLUDE_INFO
4270 if( LoggingIncludes( aInfo ) ){
4271 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4272 std::ostream& lStr( aInfo.stream() );
4273 aInfo.head();
4274 insert( lStr , aArg0 );
4275 insert( lStr , aArg1 );
4276 insert( lStr , aArg2 );
4277 insert( lStr , aArg3 );
4278 aInfo.tail();
4279 }
4280 #endif
4281 #endif
4282 #endif
4283 #endif
4284 #endif
4285}
4286
4287template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
4288void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 )
4289{
4290 #ifndef LOGGING_EXCLUDE_FATAL
4291 #ifndef LOGGING_EXCLUDE_ERROR
4292 #ifndef LOGGING_EXCLUDE_WARNING
4293 #ifndef LOGGING_EXCLUDE_NOTICE
4294 #ifndef LOGGING_EXCLUDE_INFO
4295 if( LoggingIncludes( aInfo ) ){
4296 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4297 std::ostream& lStr( aInfo.stream() );
4298 aInfo.head();
4299 insert( lStr , aArg0 );
4300 insert( lStr , aArg1 );
4301 insert( lStr , aArg2 );
4302 insert( lStr , aArg3 );
4303 insert( lStr , aArg4 );
4304 aInfo.tail();
4305 }
4306 #endif
4307 #endif
4308 #endif
4309 #endif
4310 #endif
4311}
4312
4313template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
4314void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 )
4315{
4316 #ifndef LOGGING_EXCLUDE_FATAL
4317 #ifndef LOGGING_EXCLUDE_ERROR
4318 #ifndef LOGGING_EXCLUDE_WARNING
4319 #ifndef LOGGING_EXCLUDE_NOTICE
4320 #ifndef LOGGING_EXCLUDE_INFO
4321 if( LoggingIncludes( aInfo ) ){
4322 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4323 std::ostream& lStr( aInfo.stream() );
4324 aInfo.head();
4325 insert( lStr , aArg0 );
4326 insert( lStr , aArg1 );
4327 insert( lStr , aArg2 );
4328 insert( lStr , aArg3 );
4329 insert( lStr , aArg4 );
4330 insert( lStr , aArg5 );
4331 aInfo.tail();
4332 }
4333 #endif
4334 #endif
4335 #endif
4336 #endif
4337 #endif
4338}
4339
4340template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
4341void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 )
4342{
4343 #ifndef LOGGING_EXCLUDE_FATAL
4344 #ifndef LOGGING_EXCLUDE_ERROR
4345 #ifndef LOGGING_EXCLUDE_WARNING
4346 #ifndef LOGGING_EXCLUDE_NOTICE
4347 #ifndef LOGGING_EXCLUDE_INFO
4348 if( LoggingIncludes( aInfo ) ){
4349 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4350 std::ostream& lStr( aInfo.stream() );
4351 aInfo.head();
4352 insert( lStr , aArg0 );
4353 insert( lStr , aArg1 );
4354 insert( lStr , aArg2 );
4355 insert( lStr , aArg3 );
4356 insert( lStr , aArg4 );
4357 insert( lStr , aArg5 );
4358 insert( lStr , aArg6 );
4359 aInfo.tail();
4360 }
4361 #endif
4362 #endif
4363 #endif
4364 #endif
4365 #endif
4366}
4367
4368template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
4369void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 )
4370{
4371 #ifndef LOGGING_EXCLUDE_FATAL
4372 #ifndef LOGGING_EXCLUDE_ERROR
4373 #ifndef LOGGING_EXCLUDE_WARNING
4374 #ifndef LOGGING_EXCLUDE_NOTICE
4375 #ifndef LOGGING_EXCLUDE_INFO
4376 if( LoggingIncludes( aInfo ) ){
4377 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4378 std::ostream& lStr( aInfo.stream() );
4379 aInfo.head();
4380 insert( lStr , aArg0 );
4381 insert( lStr , aArg1 );
4382 insert( lStr , aArg2 );
4383 insert( lStr , aArg3 );
4384 insert( lStr , aArg4 );
4385 insert( lStr , aArg5 );
4386 insert( lStr , aArg6 );
4387 insert( lStr , aArg7 );
4388 aInfo.tail();
4389 }
4390 #endif
4391 #endif
4392 #endif
4393 #endif
4394 #endif
4395}
4396
4397template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
4398void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 )
4399{
4400 #ifndef LOGGING_EXCLUDE_FATAL
4401 #ifndef LOGGING_EXCLUDE_ERROR
4402 #ifndef LOGGING_EXCLUDE_WARNING
4403 #ifndef LOGGING_EXCLUDE_NOTICE
4404 #ifndef LOGGING_EXCLUDE_INFO
4405 if( LoggingIncludes( aInfo ) ){
4406 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4407 std::ostream& lStr( aInfo.stream() );
4408 aInfo.head();
4409 insert( lStr , aArg0 );
4410 insert( lStr , aArg1 );
4411 insert( lStr , aArg2 );
4412 insert( lStr , aArg3 );
4413 insert( lStr , aArg4 );
4414 insert( lStr , aArg5 );
4415 insert( lStr , aArg6 );
4416 insert( lStr , aArg7 );
4417 insert( lStr , aArg8 );
4418 aInfo.tail();
4419 }
4420 #endif
4421 #endif
4422 #endif
4423 #endif
4424 #endif
4425}
4426
4427template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
4428void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 )
4429{
4430 #ifndef LOGGING_EXCLUDE_FATAL
4431 #ifndef LOGGING_EXCLUDE_ERROR
4432 #ifndef LOGGING_EXCLUDE_WARNING
4433 #ifndef LOGGING_EXCLUDE_NOTICE
4434 #ifndef LOGGING_EXCLUDE_INFO
4435 if( LoggingIncludes( aInfo ) ){
4436 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4437 std::ostream& lStr( aInfo.stream() );
4438 aInfo.head();
4439 insert( lStr , aArg0 );
4440 insert( lStr , aArg1 );
4441 insert( lStr , aArg2 );
4442 insert( lStr , aArg3 );
4443 insert( lStr , aArg4 );
4444 insert( lStr , aArg5 );
4445 insert( lStr , aArg6 );
4446 insert( lStr , aArg7 );
4447 insert( lStr , aArg8 );
4448 insert( lStr , aArg9 );
4449 aInfo.tail();
4450 }
4451 #endif
4452 #endif
4453 #endif
4454 #endif
4455 #endif
4456}
4457
4458template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
4459void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 )
4460{
4461 #ifndef LOGGING_EXCLUDE_FATAL
4462 #ifndef LOGGING_EXCLUDE_ERROR
4463 #ifndef LOGGING_EXCLUDE_WARNING
4464 #ifndef LOGGING_EXCLUDE_NOTICE
4465 #ifndef LOGGING_EXCLUDE_INFO
4466 if( LoggingIncludes( aInfo ) ){
4467 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4468 std::ostream& lStr( aInfo.stream() );
4469 aInfo.head();
4470 insert( lStr , aArg0 );
4471 insert( lStr , aArg1 );
4472 insert( lStr , aArg2 );
4473 insert( lStr , aArg3 );
4474 insert( lStr , aArg4 );
4475 insert( lStr , aArg5 );
4476 insert( lStr , aArg6 );
4477 insert( lStr , aArg7 );
4478 insert( lStr , aArg8 );
4479 insert( lStr , aArg9 );
4480 insert( lStr , aArg10 );
4481 aInfo.tail();
4482 }
4483 #endif
4484 #endif
4485 #endif
4486 #endif
4487 #endif
4488}
4489
4490template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 >
4491void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 )
4492{
4493 #ifndef LOGGING_EXCLUDE_FATAL
4494 #ifndef LOGGING_EXCLUDE_ERROR
4495 #ifndef LOGGING_EXCLUDE_WARNING
4496 #ifndef LOGGING_EXCLUDE_NOTICE
4497 #ifndef LOGGING_EXCLUDE_INFO
4498 if( LoggingIncludes( aInfo ) ){
4499 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4500 std::ostream& lStr( aInfo.stream() );
4501 aInfo.head();
4502 insert( lStr , aArg0 );
4503 insert( lStr , aArg1 );
4504 insert( lStr , aArg2 );
4505 insert( lStr , aArg3 );
4506 insert( lStr , aArg4 );
4507 insert( lStr , aArg5 );
4508 insert( lStr , aArg6 );
4509 insert( lStr , aArg7 );
4510 insert( lStr , aArg8 );
4511 insert( lStr , aArg9 );
4512 insert( lStr , aArg10 );
4513 insert( lStr , aArg11 );
4514 aInfo.tail();
4515 }
4516 #endif
4517 #endif
4518 #endif
4519 #endif
4520 #endif
4521}
4522
4523template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 >
4524void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 )
4525{
4526 #ifndef LOGGING_EXCLUDE_FATAL
4527 #ifndef LOGGING_EXCLUDE_ERROR
4528 #ifndef LOGGING_EXCLUDE_WARNING
4529 #ifndef LOGGING_EXCLUDE_NOTICE
4530 #ifndef LOGGING_EXCLUDE_INFO
4531 if( LoggingIncludes( aInfo ) ){
4532 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4533 std::ostream& lStr( aInfo.stream() );
4534 aInfo.head();
4535 insert( lStr , aArg0 );
4536 insert( lStr , aArg1 );
4537 insert( lStr , aArg2 );
4538 insert( lStr , aArg3 );
4539 insert( lStr , aArg4 );
4540 insert( lStr , aArg5 );
4541 insert( lStr , aArg6 );
4542 insert( lStr , aArg7 );
4543 insert( lStr , aArg8 );
4544 insert( lStr , aArg9 );
4545 insert( lStr , aArg10 );
4546 insert( lStr , aArg11 );
4547 insert( lStr , aArg12 );
4548 aInfo.tail();
4549 }
4550 #endif
4551 #endif
4552 #endif
4553 #endif
4554 #endif
4555}
4556
4557template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 >
4558void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 )
4559{
4560 #ifndef LOGGING_EXCLUDE_FATAL
4561 #ifndef LOGGING_EXCLUDE_ERROR
4562 #ifndef LOGGING_EXCLUDE_WARNING
4563 #ifndef LOGGING_EXCLUDE_NOTICE
4564 #ifndef LOGGING_EXCLUDE_INFO
4565 if( LoggingIncludes( aInfo ) ){
4566 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4567 std::ostream& lStr( aInfo.stream() );
4568 aInfo.head();
4569 insert( lStr , aArg0 );
4570 insert( lStr , aArg1 );
4571 insert( lStr , aArg2 );
4572 insert( lStr , aArg3 );
4573 insert( lStr , aArg4 );
4574 insert( lStr , aArg5 );
4575 insert( lStr , aArg6 );
4576 insert( lStr , aArg7 );
4577 insert( lStr , aArg8 );
4578 insert( lStr , aArg9 );
4579 insert( lStr , aArg10 );
4580 insert( lStr , aArg11 );
4581 insert( lStr , aArg12 );
4582 insert( lStr , aArg13 );
4583 aInfo.tail();
4584 }
4585 #endif
4586 #endif
4587 #endif
4588 #endif
4589 #endif
4590}
4591
4592template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 >
4593void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 )
4594{
4595 #ifndef LOGGING_EXCLUDE_FATAL
4596 #ifndef LOGGING_EXCLUDE_ERROR
4597 #ifndef LOGGING_EXCLUDE_WARNING
4598 #ifndef LOGGING_EXCLUDE_NOTICE
4599 #ifndef LOGGING_EXCLUDE_INFO
4600 if( LoggingIncludes( aInfo ) ){
4601 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4602 std::ostream& lStr( aInfo.stream() );
4603 aInfo.head();
4604 insert( lStr , aArg0 );
4605 insert( lStr , aArg1 );
4606 insert( lStr , aArg2 );
4607 insert( lStr , aArg3 );
4608 insert( lStr , aArg4 );
4609 insert( lStr , aArg5 );
4610 insert( lStr , aArg6 );
4611 insert( lStr , aArg7 );
4612 insert( lStr , aArg8 );
4613 insert( lStr , aArg9 );
4614 insert( lStr , aArg10 );
4615 insert( lStr , aArg11 );
4616 insert( lStr , aArg12 );
4617 insert( lStr , aArg13 );
4618 insert( lStr , aArg14 );
4619 aInfo.tail();
4620 }
4621 #endif
4622 #endif
4623 #endif
4624 #endif
4625 #endif
4626}
4627
4628template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 >
4629void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 )
4630{
4631 #ifndef LOGGING_EXCLUDE_FATAL
4632 #ifndef LOGGING_EXCLUDE_ERROR
4633 #ifndef LOGGING_EXCLUDE_WARNING
4634 #ifndef LOGGING_EXCLUDE_NOTICE
4635 #ifndef LOGGING_EXCLUDE_INFO
4636 if( LoggingIncludes( aInfo ) ){
4637 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4638 std::ostream& lStr( aInfo.stream() );
4639 aInfo.head();
4640 insert( lStr , aArg0 );
4641 insert( lStr , aArg1 );
4642 insert( lStr , aArg2 );
4643 insert( lStr , aArg3 );
4644 insert( lStr , aArg4 );
4645 insert( lStr , aArg5 );
4646 insert( lStr , aArg6 );
4647 insert( lStr , aArg7 );
4648 insert( lStr , aArg8 );
4649 insert( lStr , aArg9 );
4650 insert( lStr , aArg10 );
4651 insert( lStr , aArg11 );
4652 insert( lStr , aArg12 );
4653 insert( lStr , aArg13 );
4654 insert( lStr , aArg14 );
4655 insert( lStr , aArg15 );
4656 aInfo.tail();
4657 }
4658 #endif
4659 #endif
4660 #endif
4661 #endif
4662 #endif
4663}
4664
4665template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 >
4666void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 )
4667{
4668 #ifndef LOGGING_EXCLUDE_FATAL
4669 #ifndef LOGGING_EXCLUDE_ERROR
4670 #ifndef LOGGING_EXCLUDE_WARNING
4671 #ifndef LOGGING_EXCLUDE_NOTICE
4672 #ifndef LOGGING_EXCLUDE_INFO
4673 if( LoggingIncludes( aInfo ) ){
4674 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4675 std::ostream& lStr( aInfo.stream() );
4676 aInfo.head();
4677 insert( lStr , aArg0 );
4678 insert( lStr , aArg1 );
4679 insert( lStr , aArg2 );
4680 insert( lStr , aArg3 );
4681 insert( lStr , aArg4 );
4682 insert( lStr , aArg5 );
4683 insert( lStr , aArg6 );
4684 insert( lStr , aArg7 );
4685 insert( lStr , aArg8 );
4686 insert( lStr , aArg9 );
4687 insert( lStr , aArg10 );
4688 insert( lStr , aArg11 );
4689 insert( lStr , aArg12 );
4690 insert( lStr , aArg13 );
4691 insert( lStr , aArg14 );
4692 insert( lStr , aArg15 );
4693 insert( lStr , aArg16 );
4694 aInfo.tail();
4695 }
4696 #endif
4697 #endif
4698 #endif
4699 #endif
4700 #endif
4701}
4702
4703template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 >
4704void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 )
4705{
4706 #ifndef LOGGING_EXCLUDE_FATAL
4707 #ifndef LOGGING_EXCLUDE_ERROR
4708 #ifndef LOGGING_EXCLUDE_WARNING
4709 #ifndef LOGGING_EXCLUDE_NOTICE
4710 #ifndef LOGGING_EXCLUDE_INFO
4711 if( LoggingIncludes( aInfo ) ){
4712 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4713 std::ostream& lStr( aInfo.stream() );
4714 aInfo.head();
4715 insert( lStr , aArg0 );
4716 insert( lStr , aArg1 );
4717 insert( lStr , aArg2 );
4718 insert( lStr , aArg3 );
4719 insert( lStr , aArg4 );
4720 insert( lStr , aArg5 );
4721 insert( lStr , aArg6 );
4722 insert( lStr , aArg7 );
4723 insert( lStr , aArg8 );
4724 insert( lStr , aArg9 );
4725 insert( lStr , aArg10 );
4726 insert( lStr , aArg11 );
4727 insert( lStr , aArg12 );
4728 insert( lStr , aArg13 );
4729 insert( lStr , aArg14 );
4730 insert( lStr , aArg15 );
4731 insert( lStr , aArg16 );
4732 insert( lStr , aArg17 );
4733 aInfo.tail();
4734 }
4735 #endif
4736 #endif
4737 #endif
4738 #endif
4739 #endif
4740}
4741
4742template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 >
4743void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 )
4744{
4745 #ifndef LOGGING_EXCLUDE_FATAL
4746 #ifndef LOGGING_EXCLUDE_ERROR
4747 #ifndef LOGGING_EXCLUDE_WARNING
4748 #ifndef LOGGING_EXCLUDE_NOTICE
4749 #ifndef LOGGING_EXCLUDE_INFO
4750 if( LoggingIncludes( aInfo ) ){
4751 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4752 std::ostream& lStr( aInfo.stream() );
4753 aInfo.head();
4754 insert( lStr , aArg0 );
4755 insert( lStr , aArg1 );
4756 insert( lStr , aArg2 );
4757 insert( lStr , aArg3 );
4758 insert( lStr , aArg4 );
4759 insert( lStr , aArg5 );
4760 insert( lStr , aArg6 );
4761 insert( lStr , aArg7 );
4762 insert( lStr , aArg8 );
4763 insert( lStr , aArg9 );
4764 insert( lStr , aArg10 );
4765 insert( lStr , aArg11 );
4766 insert( lStr , aArg12 );
4767 insert( lStr , aArg13 );
4768 insert( lStr , aArg14 );
4769 insert( lStr , aArg15 );
4770 insert( lStr , aArg16 );
4771 insert( lStr , aArg17 );
4772 insert( lStr , aArg18 );
4773 aInfo.tail();
4774 }
4775 #endif
4776 #endif
4777 #endif
4778 #endif
4779 #endif
4780}
4781
4782template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 >
4783void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 )
4784{
4785 #ifndef LOGGING_EXCLUDE_FATAL
4786 #ifndef LOGGING_EXCLUDE_ERROR
4787 #ifndef LOGGING_EXCLUDE_WARNING
4788 #ifndef LOGGING_EXCLUDE_NOTICE
4789 #ifndef LOGGING_EXCLUDE_INFO
4790 if( LoggingIncludes( aInfo ) ){
4791 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4792 std::ostream& lStr( aInfo.stream() );
4793 aInfo.head();
4794 insert( lStr , aArg0 );
4795 insert( lStr , aArg1 );
4796 insert( lStr , aArg2 );
4797 insert( lStr , aArg3 );
4798 insert( lStr , aArg4 );
4799 insert( lStr , aArg5 );
4800 insert( lStr , aArg6 );
4801 insert( lStr , aArg7 );
4802 insert( lStr , aArg8 );
4803 insert( lStr , aArg9 );
4804 insert( lStr , aArg10 );
4805 insert( lStr , aArg11 );
4806 insert( lStr , aArg12 );
4807 insert( lStr , aArg13 );
4808 insert( lStr , aArg14 );
4809 insert( lStr , aArg15 );
4810 insert( lStr , aArg16 );
4811 insert( lStr , aArg17 );
4812 insert( lStr , aArg18 );
4813 insert( lStr , aArg19 );
4814 aInfo.tail();
4815 }
4816 #endif
4817 #endif
4818 #endif
4819 #endif
4820 #endif
4821}
4822
4823template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 >
4824void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 )
4825{
4826 #ifndef LOGGING_EXCLUDE_FATAL
4827 #ifndef LOGGING_EXCLUDE_ERROR
4828 #ifndef LOGGING_EXCLUDE_WARNING
4829 #ifndef LOGGING_EXCLUDE_NOTICE
4830 #ifndef LOGGING_EXCLUDE_INFO
4831 if( LoggingIncludes( aInfo ) ){
4832 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4833 std::ostream& lStr( aInfo.stream() );
4834 aInfo.head();
4835 insert( lStr , aArg0 );
4836 insert( lStr , aArg1 );
4837 insert( lStr , aArg2 );
4838 insert( lStr , aArg3 );
4839 insert( lStr , aArg4 );
4840 insert( lStr , aArg5 );
4841 insert( lStr , aArg6 );
4842 insert( lStr , aArg7 );
4843 insert( lStr , aArg8 );
4844 insert( lStr , aArg9 );
4845 insert( lStr , aArg10 );
4846 insert( lStr , aArg11 );
4847 insert( lStr , aArg12 );
4848 insert( lStr , aArg13 );
4849 insert( lStr , aArg14 );
4850 insert( lStr , aArg15 );
4851 insert( lStr , aArg16 );
4852 insert( lStr , aArg17 );
4853 insert( lStr , aArg18 );
4854 insert( lStr , aArg19 );
4855 insert( lStr , aArg20 );
4856 aInfo.tail();
4857 }
4858 #endif
4859 #endif
4860 #endif
4861 #endif
4862 #endif
4863}
4864
4865template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 >
4866void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 )
4867{
4868 #ifndef LOGGING_EXCLUDE_FATAL
4869 #ifndef LOGGING_EXCLUDE_ERROR
4870 #ifndef LOGGING_EXCLUDE_WARNING
4871 #ifndef LOGGING_EXCLUDE_NOTICE
4872 #ifndef LOGGING_EXCLUDE_INFO
4873 if( LoggingIncludes( aInfo ) ){
4874 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4875 std::ostream& lStr( aInfo.stream() );
4876 aInfo.head();
4877 insert( lStr , aArg0 );
4878 insert( lStr , aArg1 );
4879 insert( lStr , aArg2 );
4880 insert( lStr , aArg3 );
4881 insert( lStr , aArg4 );
4882 insert( lStr , aArg5 );
4883 insert( lStr , aArg6 );
4884 insert( lStr , aArg7 );
4885 insert( lStr , aArg8 );
4886 insert( lStr , aArg9 );
4887 insert( lStr , aArg10 );
4888 insert( lStr , aArg11 );
4889 insert( lStr , aArg12 );
4890 insert( lStr , aArg13 );
4891 insert( lStr , aArg14 );
4892 insert( lStr , aArg15 );
4893 insert( lStr , aArg16 );
4894 insert( lStr , aArg17 );
4895 insert( lStr , aArg18 );
4896 insert( lStr , aArg19 );
4897 insert( lStr , aArg20 );
4898 insert( lStr , aArg21 );
4899 aInfo.tail();
4900 }
4901 #endif
4902 #endif
4903 #endif
4904 #endif
4905 #endif
4906}
4907
4908template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 >
4909void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 )
4910{
4911 #ifndef LOGGING_EXCLUDE_FATAL
4912 #ifndef LOGGING_EXCLUDE_ERROR
4913 #ifndef LOGGING_EXCLUDE_WARNING
4914 #ifndef LOGGING_EXCLUDE_NOTICE
4915 #ifndef LOGGING_EXCLUDE_INFO
4916 if( LoggingIncludes( aInfo ) ){
4917 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4918 std::ostream& lStr( aInfo.stream() );
4919 aInfo.head();
4920 insert( lStr , aArg0 );
4921 insert( lStr , aArg1 );
4922 insert( lStr , aArg2 );
4923 insert( lStr , aArg3 );
4924 insert( lStr , aArg4 );
4925 insert( lStr , aArg5 );
4926 insert( lStr , aArg6 );
4927 insert( lStr , aArg7 );
4928 insert( lStr , aArg8 );
4929 insert( lStr , aArg9 );
4930 insert( lStr , aArg10 );
4931 insert( lStr , aArg11 );
4932 insert( lStr , aArg12 );
4933 insert( lStr , aArg13 );
4934 insert( lStr , aArg14 );
4935 insert( lStr , aArg15 );
4936 insert( lStr , aArg16 );
4937 insert( lStr , aArg17 );
4938 insert( lStr , aArg18 );
4939 insert( lStr , aArg19 );
4940 insert( lStr , aArg20 );
4941 insert( lStr , aArg21 );
4942 insert( lStr , aArg22 );
4943 aInfo.tail();
4944 }
4945 #endif
4946 #endif
4947 #endif
4948 #endif
4949 #endif
4950}
4951
4952template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 >
4953void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 )
4954{
4955 #ifndef LOGGING_EXCLUDE_FATAL
4956 #ifndef LOGGING_EXCLUDE_ERROR
4957 #ifndef LOGGING_EXCLUDE_WARNING
4958 #ifndef LOGGING_EXCLUDE_NOTICE
4959 #ifndef LOGGING_EXCLUDE_INFO
4960 if( LoggingIncludes( aInfo ) ){
4961 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
4962 std::ostream& lStr( aInfo.stream() );
4963 aInfo.head();
4964 insert( lStr , aArg0 );
4965 insert( lStr , aArg1 );
4966 insert( lStr , aArg2 );
4967 insert( lStr , aArg3 );
4968 insert( lStr , aArg4 );
4969 insert( lStr , aArg5 );
4970 insert( lStr , aArg6 );
4971 insert( lStr , aArg7 );
4972 insert( lStr , aArg8 );
4973 insert( lStr , aArg9 );
4974 insert( lStr , aArg10 );
4975 insert( lStr , aArg11 );
4976 insert( lStr , aArg12 );
4977 insert( lStr , aArg13 );
4978 insert( lStr , aArg14 );
4979 insert( lStr , aArg15 );
4980 insert( lStr , aArg16 );
4981 insert( lStr , aArg17 );
4982 insert( lStr , aArg18 );
4983 insert( lStr , aArg19 );
4984 insert( lStr , aArg20 );
4985 insert( lStr , aArg21 );
4986 insert( lStr , aArg22 );
4987 insert( lStr , aArg23 );
4988 aInfo.tail();
4989 }
4990 #endif
4991 #endif
4992 #endif
4993 #endif
4994 #endif
4995}
4996
4997template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 >
4998void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 )
4999{
5000 #ifndef LOGGING_EXCLUDE_FATAL
5001 #ifndef LOGGING_EXCLUDE_ERROR
5002 #ifndef LOGGING_EXCLUDE_WARNING
5003 #ifndef LOGGING_EXCLUDE_NOTICE
5004 #ifndef LOGGING_EXCLUDE_INFO
5005 if( LoggingIncludes( aInfo ) ){
5006 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5007 std::ostream& lStr( aInfo.stream() );
5008 aInfo.head();
5009 insert( lStr , aArg0 );
5010 insert( lStr , aArg1 );
5011 insert( lStr , aArg2 );
5012 insert( lStr , aArg3 );
5013 insert( lStr , aArg4 );
5014 insert( lStr , aArg5 );
5015 insert( lStr , aArg6 );
5016 insert( lStr , aArg7 );
5017 insert( lStr , aArg8 );
5018 insert( lStr , aArg9 );
5019 insert( lStr , aArg10 );
5020 insert( lStr , aArg11 );
5021 insert( lStr , aArg12 );
5022 insert( lStr , aArg13 );
5023 insert( lStr , aArg14 );
5024 insert( lStr , aArg15 );
5025 insert( lStr , aArg16 );
5026 insert( lStr , aArg17 );
5027 insert( lStr , aArg18 );
5028 insert( lStr , aArg19 );
5029 insert( lStr , aArg20 );
5030 insert( lStr , aArg21 );
5031 insert( lStr , aArg22 );
5032 insert( lStr , aArg23 );
5033 insert( lStr , aArg24 );
5034 aInfo.tail();
5035 }
5036 #endif
5037 #endif
5038 #endif
5039 #endif
5040 #endif
5041}
5042
5043template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 >
5044void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 )
5045{
5046 #ifndef LOGGING_EXCLUDE_FATAL
5047 #ifndef LOGGING_EXCLUDE_ERROR
5048 #ifndef LOGGING_EXCLUDE_WARNING
5049 #ifndef LOGGING_EXCLUDE_NOTICE
5050 #ifndef LOGGING_EXCLUDE_INFO
5051 if( LoggingIncludes( aInfo ) ){
5052 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5053 std::ostream& lStr( aInfo.stream() );
5054 aInfo.head();
5055 insert( lStr , aArg0 );
5056 insert( lStr , aArg1 );
5057 insert( lStr , aArg2 );
5058 insert( lStr , aArg3 );
5059 insert( lStr , aArg4 );
5060 insert( lStr , aArg5 );
5061 insert( lStr , aArg6 );
5062 insert( lStr , aArg7 );
5063 insert( lStr , aArg8 );
5064 insert( lStr , aArg9 );
5065 insert( lStr , aArg10 );
5066 insert( lStr , aArg11 );
5067 insert( lStr , aArg12 );
5068 insert( lStr , aArg13 );
5069 insert( lStr , aArg14 );
5070 insert( lStr , aArg15 );
5071 insert( lStr , aArg16 );
5072 insert( lStr , aArg17 );
5073 insert( lStr , aArg18 );
5074 insert( lStr , aArg19 );
5075 insert( lStr , aArg20 );
5076 insert( lStr , aArg21 );
5077 insert( lStr , aArg22 );
5078 insert( lStr , aArg23 );
5079 insert( lStr , aArg24 );
5080 insert( lStr , aArg25 );
5081 aInfo.tail();
5082 }
5083 #endif
5084 #endif
5085 #endif
5086 #endif
5087 #endif
5088}
5089
5090template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 >
5091void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 )
5092{
5093 #ifndef LOGGING_EXCLUDE_FATAL
5094 #ifndef LOGGING_EXCLUDE_ERROR
5095 #ifndef LOGGING_EXCLUDE_WARNING
5096 #ifndef LOGGING_EXCLUDE_NOTICE
5097 #ifndef LOGGING_EXCLUDE_INFO
5098 if( LoggingIncludes( aInfo ) ){
5099 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5100 std::ostream& lStr( aInfo.stream() );
5101 aInfo.head();
5102 insert( lStr , aArg0 );
5103 insert( lStr , aArg1 );
5104 insert( lStr , aArg2 );
5105 insert( lStr , aArg3 );
5106 insert( lStr , aArg4 );
5107 insert( lStr , aArg5 );
5108 insert( lStr , aArg6 );
5109 insert( lStr , aArg7 );
5110 insert( lStr , aArg8 );
5111 insert( lStr , aArg9 );
5112 insert( lStr , aArg10 );
5113 insert( lStr , aArg11 );
5114 insert( lStr , aArg12 );
5115 insert( lStr , aArg13 );
5116 insert( lStr , aArg14 );
5117 insert( lStr , aArg15 );
5118 insert( lStr , aArg16 );
5119 insert( lStr , aArg17 );
5120 insert( lStr , aArg18 );
5121 insert( lStr , aArg19 );
5122 insert( lStr , aArg20 );
5123 insert( lStr , aArg21 );
5124 insert( lStr , aArg22 );
5125 insert( lStr , aArg23 );
5126 insert( lStr , aArg24 );
5127 insert( lStr , aArg25 );
5128 insert( lStr , aArg26 );
5129 aInfo.tail();
5130 }
5131 #endif
5132 #endif
5133 #endif
5134 #endif
5135 #endif
5136}
5137
5138template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 >
5139void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 )
5140{
5141 #ifndef LOGGING_EXCLUDE_FATAL
5142 #ifndef LOGGING_EXCLUDE_ERROR
5143 #ifndef LOGGING_EXCLUDE_WARNING
5144 #ifndef LOGGING_EXCLUDE_NOTICE
5145 #ifndef LOGGING_EXCLUDE_INFO
5146 if( LoggingIncludes( aInfo ) ){
5147 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5148 std::ostream& lStr( aInfo.stream() );
5149 aInfo.head();
5150 insert( lStr , aArg0 );
5151 insert( lStr , aArg1 );
5152 insert( lStr , aArg2 );
5153 insert( lStr , aArg3 );
5154 insert( lStr , aArg4 );
5155 insert( lStr , aArg5 );
5156 insert( lStr , aArg6 );
5157 insert( lStr , aArg7 );
5158 insert( lStr , aArg8 );
5159 insert( lStr , aArg9 );
5160 insert( lStr , aArg10 );
5161 insert( lStr , aArg11 );
5162 insert( lStr , aArg12 );
5163 insert( lStr , aArg13 );
5164 insert( lStr , aArg14 );
5165 insert( lStr , aArg15 );
5166 insert( lStr , aArg16 );
5167 insert( lStr , aArg17 );
5168 insert( lStr , aArg18 );
5169 insert( lStr , aArg19 );
5170 insert( lStr , aArg20 );
5171 insert( lStr , aArg21 );
5172 insert( lStr , aArg22 );
5173 insert( lStr , aArg23 );
5174 insert( lStr , aArg24 );
5175 insert( lStr , aArg25 );
5176 insert( lStr , aArg26 );
5177 insert( lStr , aArg27 );
5178 aInfo.tail();
5179 }
5180 #endif
5181 #endif
5182 #endif
5183 #endif
5184 #endif
5185}
5186
5187template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 >
5188void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 )
5189{
5190 #ifndef LOGGING_EXCLUDE_FATAL
5191 #ifndef LOGGING_EXCLUDE_ERROR
5192 #ifndef LOGGING_EXCLUDE_WARNING
5193 #ifndef LOGGING_EXCLUDE_NOTICE
5194 #ifndef LOGGING_EXCLUDE_INFO
5195 if( LoggingIncludes( aInfo ) ){
5196 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5197 std::ostream& lStr( aInfo.stream() );
5198 aInfo.head();
5199 insert( lStr , aArg0 );
5200 insert( lStr , aArg1 );
5201 insert( lStr , aArg2 );
5202 insert( lStr , aArg3 );
5203 insert( lStr , aArg4 );
5204 insert( lStr , aArg5 );
5205 insert( lStr , aArg6 );
5206 insert( lStr , aArg7 );
5207 insert( lStr , aArg8 );
5208 insert( lStr , aArg9 );
5209 insert( lStr , aArg10 );
5210 insert( lStr , aArg11 );
5211 insert( lStr , aArg12 );
5212 insert( lStr , aArg13 );
5213 insert( lStr , aArg14 );
5214 insert( lStr , aArg15 );
5215 insert( lStr , aArg16 );
5216 insert( lStr , aArg17 );
5217 insert( lStr , aArg18 );
5218 insert( lStr , aArg19 );
5219 insert( lStr , aArg20 );
5220 insert( lStr , aArg21 );
5221 insert( lStr , aArg22 );
5222 insert( lStr , aArg23 );
5223 insert( lStr , aArg24 );
5224 insert( lStr , aArg25 );
5225 insert( lStr , aArg26 );
5226 insert( lStr , aArg27 );
5227 insert( lStr , aArg28 );
5228 aInfo.tail();
5229 }
5230 #endif
5231 #endif
5232 #endif
5233 #endif
5234 #endif
5235}
5236
5237template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 >
5238void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 )
5239{
5240 #ifndef LOGGING_EXCLUDE_FATAL
5241 #ifndef LOGGING_EXCLUDE_ERROR
5242 #ifndef LOGGING_EXCLUDE_WARNING
5243 #ifndef LOGGING_EXCLUDE_NOTICE
5244 #ifndef LOGGING_EXCLUDE_INFO
5245 if( LoggingIncludes( aInfo ) ){
5246 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5247 std::ostream& lStr( aInfo.stream() );
5248 aInfo.head();
5249 insert( lStr , aArg0 );
5250 insert( lStr , aArg1 );
5251 insert( lStr , aArg2 );
5252 insert( lStr , aArg3 );
5253 insert( lStr , aArg4 );
5254 insert( lStr , aArg5 );
5255 insert( lStr , aArg6 );
5256 insert( lStr , aArg7 );
5257 insert( lStr , aArg8 );
5258 insert( lStr , aArg9 );
5259 insert( lStr , aArg10 );
5260 insert( lStr , aArg11 );
5261 insert( lStr , aArg12 );
5262 insert( lStr , aArg13 );
5263 insert( lStr , aArg14 );
5264 insert( lStr , aArg15 );
5265 insert( lStr , aArg16 );
5266 insert( lStr , aArg17 );
5267 insert( lStr , aArg18 );
5268 insert( lStr , aArg19 );
5269 insert( lStr , aArg20 );
5270 insert( lStr , aArg21 );
5271 insert( lStr , aArg22 );
5272 insert( lStr , aArg23 );
5273 insert( lStr , aArg24 );
5274 insert( lStr , aArg25 );
5275 insert( lStr , aArg26 );
5276 insert( lStr , aArg27 );
5277 insert( lStr , aArg28 );
5278 insert( lStr , aArg29 );
5279 aInfo.tail();
5280 }
5281 #endif
5282 #endif
5283 #endif
5284 #endif
5285 #endif
5286}
5287
5288template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 >
5289void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 )
5290{
5291 #ifndef LOGGING_EXCLUDE_FATAL
5292 #ifndef LOGGING_EXCLUDE_ERROR
5293 #ifndef LOGGING_EXCLUDE_WARNING
5294 #ifndef LOGGING_EXCLUDE_NOTICE
5295 #ifndef LOGGING_EXCLUDE_INFO
5296 if( LoggingIncludes( aInfo ) ){
5297 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5298 std::ostream& lStr( aInfo.stream() );
5299 aInfo.head();
5300 insert( lStr , aArg0 );
5301 insert( lStr , aArg1 );
5302 insert( lStr , aArg2 );
5303 insert( lStr , aArg3 );
5304 insert( lStr , aArg4 );
5305 insert( lStr , aArg5 );
5306 insert( lStr , aArg6 );
5307 insert( lStr , aArg7 );
5308 insert( lStr , aArg8 );
5309 insert( lStr , aArg9 );
5310 insert( lStr , aArg10 );
5311 insert( lStr , aArg11 );
5312 insert( lStr , aArg12 );
5313 insert( lStr , aArg13 );
5314 insert( lStr , aArg14 );
5315 insert( lStr , aArg15 );
5316 insert( lStr , aArg16 );
5317 insert( lStr , aArg17 );
5318 insert( lStr , aArg18 );
5319 insert( lStr , aArg19 );
5320 insert( lStr , aArg20 );
5321 insert( lStr , aArg21 );
5322 insert( lStr , aArg22 );
5323 insert( lStr , aArg23 );
5324 insert( lStr , aArg24 );
5325 insert( lStr , aArg25 );
5326 insert( lStr , aArg26 );
5327 insert( lStr , aArg27 );
5328 insert( lStr , aArg28 );
5329 insert( lStr , aArg29 );
5330 insert( lStr , aArg30 );
5331 aInfo.tail();
5332 }
5333 #endif
5334 #endif
5335 #endif
5336 #endif
5337 #endif
5338}
5339
5340template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 , typename T31 >
5341void log ( InfoLevel& aInfo , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 , const T31& aArg31 )
5342{
5343 #ifndef LOGGING_EXCLUDE_FATAL
5344 #ifndef LOGGING_EXCLUDE_ERROR
5345 #ifndef LOGGING_EXCLUDE_WARNING
5346 #ifndef LOGGING_EXCLUDE_NOTICE
5347 #ifndef LOGGING_EXCLUDE_INFO
5348 if( LoggingIncludes( aInfo ) ){
5349 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5350 std::ostream& lStr( aInfo.stream() );
5351 aInfo.head();
5352 insert( lStr , aArg0 );
5353 insert( lStr , aArg1 );
5354 insert( lStr , aArg2 );
5355 insert( lStr , aArg3 );
5356 insert( lStr , aArg4 );
5357 insert( lStr , aArg5 );
5358 insert( lStr , aArg6 );
5359 insert( lStr , aArg7 );
5360 insert( lStr , aArg8 );
5361 insert( lStr , aArg9 );
5362 insert( lStr , aArg10 );
5363 insert( lStr , aArg11 );
5364 insert( lStr , aArg12 );
5365 insert( lStr , aArg13 );
5366 insert( lStr , aArg14 );
5367 insert( lStr , aArg15 );
5368 insert( lStr , aArg16 );
5369 insert( lStr , aArg17 );
5370 insert( lStr , aArg18 );
5371 insert( lStr , aArg19 );
5372 insert( lStr , aArg20 );
5373 insert( lStr , aArg21 );
5374 insert( lStr , aArg22 );
5375 insert( lStr , aArg23 );
5376 insert( lStr , aArg24 );
5377 insert( lStr , aArg25 );
5378 insert( lStr , aArg26 );
5379 insert( lStr , aArg27 );
5380 insert( lStr , aArg28 );
5381 insert( lStr , aArg29 );
5382 insert( lStr , aArg30 );
5383 insert( lStr , aArg31 );
5384 aInfo.tail();
5385 }
5386 #endif
5387 #endif
5388 #endif
5389 #endif
5390 #endif
5391}
5392
5393// ======================================================================================================================================================
5394// WARNING! This file is automatically generated! Do not modify it! Any changes will be overwritten!
5395// ======================================================================================================================================================
5396
5397template< typename T0 >
5398void log ( DebugLevel& aDebug , const T0& aArg0 )
5399{
5400 #ifndef LOGGING_EXCLUDE_FATAL
5401 #ifndef LOGGING_EXCLUDE_ERROR
5402 #ifndef LOGGING_EXCLUDE_WARNING
5403 #ifndef LOGGING_EXCLUDE_NOTICE
5404 #ifndef LOGGING_EXCLUDE_INFO
5405 #ifndef LOGGING_EXCLUDE_DEBUG
5406 if( LoggingIncludes( aDebug ) ){
5407 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5408 std::ostream& lStr( aDebug.stream() );
5409 aDebug.head();
5410 insert( lStr , aArg0 );
5411 aDebug.tail();
5412 }
5413 #endif
5414 #endif
5415 #endif
5416 #endif
5417 #endif
5418 #endif
5419}
5420
5421template< typename T0 , typename T1 >
5422void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 )
5423{
5424 #ifndef LOGGING_EXCLUDE_FATAL
5425 #ifndef LOGGING_EXCLUDE_ERROR
5426 #ifndef LOGGING_EXCLUDE_WARNING
5427 #ifndef LOGGING_EXCLUDE_NOTICE
5428 #ifndef LOGGING_EXCLUDE_INFO
5429 #ifndef LOGGING_EXCLUDE_DEBUG
5430 if( LoggingIncludes( aDebug ) ){
5431 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5432 std::ostream& lStr( aDebug.stream() );
5433 aDebug.head();
5434 insert( lStr , aArg0 );
5435 insert( lStr , aArg1 );
5436 aDebug.tail();
5437 }
5438 #endif
5439 #endif
5440 #endif
5441 #endif
5442 #endif
5443 #endif
5444}
5445
5446template< typename T0 , typename T1 , typename T2 >
5447void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 )
5448{
5449 #ifndef LOGGING_EXCLUDE_FATAL
5450 #ifndef LOGGING_EXCLUDE_ERROR
5451 #ifndef LOGGING_EXCLUDE_WARNING
5452 #ifndef LOGGING_EXCLUDE_NOTICE
5453 #ifndef LOGGING_EXCLUDE_INFO
5454 #ifndef LOGGING_EXCLUDE_DEBUG
5455 if( LoggingIncludes( aDebug ) ){
5456 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5457 std::ostream& lStr( aDebug.stream() );
5458 aDebug.head();
5459 insert( lStr , aArg0 );
5460 insert( lStr , aArg1 );
5461 insert( lStr , aArg2 );
5462 aDebug.tail();
5463 }
5464 #endif
5465 #endif
5466 #endif
5467 #endif
5468 #endif
5469 #endif
5470}
5471
5472template< typename T0 , typename T1 , typename T2 , typename T3 >
5473void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 )
5474{
5475 #ifndef LOGGING_EXCLUDE_FATAL
5476 #ifndef LOGGING_EXCLUDE_ERROR
5477 #ifndef LOGGING_EXCLUDE_WARNING
5478 #ifndef LOGGING_EXCLUDE_NOTICE
5479 #ifndef LOGGING_EXCLUDE_INFO
5480 #ifndef LOGGING_EXCLUDE_DEBUG
5481 if( LoggingIncludes( aDebug ) ){
5482 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5483 std::ostream& lStr( aDebug.stream() );
5484 aDebug.head();
5485 insert( lStr , aArg0 );
5486 insert( lStr , aArg1 );
5487 insert( lStr , aArg2 );
5488 insert( lStr , aArg3 );
5489 aDebug.tail();
5490 }
5491 #endif
5492 #endif
5493 #endif
5494 #endif
5495 #endif
5496 #endif
5497}
5498
5499template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
5500void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 )
5501{
5502 #ifndef LOGGING_EXCLUDE_FATAL
5503 #ifndef LOGGING_EXCLUDE_ERROR
5504 #ifndef LOGGING_EXCLUDE_WARNING
5505 #ifndef LOGGING_EXCLUDE_NOTICE
5506 #ifndef LOGGING_EXCLUDE_INFO
5507 #ifndef LOGGING_EXCLUDE_DEBUG
5508 if( LoggingIncludes( aDebug ) ){
5509 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5510 std::ostream& lStr( aDebug.stream() );
5511 aDebug.head();
5512 insert( lStr , aArg0 );
5513 insert( lStr , aArg1 );
5514 insert( lStr , aArg2 );
5515 insert( lStr , aArg3 );
5516 insert( lStr , aArg4 );
5517 aDebug.tail();
5518 }
5519 #endif
5520 #endif
5521 #endif
5522 #endif
5523 #endif
5524 #endif
5525}
5526
5527template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
5528void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 )
5529{
5530 #ifndef LOGGING_EXCLUDE_FATAL
5531 #ifndef LOGGING_EXCLUDE_ERROR
5532 #ifndef LOGGING_EXCLUDE_WARNING
5533 #ifndef LOGGING_EXCLUDE_NOTICE
5534 #ifndef LOGGING_EXCLUDE_INFO
5535 #ifndef LOGGING_EXCLUDE_DEBUG
5536 if( LoggingIncludes( aDebug ) ){
5537 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5538 std::ostream& lStr( aDebug.stream() );
5539 aDebug.head();
5540 insert( lStr , aArg0 );
5541 insert( lStr , aArg1 );
5542 insert( lStr , aArg2 );
5543 insert( lStr , aArg3 );
5544 insert( lStr , aArg4 );
5545 insert( lStr , aArg5 );
5546 aDebug.tail();
5547 }
5548 #endif
5549 #endif
5550 #endif
5551 #endif
5552 #endif
5553 #endif
5554}
5555
5556template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
5557void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 )
5558{
5559 #ifndef LOGGING_EXCLUDE_FATAL
5560 #ifndef LOGGING_EXCLUDE_ERROR
5561 #ifndef LOGGING_EXCLUDE_WARNING
5562 #ifndef LOGGING_EXCLUDE_NOTICE
5563 #ifndef LOGGING_EXCLUDE_INFO
5564 #ifndef LOGGING_EXCLUDE_DEBUG
5565 if( LoggingIncludes( aDebug ) ){
5566 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5567 std::ostream& lStr( aDebug.stream() );
5568 aDebug.head();
5569 insert( lStr , aArg0 );
5570 insert( lStr , aArg1 );
5571 insert( lStr , aArg2 );
5572 insert( lStr , aArg3 );
5573 insert( lStr , aArg4 );
5574 insert( lStr , aArg5 );
5575 insert( lStr , aArg6 );
5576 aDebug.tail();
5577 }
5578 #endif
5579 #endif
5580 #endif
5581 #endif
5582 #endif
5583 #endif
5584}
5585
5586template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
5587void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 )
5588{
5589 #ifndef LOGGING_EXCLUDE_FATAL
5590 #ifndef LOGGING_EXCLUDE_ERROR
5591 #ifndef LOGGING_EXCLUDE_WARNING
5592 #ifndef LOGGING_EXCLUDE_NOTICE
5593 #ifndef LOGGING_EXCLUDE_INFO
5594 #ifndef LOGGING_EXCLUDE_DEBUG
5595 if( LoggingIncludes( aDebug ) ){
5596 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5597 std::ostream& lStr( aDebug.stream() );
5598 aDebug.head();
5599 insert( lStr , aArg0 );
5600 insert( lStr , aArg1 );
5601 insert( lStr , aArg2 );
5602 insert( lStr , aArg3 );
5603 insert( lStr , aArg4 );
5604 insert( lStr , aArg5 );
5605 insert( lStr , aArg6 );
5606 insert( lStr , aArg7 );
5607 aDebug.tail();
5608 }
5609 #endif
5610 #endif
5611 #endif
5612 #endif
5613 #endif
5614 #endif
5615}
5616
5617template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
5618void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 )
5619{
5620 #ifndef LOGGING_EXCLUDE_FATAL
5621 #ifndef LOGGING_EXCLUDE_ERROR
5622 #ifndef LOGGING_EXCLUDE_WARNING
5623 #ifndef LOGGING_EXCLUDE_NOTICE
5624 #ifndef LOGGING_EXCLUDE_INFO
5625 #ifndef LOGGING_EXCLUDE_DEBUG
5626 if( LoggingIncludes( aDebug ) ){
5627 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5628 std::ostream& lStr( aDebug.stream() );
5629 aDebug.head();
5630 insert( lStr , aArg0 );
5631 insert( lStr , aArg1 );
5632 insert( lStr , aArg2 );
5633 insert( lStr , aArg3 );
5634 insert( lStr , aArg4 );
5635 insert( lStr , aArg5 );
5636 insert( lStr , aArg6 );
5637 insert( lStr , aArg7 );
5638 insert( lStr , aArg8 );
5639 aDebug.tail();
5640 }
5641 #endif
5642 #endif
5643 #endif
5644 #endif
5645 #endif
5646 #endif
5647}
5648
5649template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
5650void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 )
5651{
5652 #ifndef LOGGING_EXCLUDE_FATAL
5653 #ifndef LOGGING_EXCLUDE_ERROR
5654 #ifndef LOGGING_EXCLUDE_WARNING
5655 #ifndef LOGGING_EXCLUDE_NOTICE
5656 #ifndef LOGGING_EXCLUDE_INFO
5657 #ifndef LOGGING_EXCLUDE_DEBUG
5658 if( LoggingIncludes( aDebug ) ){
5659 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5660 std::ostream& lStr( aDebug.stream() );
5661 aDebug.head();
5662 insert( lStr , aArg0 );
5663 insert( lStr , aArg1 );
5664 insert( lStr , aArg2 );
5665 insert( lStr , aArg3 );
5666 insert( lStr , aArg4 );
5667 insert( lStr , aArg5 );
5668 insert( lStr , aArg6 );
5669 insert( lStr , aArg7 );
5670 insert( lStr , aArg8 );
5671 insert( lStr , aArg9 );
5672 aDebug.tail();
5673 }
5674 #endif
5675 #endif
5676 #endif
5677 #endif
5678 #endif
5679 #endif
5680}
5681
5682template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
5683void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 )
5684{
5685 #ifndef LOGGING_EXCLUDE_FATAL
5686 #ifndef LOGGING_EXCLUDE_ERROR
5687 #ifndef LOGGING_EXCLUDE_WARNING
5688 #ifndef LOGGING_EXCLUDE_NOTICE
5689 #ifndef LOGGING_EXCLUDE_INFO
5690 #ifndef LOGGING_EXCLUDE_DEBUG
5691 if( LoggingIncludes( aDebug ) ){
5692 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5693 std::ostream& lStr( aDebug.stream() );
5694 aDebug.head();
5695 insert( lStr , aArg0 );
5696 insert( lStr , aArg1 );
5697 insert( lStr , aArg2 );
5698 insert( lStr , aArg3 );
5699 insert( lStr , aArg4 );
5700 insert( lStr , aArg5 );
5701 insert( lStr , aArg6 );
5702 insert( lStr , aArg7 );
5703 insert( lStr , aArg8 );
5704 insert( lStr , aArg9 );
5705 insert( lStr , aArg10 );
5706 aDebug.tail();
5707 }
5708 #endif
5709 #endif
5710 #endif
5711 #endif
5712 #endif
5713 #endif
5714}
5715
5716template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 >
5717void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 )
5718{
5719 #ifndef LOGGING_EXCLUDE_FATAL
5720 #ifndef LOGGING_EXCLUDE_ERROR
5721 #ifndef LOGGING_EXCLUDE_WARNING
5722 #ifndef LOGGING_EXCLUDE_NOTICE
5723 #ifndef LOGGING_EXCLUDE_INFO
5724 #ifndef LOGGING_EXCLUDE_DEBUG
5725 if( LoggingIncludes( aDebug ) ){
5726 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5727 std::ostream& lStr( aDebug.stream() );
5728 aDebug.head();
5729 insert( lStr , aArg0 );
5730 insert( lStr , aArg1 );
5731 insert( lStr , aArg2 );
5732 insert( lStr , aArg3 );
5733 insert( lStr , aArg4 );
5734 insert( lStr , aArg5 );
5735 insert( lStr , aArg6 );
5736 insert( lStr , aArg7 );
5737 insert( lStr , aArg8 );
5738 insert( lStr , aArg9 );
5739 insert( lStr , aArg10 );
5740 insert( lStr , aArg11 );
5741 aDebug.tail();
5742 }
5743 #endif
5744 #endif
5745 #endif
5746 #endif
5747 #endif
5748 #endif
5749}
5750
5751template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 >
5752void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 )
5753{
5754 #ifndef LOGGING_EXCLUDE_FATAL
5755 #ifndef LOGGING_EXCLUDE_ERROR
5756 #ifndef LOGGING_EXCLUDE_WARNING
5757 #ifndef LOGGING_EXCLUDE_NOTICE
5758 #ifndef LOGGING_EXCLUDE_INFO
5759 #ifndef LOGGING_EXCLUDE_DEBUG
5760 if( LoggingIncludes( aDebug ) ){
5761 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5762 std::ostream& lStr( aDebug.stream() );
5763 aDebug.head();
5764 insert( lStr , aArg0 );
5765 insert( lStr , aArg1 );
5766 insert( lStr , aArg2 );
5767 insert( lStr , aArg3 );
5768 insert( lStr , aArg4 );
5769 insert( lStr , aArg5 );
5770 insert( lStr , aArg6 );
5771 insert( lStr , aArg7 );
5772 insert( lStr , aArg8 );
5773 insert( lStr , aArg9 );
5774 insert( lStr , aArg10 );
5775 insert( lStr , aArg11 );
5776 insert( lStr , aArg12 );
5777 aDebug.tail();
5778 }
5779 #endif
5780 #endif
5781 #endif
5782 #endif
5783 #endif
5784 #endif
5785}
5786
5787template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 >
5788void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 )
5789{
5790 #ifndef LOGGING_EXCLUDE_FATAL
5791 #ifndef LOGGING_EXCLUDE_ERROR
5792 #ifndef LOGGING_EXCLUDE_WARNING
5793 #ifndef LOGGING_EXCLUDE_NOTICE
5794 #ifndef LOGGING_EXCLUDE_INFO
5795 #ifndef LOGGING_EXCLUDE_DEBUG
5796 if( LoggingIncludes( aDebug ) ){
5797 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5798 std::ostream& lStr( aDebug.stream() );
5799 aDebug.head();
5800 insert( lStr , aArg0 );
5801 insert( lStr , aArg1 );
5802 insert( lStr , aArg2 );
5803 insert( lStr , aArg3 );
5804 insert( lStr , aArg4 );
5805 insert( lStr , aArg5 );
5806 insert( lStr , aArg6 );
5807 insert( lStr , aArg7 );
5808 insert( lStr , aArg8 );
5809 insert( lStr , aArg9 );
5810 insert( lStr , aArg10 );
5811 insert( lStr , aArg11 );
5812 insert( lStr , aArg12 );
5813 insert( lStr , aArg13 );
5814 aDebug.tail();
5815 }
5816 #endif
5817 #endif
5818 #endif
5819 #endif
5820 #endif
5821 #endif
5822}
5823
5824template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 >
5825void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 )
5826{
5827 #ifndef LOGGING_EXCLUDE_FATAL
5828 #ifndef LOGGING_EXCLUDE_ERROR
5829 #ifndef LOGGING_EXCLUDE_WARNING
5830 #ifndef LOGGING_EXCLUDE_NOTICE
5831 #ifndef LOGGING_EXCLUDE_INFO
5832 #ifndef LOGGING_EXCLUDE_DEBUG
5833 if( LoggingIncludes( aDebug ) ){
5834 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5835 std::ostream& lStr( aDebug.stream() );
5836 aDebug.head();
5837 insert( lStr , aArg0 );
5838 insert( lStr , aArg1 );
5839 insert( lStr , aArg2 );
5840 insert( lStr , aArg3 );
5841 insert( lStr , aArg4 );
5842 insert( lStr , aArg5 );
5843 insert( lStr , aArg6 );
5844 insert( lStr , aArg7 );
5845 insert( lStr , aArg8 );
5846 insert( lStr , aArg9 );
5847 insert( lStr , aArg10 );
5848 insert( lStr , aArg11 );
5849 insert( lStr , aArg12 );
5850 insert( lStr , aArg13 );
5851 insert( lStr , aArg14 );
5852 aDebug.tail();
5853 }
5854 #endif
5855 #endif
5856 #endif
5857 #endif
5858 #endif
5859 #endif
5860}
5861
5862template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 >
5863void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 )
5864{
5865 #ifndef LOGGING_EXCLUDE_FATAL
5866 #ifndef LOGGING_EXCLUDE_ERROR
5867 #ifndef LOGGING_EXCLUDE_WARNING
5868 #ifndef LOGGING_EXCLUDE_NOTICE
5869 #ifndef LOGGING_EXCLUDE_INFO
5870 #ifndef LOGGING_EXCLUDE_DEBUG
5871 if( LoggingIncludes( aDebug ) ){
5872 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5873 std::ostream& lStr( aDebug.stream() );
5874 aDebug.head();
5875 insert( lStr , aArg0 );
5876 insert( lStr , aArg1 );
5877 insert( lStr , aArg2 );
5878 insert( lStr , aArg3 );
5879 insert( lStr , aArg4 );
5880 insert( lStr , aArg5 );
5881 insert( lStr , aArg6 );
5882 insert( lStr , aArg7 );
5883 insert( lStr , aArg8 );
5884 insert( lStr , aArg9 );
5885 insert( lStr , aArg10 );
5886 insert( lStr , aArg11 );
5887 insert( lStr , aArg12 );
5888 insert( lStr , aArg13 );
5889 insert( lStr , aArg14 );
5890 insert( lStr , aArg15 );
5891 aDebug.tail();
5892 }
5893 #endif
5894 #endif
5895 #endif
5896 #endif
5897 #endif
5898 #endif
5899}
5900
5901template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 >
5902void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 )
5903{
5904 #ifndef LOGGING_EXCLUDE_FATAL
5905 #ifndef LOGGING_EXCLUDE_ERROR
5906 #ifndef LOGGING_EXCLUDE_WARNING
5907 #ifndef LOGGING_EXCLUDE_NOTICE
5908 #ifndef LOGGING_EXCLUDE_INFO
5909 #ifndef LOGGING_EXCLUDE_DEBUG
5910 if( LoggingIncludes( aDebug ) ){
5911 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5912 std::ostream& lStr( aDebug.stream() );
5913 aDebug.head();
5914 insert( lStr , aArg0 );
5915 insert( lStr , aArg1 );
5916 insert( lStr , aArg2 );
5917 insert( lStr , aArg3 );
5918 insert( lStr , aArg4 );
5919 insert( lStr , aArg5 );
5920 insert( lStr , aArg6 );
5921 insert( lStr , aArg7 );
5922 insert( lStr , aArg8 );
5923 insert( lStr , aArg9 );
5924 insert( lStr , aArg10 );
5925 insert( lStr , aArg11 );
5926 insert( lStr , aArg12 );
5927 insert( lStr , aArg13 );
5928 insert( lStr , aArg14 );
5929 insert( lStr , aArg15 );
5930 insert( lStr , aArg16 );
5931 aDebug.tail();
5932 }
5933 #endif
5934 #endif
5935 #endif
5936 #endif
5937 #endif
5938 #endif
5939}
5940
5941template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 >
5942void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 )
5943{
5944 #ifndef LOGGING_EXCLUDE_FATAL
5945 #ifndef LOGGING_EXCLUDE_ERROR
5946 #ifndef LOGGING_EXCLUDE_WARNING
5947 #ifndef LOGGING_EXCLUDE_NOTICE
5948 #ifndef LOGGING_EXCLUDE_INFO
5949 #ifndef LOGGING_EXCLUDE_DEBUG
5950 if( LoggingIncludes( aDebug ) ){
5951 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5952 std::ostream& lStr( aDebug.stream() );
5953 aDebug.head();
5954 insert( lStr , aArg0 );
5955 insert( lStr , aArg1 );
5956 insert( lStr , aArg2 );
5957 insert( lStr , aArg3 );
5958 insert( lStr , aArg4 );
5959 insert( lStr , aArg5 );
5960 insert( lStr , aArg6 );
5961 insert( lStr , aArg7 );
5962 insert( lStr , aArg8 );
5963 insert( lStr , aArg9 );
5964 insert( lStr , aArg10 );
5965 insert( lStr , aArg11 );
5966 insert( lStr , aArg12 );
5967 insert( lStr , aArg13 );
5968 insert( lStr , aArg14 );
5969 insert( lStr , aArg15 );
5970 insert( lStr , aArg16 );
5971 insert( lStr , aArg17 );
5972 aDebug.tail();
5973 }
5974 #endif
5975 #endif
5976 #endif
5977 #endif
5978 #endif
5979 #endif
5980}
5981
5982template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 >
5983void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 )
5984{
5985 #ifndef LOGGING_EXCLUDE_FATAL
5986 #ifndef LOGGING_EXCLUDE_ERROR
5987 #ifndef LOGGING_EXCLUDE_WARNING
5988 #ifndef LOGGING_EXCLUDE_NOTICE
5989 #ifndef LOGGING_EXCLUDE_INFO
5990 #ifndef LOGGING_EXCLUDE_DEBUG
5991 if( LoggingIncludes( aDebug ) ){
5992 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
5993 std::ostream& lStr( aDebug.stream() );
5994 aDebug.head();
5995 insert( lStr , aArg0 );
5996 insert( lStr , aArg1 );
5997 insert( lStr , aArg2 );
5998 insert( lStr , aArg3 );
5999 insert( lStr , aArg4 );
6000 insert( lStr , aArg5 );
6001 insert( lStr , aArg6 );
6002 insert( lStr , aArg7 );
6003 insert( lStr , aArg8 );
6004 insert( lStr , aArg9 );
6005 insert( lStr , aArg10 );
6006 insert( lStr , aArg11 );
6007 insert( lStr , aArg12 );
6008 insert( lStr , aArg13 );
6009 insert( lStr , aArg14 );
6010 insert( lStr , aArg15 );
6011 insert( lStr , aArg16 );
6012 insert( lStr , aArg17 );
6013 insert( lStr , aArg18 );
6014 aDebug.tail();
6015 }
6016 #endif
6017 #endif
6018 #endif
6019 #endif
6020 #endif
6021 #endif
6022}
6023
6024template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 >
6025void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 )
6026{
6027 #ifndef LOGGING_EXCLUDE_FATAL
6028 #ifndef LOGGING_EXCLUDE_ERROR
6029 #ifndef LOGGING_EXCLUDE_WARNING
6030 #ifndef LOGGING_EXCLUDE_NOTICE
6031 #ifndef LOGGING_EXCLUDE_INFO
6032 #ifndef LOGGING_EXCLUDE_DEBUG
6033 if( LoggingIncludes( aDebug ) ){
6034 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6035 std::ostream& lStr( aDebug.stream() );
6036 aDebug.head();
6037 insert( lStr , aArg0 );
6038 insert( lStr , aArg1 );
6039 insert( lStr , aArg2 );
6040 insert( lStr , aArg3 );
6041 insert( lStr , aArg4 );
6042 insert( lStr , aArg5 );
6043 insert( lStr , aArg6 );
6044 insert( lStr , aArg7 );
6045 insert( lStr , aArg8 );
6046 insert( lStr , aArg9 );
6047 insert( lStr , aArg10 );
6048 insert( lStr , aArg11 );
6049 insert( lStr , aArg12 );
6050 insert( lStr , aArg13 );
6051 insert( lStr , aArg14 );
6052 insert( lStr , aArg15 );
6053 insert( lStr , aArg16 );
6054 insert( lStr , aArg17 );
6055 insert( lStr , aArg18 );
6056 insert( lStr , aArg19 );
6057 aDebug.tail();
6058 }
6059 #endif
6060 #endif
6061 #endif
6062 #endif
6063 #endif
6064 #endif
6065}
6066
6067template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 >
6068void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 )
6069{
6070 #ifndef LOGGING_EXCLUDE_FATAL
6071 #ifndef LOGGING_EXCLUDE_ERROR
6072 #ifndef LOGGING_EXCLUDE_WARNING
6073 #ifndef LOGGING_EXCLUDE_NOTICE
6074 #ifndef LOGGING_EXCLUDE_INFO
6075 #ifndef LOGGING_EXCLUDE_DEBUG
6076 if( LoggingIncludes( aDebug ) ){
6077 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6078 std::ostream& lStr( aDebug.stream() );
6079 aDebug.head();
6080 insert( lStr , aArg0 );
6081 insert( lStr , aArg1 );
6082 insert( lStr , aArg2 );
6083 insert( lStr , aArg3 );
6084 insert( lStr , aArg4 );
6085 insert( lStr , aArg5 );
6086 insert( lStr , aArg6 );
6087 insert( lStr , aArg7 );
6088 insert( lStr , aArg8 );
6089 insert( lStr , aArg9 );
6090 insert( lStr , aArg10 );
6091 insert( lStr , aArg11 );
6092 insert( lStr , aArg12 );
6093 insert( lStr , aArg13 );
6094 insert( lStr , aArg14 );
6095 insert( lStr , aArg15 );
6096 insert( lStr , aArg16 );
6097 insert( lStr , aArg17 );
6098 insert( lStr , aArg18 );
6099 insert( lStr , aArg19 );
6100 insert( lStr , aArg20 );
6101 aDebug.tail();
6102 }
6103 #endif
6104 #endif
6105 #endif
6106 #endif
6107 #endif
6108 #endif
6109}
6110
6111template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 >
6112void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 )
6113{
6114 #ifndef LOGGING_EXCLUDE_FATAL
6115 #ifndef LOGGING_EXCLUDE_ERROR
6116 #ifndef LOGGING_EXCLUDE_WARNING
6117 #ifndef LOGGING_EXCLUDE_NOTICE
6118 #ifndef LOGGING_EXCLUDE_INFO
6119 #ifndef LOGGING_EXCLUDE_DEBUG
6120 if( LoggingIncludes( aDebug ) ){
6121 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6122 std::ostream& lStr( aDebug.stream() );
6123 aDebug.head();
6124 insert( lStr , aArg0 );
6125 insert( lStr , aArg1 );
6126 insert( lStr , aArg2 );
6127 insert( lStr , aArg3 );
6128 insert( lStr , aArg4 );
6129 insert( lStr , aArg5 );
6130 insert( lStr , aArg6 );
6131 insert( lStr , aArg7 );
6132 insert( lStr , aArg8 );
6133 insert( lStr , aArg9 );
6134 insert( lStr , aArg10 );
6135 insert( lStr , aArg11 );
6136 insert( lStr , aArg12 );
6137 insert( lStr , aArg13 );
6138 insert( lStr , aArg14 );
6139 insert( lStr , aArg15 );
6140 insert( lStr , aArg16 );
6141 insert( lStr , aArg17 );
6142 insert( lStr , aArg18 );
6143 insert( lStr , aArg19 );
6144 insert( lStr , aArg20 );
6145 insert( lStr , aArg21 );
6146 aDebug.tail();
6147 }
6148 #endif
6149 #endif
6150 #endif
6151 #endif
6152 #endif
6153 #endif
6154}
6155
6156template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 >
6157void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 )
6158{
6159 #ifndef LOGGING_EXCLUDE_FATAL
6160 #ifndef LOGGING_EXCLUDE_ERROR
6161 #ifndef LOGGING_EXCLUDE_WARNING
6162 #ifndef LOGGING_EXCLUDE_NOTICE
6163 #ifndef LOGGING_EXCLUDE_INFO
6164 #ifndef LOGGING_EXCLUDE_DEBUG
6165 if( LoggingIncludes( aDebug ) ){
6166 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6167 std::ostream& lStr( aDebug.stream() );
6168 aDebug.head();
6169 insert( lStr , aArg0 );
6170 insert( lStr , aArg1 );
6171 insert( lStr , aArg2 );
6172 insert( lStr , aArg3 );
6173 insert( lStr , aArg4 );
6174 insert( lStr , aArg5 );
6175 insert( lStr , aArg6 );
6176 insert( lStr , aArg7 );
6177 insert( lStr , aArg8 );
6178 insert( lStr , aArg9 );
6179 insert( lStr , aArg10 );
6180 insert( lStr , aArg11 );
6181 insert( lStr , aArg12 );
6182 insert( lStr , aArg13 );
6183 insert( lStr , aArg14 );
6184 insert( lStr , aArg15 );
6185 insert( lStr , aArg16 );
6186 insert( lStr , aArg17 );
6187 insert( lStr , aArg18 );
6188 insert( lStr , aArg19 );
6189 insert( lStr , aArg20 );
6190 insert( lStr , aArg21 );
6191 insert( lStr , aArg22 );
6192 aDebug.tail();
6193 }
6194 #endif
6195 #endif
6196 #endif
6197 #endif
6198 #endif
6199 #endif
6200}
6201
6202template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 >
6203void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 )
6204{
6205 #ifndef LOGGING_EXCLUDE_FATAL
6206 #ifndef LOGGING_EXCLUDE_ERROR
6207 #ifndef LOGGING_EXCLUDE_WARNING
6208 #ifndef LOGGING_EXCLUDE_NOTICE
6209 #ifndef LOGGING_EXCLUDE_INFO
6210 #ifndef LOGGING_EXCLUDE_DEBUG
6211 if( LoggingIncludes( aDebug ) ){
6212 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6213 std::ostream& lStr( aDebug.stream() );
6214 aDebug.head();
6215 insert( lStr , aArg0 );
6216 insert( lStr , aArg1 );
6217 insert( lStr , aArg2 );
6218 insert( lStr , aArg3 );
6219 insert( lStr , aArg4 );
6220 insert( lStr , aArg5 );
6221 insert( lStr , aArg6 );
6222 insert( lStr , aArg7 );
6223 insert( lStr , aArg8 );
6224 insert( lStr , aArg9 );
6225 insert( lStr , aArg10 );
6226 insert( lStr , aArg11 );
6227 insert( lStr , aArg12 );
6228 insert( lStr , aArg13 );
6229 insert( lStr , aArg14 );
6230 insert( lStr , aArg15 );
6231 insert( lStr , aArg16 );
6232 insert( lStr , aArg17 );
6233 insert( lStr , aArg18 );
6234 insert( lStr , aArg19 );
6235 insert( lStr , aArg20 );
6236 insert( lStr , aArg21 );
6237 insert( lStr , aArg22 );
6238 insert( lStr , aArg23 );
6239 aDebug.tail();
6240 }
6241 #endif
6242 #endif
6243 #endif
6244 #endif
6245 #endif
6246 #endif
6247}
6248
6249template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 >
6250void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 )
6251{
6252 #ifndef LOGGING_EXCLUDE_FATAL
6253 #ifndef LOGGING_EXCLUDE_ERROR
6254 #ifndef LOGGING_EXCLUDE_WARNING
6255 #ifndef LOGGING_EXCLUDE_NOTICE
6256 #ifndef LOGGING_EXCLUDE_INFO
6257 #ifndef LOGGING_EXCLUDE_DEBUG
6258 if( LoggingIncludes( aDebug ) ){
6259 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6260 std::ostream& lStr( aDebug.stream() );
6261 aDebug.head();
6262 insert( lStr , aArg0 );
6263 insert( lStr , aArg1 );
6264 insert( lStr , aArg2 );
6265 insert( lStr , aArg3 );
6266 insert( lStr , aArg4 );
6267 insert( lStr , aArg5 );
6268 insert( lStr , aArg6 );
6269 insert( lStr , aArg7 );
6270 insert( lStr , aArg8 );
6271 insert( lStr , aArg9 );
6272 insert( lStr , aArg10 );
6273 insert( lStr , aArg11 );
6274 insert( lStr , aArg12 );
6275 insert( lStr , aArg13 );
6276 insert( lStr , aArg14 );
6277 insert( lStr , aArg15 );
6278 insert( lStr , aArg16 );
6279 insert( lStr , aArg17 );
6280 insert( lStr , aArg18 );
6281 insert( lStr , aArg19 );
6282 insert( lStr , aArg20 );
6283 insert( lStr , aArg21 );
6284 insert( lStr , aArg22 );
6285 insert( lStr , aArg23 );
6286 insert( lStr , aArg24 );
6287 aDebug.tail();
6288 }
6289 #endif
6290 #endif
6291 #endif
6292 #endif
6293 #endif
6294 #endif
6295}
6296
6297template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 >
6298void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 )
6299{
6300 #ifndef LOGGING_EXCLUDE_FATAL
6301 #ifndef LOGGING_EXCLUDE_ERROR
6302 #ifndef LOGGING_EXCLUDE_WARNING
6303 #ifndef LOGGING_EXCLUDE_NOTICE
6304 #ifndef LOGGING_EXCLUDE_INFO
6305 #ifndef LOGGING_EXCLUDE_DEBUG
6306 if( LoggingIncludes( aDebug ) ){
6307 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6308 std::ostream& lStr( aDebug.stream() );
6309 aDebug.head();
6310 insert( lStr , aArg0 );
6311 insert( lStr , aArg1 );
6312 insert( lStr , aArg2 );
6313 insert( lStr , aArg3 );
6314 insert( lStr , aArg4 );
6315 insert( lStr , aArg5 );
6316 insert( lStr , aArg6 );
6317 insert( lStr , aArg7 );
6318 insert( lStr , aArg8 );
6319 insert( lStr , aArg9 );
6320 insert( lStr , aArg10 );
6321 insert( lStr , aArg11 );
6322 insert( lStr , aArg12 );
6323 insert( lStr , aArg13 );
6324 insert( lStr , aArg14 );
6325 insert( lStr , aArg15 );
6326 insert( lStr , aArg16 );
6327 insert( lStr , aArg17 );
6328 insert( lStr , aArg18 );
6329 insert( lStr , aArg19 );
6330 insert( lStr , aArg20 );
6331 insert( lStr , aArg21 );
6332 insert( lStr , aArg22 );
6333 insert( lStr , aArg23 );
6334 insert( lStr , aArg24 );
6335 insert( lStr , aArg25 );
6336 aDebug.tail();
6337 }
6338 #endif
6339 #endif
6340 #endif
6341 #endif
6342 #endif
6343 #endif
6344}
6345
6346template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 >
6347void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 )
6348{
6349 #ifndef LOGGING_EXCLUDE_FATAL
6350 #ifndef LOGGING_EXCLUDE_ERROR
6351 #ifndef LOGGING_EXCLUDE_WARNING
6352 #ifndef LOGGING_EXCLUDE_NOTICE
6353 #ifndef LOGGING_EXCLUDE_INFO
6354 #ifndef LOGGING_EXCLUDE_DEBUG
6355 if( LoggingIncludes( aDebug ) ){
6356 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6357 std::ostream& lStr( aDebug.stream() );
6358 aDebug.head();
6359 insert( lStr , aArg0 );
6360 insert( lStr , aArg1 );
6361 insert( lStr , aArg2 );
6362 insert( lStr , aArg3 );
6363 insert( lStr , aArg4 );
6364 insert( lStr , aArg5 );
6365 insert( lStr , aArg6 );
6366 insert( lStr , aArg7 );
6367 insert( lStr , aArg8 );
6368 insert( lStr , aArg9 );
6369 insert( lStr , aArg10 );
6370 insert( lStr , aArg11 );
6371 insert( lStr , aArg12 );
6372 insert( lStr , aArg13 );
6373 insert( lStr , aArg14 );
6374 insert( lStr , aArg15 );
6375 insert( lStr , aArg16 );
6376 insert( lStr , aArg17 );
6377 insert( lStr , aArg18 );
6378 insert( lStr , aArg19 );
6379 insert( lStr , aArg20 );
6380 insert( lStr , aArg21 );
6381 insert( lStr , aArg22 );
6382 insert( lStr , aArg23 );
6383 insert( lStr , aArg24 );
6384 insert( lStr , aArg25 );
6385 insert( lStr , aArg26 );
6386 aDebug.tail();
6387 }
6388 #endif
6389 #endif
6390 #endif
6391 #endif
6392 #endif
6393 #endif
6394}
6395
6396template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 >
6397void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 )
6398{
6399 #ifndef LOGGING_EXCLUDE_FATAL
6400 #ifndef LOGGING_EXCLUDE_ERROR
6401 #ifndef LOGGING_EXCLUDE_WARNING
6402 #ifndef LOGGING_EXCLUDE_NOTICE
6403 #ifndef LOGGING_EXCLUDE_INFO
6404 #ifndef LOGGING_EXCLUDE_DEBUG
6405 if( LoggingIncludes( aDebug ) ){
6406 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6407 std::ostream& lStr( aDebug.stream() );
6408 aDebug.head();
6409 insert( lStr , aArg0 );
6410 insert( lStr , aArg1 );
6411 insert( lStr , aArg2 );
6412 insert( lStr , aArg3 );
6413 insert( lStr , aArg4 );
6414 insert( lStr , aArg5 );
6415 insert( lStr , aArg6 );
6416 insert( lStr , aArg7 );
6417 insert( lStr , aArg8 );
6418 insert( lStr , aArg9 );
6419 insert( lStr , aArg10 );
6420 insert( lStr , aArg11 );
6421 insert( lStr , aArg12 );
6422 insert( lStr , aArg13 );
6423 insert( lStr , aArg14 );
6424 insert( lStr , aArg15 );
6425 insert( lStr , aArg16 );
6426 insert( lStr , aArg17 );
6427 insert( lStr , aArg18 );
6428 insert( lStr , aArg19 );
6429 insert( lStr , aArg20 );
6430 insert( lStr , aArg21 );
6431 insert( lStr , aArg22 );
6432 insert( lStr , aArg23 );
6433 insert( lStr , aArg24 );
6434 insert( lStr , aArg25 );
6435 insert( lStr , aArg26 );
6436 insert( lStr , aArg27 );
6437 aDebug.tail();
6438 }
6439 #endif
6440 #endif
6441 #endif
6442 #endif
6443 #endif
6444 #endif
6445}
6446
6447template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 >
6448void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 )
6449{
6450 #ifndef LOGGING_EXCLUDE_FATAL
6451 #ifndef LOGGING_EXCLUDE_ERROR
6452 #ifndef LOGGING_EXCLUDE_WARNING
6453 #ifndef LOGGING_EXCLUDE_NOTICE
6454 #ifndef LOGGING_EXCLUDE_INFO
6455 #ifndef LOGGING_EXCLUDE_DEBUG
6456 if( LoggingIncludes( aDebug ) ){
6457 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6458 std::ostream& lStr( aDebug.stream() );
6459 aDebug.head();
6460 insert( lStr , aArg0 );
6461 insert( lStr , aArg1 );
6462 insert( lStr , aArg2 );
6463 insert( lStr , aArg3 );
6464 insert( lStr , aArg4 );
6465 insert( lStr , aArg5 );
6466 insert( lStr , aArg6 );
6467 insert( lStr , aArg7 );
6468 insert( lStr , aArg8 );
6469 insert( lStr , aArg9 );
6470 insert( lStr , aArg10 );
6471 insert( lStr , aArg11 );
6472 insert( lStr , aArg12 );
6473 insert( lStr , aArg13 );
6474 insert( lStr , aArg14 );
6475 insert( lStr , aArg15 );
6476 insert( lStr , aArg16 );
6477 insert( lStr , aArg17 );
6478 insert( lStr , aArg18 );
6479 insert( lStr , aArg19 );
6480 insert( lStr , aArg20 );
6481 insert( lStr , aArg21 );
6482 insert( lStr , aArg22 );
6483 insert( lStr , aArg23 );
6484 insert( lStr , aArg24 );
6485 insert( lStr , aArg25 );
6486 insert( lStr , aArg26 );
6487 insert( lStr , aArg27 );
6488 insert( lStr , aArg28 );
6489 aDebug.tail();
6490 }
6491 #endif
6492 #endif
6493 #endif
6494 #endif
6495 #endif
6496 #endif
6497}
6498
6499template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 >
6500void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 )
6501{
6502 #ifndef LOGGING_EXCLUDE_FATAL
6503 #ifndef LOGGING_EXCLUDE_ERROR
6504 #ifndef LOGGING_EXCLUDE_WARNING
6505 #ifndef LOGGING_EXCLUDE_NOTICE
6506 #ifndef LOGGING_EXCLUDE_INFO
6507 #ifndef LOGGING_EXCLUDE_DEBUG
6508 if( LoggingIncludes( aDebug ) ){
6509 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6510 std::ostream& lStr( aDebug.stream() );
6511 aDebug.head();
6512 insert( lStr , aArg0 );
6513 insert( lStr , aArg1 );
6514 insert( lStr , aArg2 );
6515 insert( lStr , aArg3 );
6516 insert( lStr , aArg4 );
6517 insert( lStr , aArg5 );
6518 insert( lStr , aArg6 );
6519 insert( lStr , aArg7 );
6520 insert( lStr , aArg8 );
6521 insert( lStr , aArg9 );
6522 insert( lStr , aArg10 );
6523 insert( lStr , aArg11 );
6524 insert( lStr , aArg12 );
6525 insert( lStr , aArg13 );
6526 insert( lStr , aArg14 );
6527 insert( lStr , aArg15 );
6528 insert( lStr , aArg16 );
6529 insert( lStr , aArg17 );
6530 insert( lStr , aArg18 );
6531 insert( lStr , aArg19 );
6532 insert( lStr , aArg20 );
6533 insert( lStr , aArg21 );
6534 insert( lStr , aArg22 );
6535 insert( lStr , aArg23 );
6536 insert( lStr , aArg24 );
6537 insert( lStr , aArg25 );
6538 insert( lStr , aArg26 );
6539 insert( lStr , aArg27 );
6540 insert( lStr , aArg28 );
6541 insert( lStr , aArg29 );
6542 aDebug.tail();
6543 }
6544 #endif
6545 #endif
6546 #endif
6547 #endif
6548 #endif
6549 #endif
6550}
6551
6552template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 >
6553void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 )
6554{
6555 #ifndef LOGGING_EXCLUDE_FATAL
6556 #ifndef LOGGING_EXCLUDE_ERROR
6557 #ifndef LOGGING_EXCLUDE_WARNING
6558 #ifndef LOGGING_EXCLUDE_NOTICE
6559 #ifndef LOGGING_EXCLUDE_INFO
6560 #ifndef LOGGING_EXCLUDE_DEBUG
6561 if( LoggingIncludes( aDebug ) ){
6562 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6563 std::ostream& lStr( aDebug.stream() );
6564 aDebug.head();
6565 insert( lStr , aArg0 );
6566 insert( lStr , aArg1 );
6567 insert( lStr , aArg2 );
6568 insert( lStr , aArg3 );
6569 insert( lStr , aArg4 );
6570 insert( lStr , aArg5 );
6571 insert( lStr , aArg6 );
6572 insert( lStr , aArg7 );
6573 insert( lStr , aArg8 );
6574 insert( lStr , aArg9 );
6575 insert( lStr , aArg10 );
6576 insert( lStr , aArg11 );
6577 insert( lStr , aArg12 );
6578 insert( lStr , aArg13 );
6579 insert( lStr , aArg14 );
6580 insert( lStr , aArg15 );
6581 insert( lStr , aArg16 );
6582 insert( lStr , aArg17 );
6583 insert( lStr , aArg18 );
6584 insert( lStr , aArg19 );
6585 insert( lStr , aArg20 );
6586 insert( lStr , aArg21 );
6587 insert( lStr , aArg22 );
6588 insert( lStr , aArg23 );
6589 insert( lStr , aArg24 );
6590 insert( lStr , aArg25 );
6591 insert( lStr , aArg26 );
6592 insert( lStr , aArg27 );
6593 insert( lStr , aArg28 );
6594 insert( lStr , aArg29 );
6595 insert( lStr , aArg30 );
6596 aDebug.tail();
6597 }
6598 #endif
6599 #endif
6600 #endif
6601 #endif
6602 #endif
6603 #endif
6604}
6605
6606template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 , typename T31 >
6607void log ( DebugLevel& aDebug , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 , const T31& aArg31 )
6608{
6609 #ifndef LOGGING_EXCLUDE_FATAL
6610 #ifndef LOGGING_EXCLUDE_ERROR
6611 #ifndef LOGGING_EXCLUDE_WARNING
6612 #ifndef LOGGING_EXCLUDE_NOTICE
6613 #ifndef LOGGING_EXCLUDE_INFO
6614 #ifndef LOGGING_EXCLUDE_DEBUG
6615 if( LoggingIncludes( aDebug ) ){
6616 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6617 std::ostream& lStr( aDebug.stream() );
6618 aDebug.head();
6619 insert( lStr , aArg0 );
6620 insert( lStr , aArg1 );
6621 insert( lStr , aArg2 );
6622 insert( lStr , aArg3 );
6623 insert( lStr , aArg4 );
6624 insert( lStr , aArg5 );
6625 insert( lStr , aArg6 );
6626 insert( lStr , aArg7 );
6627 insert( lStr , aArg8 );
6628 insert( lStr , aArg9 );
6629 insert( lStr , aArg10 );
6630 insert( lStr , aArg11 );
6631 insert( lStr , aArg12 );
6632 insert( lStr , aArg13 );
6633 insert( lStr , aArg14 );
6634 insert( lStr , aArg15 );
6635 insert( lStr , aArg16 );
6636 insert( lStr , aArg17 );
6637 insert( lStr , aArg18 );
6638 insert( lStr , aArg19 );
6639 insert( lStr , aArg20 );
6640 insert( lStr , aArg21 );
6641 insert( lStr , aArg22 );
6642 insert( lStr , aArg23 );
6643 insert( lStr , aArg24 );
6644 insert( lStr , aArg25 );
6645 insert( lStr , aArg26 );
6646 insert( lStr , aArg27 );
6647 insert( lStr , aArg28 );
6648 insert( lStr , aArg29 );
6649 insert( lStr , aArg30 );
6650 insert( lStr , aArg31 );
6651 aDebug.tail();
6652 }
6653 #endif
6654 #endif
6655 #endif
6656 #endif
6657 #endif
6658 #endif
6659}
6660
6661// ======================================================================================================================================================
6662// WARNING! This file is automatically generated! Do not modify it! Any changes will be overwritten!
6663// ======================================================================================================================================================
6664
6665template< typename T0 >
6666void log ( exception::exception& aExc , const T0& aArg0 )
6667{
6668 std::stringstream lStr;
6669 {
6670 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6671 insert( lStr , aArg0 );
6672 aExc.append( ( lStr.str() + "\n" ).c_str() );
6673 }
6674 log ( Error() , lStr.str() );
6675}
6676
6677template< typename T0 , typename T1 >
6678void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 )
6679{
6680 std::stringstream lStr;
6681 {
6682 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6683 insert( lStr , aArg0 );
6684 insert( lStr , aArg1 );
6685 aExc.append( ( lStr.str() + "\n" ).c_str() );
6686 }
6687 log ( Error() , lStr.str() );
6688}
6689
6690template< typename T0 , typename T1 , typename T2 >
6691void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 )
6692{
6693 std::stringstream lStr;
6694 {
6695 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6696 insert( lStr , aArg0 );
6697 insert( lStr , aArg1 );
6698 insert( lStr , aArg2 );
6699 aExc.append( ( lStr.str() + "\n" ).c_str() );
6700 }
6701 log ( Error() , lStr.str() );
6702}
6703
6704template< typename T0 , typename T1 , typename T2 , typename T3 >
6705void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 )
6706{
6707 std::stringstream lStr;
6708 {
6709 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6710 insert( lStr , aArg0 );
6711 insert( lStr , aArg1 );
6712 insert( lStr , aArg2 );
6713 insert( lStr , aArg3 );
6714 aExc.append( ( lStr.str() + "\n" ).c_str() );
6715 }
6716 log ( Error() , lStr.str() );
6717}
6718
6719template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
6720void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 )
6721{
6722 std::stringstream lStr;
6723 {
6724 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6725 insert( lStr , aArg0 );
6726 insert( lStr , aArg1 );
6727 insert( lStr , aArg2 );
6728 insert( lStr , aArg3 );
6729 insert( lStr , aArg4 );
6730 aExc.append( ( lStr.str() + "\n" ).c_str() );
6731 }
6732 log ( Error() , lStr.str() );
6733}
6734
6735template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
6736void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 )
6737{
6738 std::stringstream lStr;
6739 {
6740 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6741 insert( lStr , aArg0 );
6742 insert( lStr , aArg1 );
6743 insert( lStr , aArg2 );
6744 insert( lStr , aArg3 );
6745 insert( lStr , aArg4 );
6746 insert( lStr , aArg5 );
6747 aExc.append( ( lStr.str() + "\n" ).c_str() );
6748 }
6749 log ( Error() , lStr.str() );
6750}
6751
6752template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
6753void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 )
6754{
6755 std::stringstream lStr;
6756 {
6757 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6758 insert( lStr , aArg0 );
6759 insert( lStr , aArg1 );
6760 insert( lStr , aArg2 );
6761 insert( lStr , aArg3 );
6762 insert( lStr , aArg4 );
6763 insert( lStr , aArg5 );
6764 insert( lStr , aArg6 );
6765 aExc.append( ( lStr.str() + "\n" ).c_str() );
6766 }
6767 log ( Error() , lStr.str() );
6768}
6769
6770template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
6771void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 )
6772{
6773 std::stringstream lStr;
6774 {
6775 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6776 insert( lStr , aArg0 );
6777 insert( lStr , aArg1 );
6778 insert( lStr , aArg2 );
6779 insert( lStr , aArg3 );
6780 insert( lStr , aArg4 );
6781 insert( lStr , aArg5 );
6782 insert( lStr , aArg6 );
6783 insert( lStr , aArg7 );
6784 aExc.append( ( lStr.str() + "\n" ).c_str() );
6785 }
6786 log ( Error() , lStr.str() );
6787}
6788
6789template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
6790void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 )
6791{
6792 std::stringstream lStr;
6793 {
6794 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6795 insert( lStr , aArg0 );
6796 insert( lStr , aArg1 );
6797 insert( lStr , aArg2 );
6798 insert( lStr , aArg3 );
6799 insert( lStr , aArg4 );
6800 insert( lStr , aArg5 );
6801 insert( lStr , aArg6 );
6802 insert( lStr , aArg7 );
6803 insert( lStr , aArg8 );
6804 aExc.append( ( lStr.str() + "\n" ).c_str() );
6805 }
6806 log ( Error() , lStr.str() );
6807}
6808
6809template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
6810void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 )
6811{
6812 std::stringstream lStr;
6813 {
6814 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6815 insert( lStr , aArg0 );
6816 insert( lStr , aArg1 );
6817 insert( lStr , aArg2 );
6818 insert( lStr , aArg3 );
6819 insert( lStr , aArg4 );
6820 insert( lStr , aArg5 );
6821 insert( lStr , aArg6 );
6822 insert( lStr , aArg7 );
6823 insert( lStr , aArg8 );
6824 insert( lStr , aArg9 );
6825 aExc.append( ( lStr.str() + "\n" ).c_str() );
6826 }
6827 log ( Error() , lStr.str() );
6828}
6829
6830template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
6831void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 )
6832{
6833 std::stringstream lStr;
6834 {
6835 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6836 insert( lStr , aArg0 );
6837 insert( lStr , aArg1 );
6838 insert( lStr , aArg2 );
6839 insert( lStr , aArg3 );
6840 insert( lStr , aArg4 );
6841 insert( lStr , aArg5 );
6842 insert( lStr , aArg6 );
6843 insert( lStr , aArg7 );
6844 insert( lStr , aArg8 );
6845 insert( lStr , aArg9 );
6846 insert( lStr , aArg10 );
6847 aExc.append( ( lStr.str() + "\n" ).c_str() );
6848 }
6849 log ( Error() , lStr.str() );
6850}
6851
6852template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 >
6853void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 )
6854{
6855 std::stringstream lStr;
6856 {
6857 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6858 insert( lStr , aArg0 );
6859 insert( lStr , aArg1 );
6860 insert( lStr , aArg2 );
6861 insert( lStr , aArg3 );
6862 insert( lStr , aArg4 );
6863 insert( lStr , aArg5 );
6864 insert( lStr , aArg6 );
6865 insert( lStr , aArg7 );
6866 insert( lStr , aArg8 );
6867 insert( lStr , aArg9 );
6868 insert( lStr , aArg10 );
6869 insert( lStr , aArg11 );
6870 aExc.append( ( lStr.str() + "\n" ).c_str() );
6871 }
6872 log ( Error() , lStr.str() );
6873}
6874
6875template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 >
6876void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 )
6877{
6878 std::stringstream lStr;
6879 {
6880 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6881 insert( lStr , aArg0 );
6882 insert( lStr , aArg1 );
6883 insert( lStr , aArg2 );
6884 insert( lStr , aArg3 );
6885 insert( lStr , aArg4 );
6886 insert( lStr , aArg5 );
6887 insert( lStr , aArg6 );
6888 insert( lStr , aArg7 );
6889 insert( lStr , aArg8 );
6890 insert( lStr , aArg9 );
6891 insert( lStr , aArg10 );
6892 insert( lStr , aArg11 );
6893 insert( lStr , aArg12 );
6894 aExc.append( ( lStr.str() + "\n" ).c_str() );
6895 }
6896 log ( Error() , lStr.str() );
6897}
6898
6899template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 >
6900void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 )
6901{
6902 std::stringstream lStr;
6903 {
6904 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6905 insert( lStr , aArg0 );
6906 insert( lStr , aArg1 );
6907 insert( lStr , aArg2 );
6908 insert( lStr , aArg3 );
6909 insert( lStr , aArg4 );
6910 insert( lStr , aArg5 );
6911 insert( lStr , aArg6 );
6912 insert( lStr , aArg7 );
6913 insert( lStr , aArg8 );
6914 insert( lStr , aArg9 );
6915 insert( lStr , aArg10 );
6916 insert( lStr , aArg11 );
6917 insert( lStr , aArg12 );
6918 insert( lStr , aArg13 );
6919 aExc.append( ( lStr.str() + "\n" ).c_str() );
6920 }
6921 log ( Error() , lStr.str() );
6922}
6923
6924template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 >
6925void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 )
6926{
6927 std::stringstream lStr;
6928 {
6929 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6930 insert( lStr , aArg0 );
6931 insert( lStr , aArg1 );
6932 insert( lStr , aArg2 );
6933 insert( lStr , aArg3 );
6934 insert( lStr , aArg4 );
6935 insert( lStr , aArg5 );
6936 insert( lStr , aArg6 );
6937 insert( lStr , aArg7 );
6938 insert( lStr , aArg8 );
6939 insert( lStr , aArg9 );
6940 insert( lStr , aArg10 );
6941 insert( lStr , aArg11 );
6942 insert( lStr , aArg12 );
6943 insert( lStr , aArg13 );
6944 insert( lStr , aArg14 );
6945 aExc.append( ( lStr.str() + "\n" ).c_str() );
6946 }
6947 log ( Error() , lStr.str() );
6948}
6949
6950template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 >
6951void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 )
6952{
6953 std::stringstream lStr;
6954 {
6955 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6956 insert( lStr , aArg0 );
6957 insert( lStr , aArg1 );
6958 insert( lStr , aArg2 );
6959 insert( lStr , aArg3 );
6960 insert( lStr , aArg4 );
6961 insert( lStr , aArg5 );
6962 insert( lStr , aArg6 );
6963 insert( lStr , aArg7 );
6964 insert( lStr , aArg8 );
6965 insert( lStr , aArg9 );
6966 insert( lStr , aArg10 );
6967 insert( lStr , aArg11 );
6968 insert( lStr , aArg12 );
6969 insert( lStr , aArg13 );
6970 insert( lStr , aArg14 );
6971 insert( lStr , aArg15 );
6972 aExc.append( ( lStr.str() + "\n" ).c_str() );
6973 }
6974 log ( Error() , lStr.str() );
6975}
6976
6977template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 >
6978void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 )
6979{
6980 std::stringstream lStr;
6981 {
6982 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
6983 insert( lStr , aArg0 );
6984 insert( lStr , aArg1 );
6985 insert( lStr , aArg2 );
6986 insert( lStr , aArg3 );
6987 insert( lStr , aArg4 );
6988 insert( lStr , aArg5 );
6989 insert( lStr , aArg6 );
6990 insert( lStr , aArg7 );
6991 insert( lStr , aArg8 );
6992 insert( lStr , aArg9 );
6993 insert( lStr , aArg10 );
6994 insert( lStr , aArg11 );
6995 insert( lStr , aArg12 );
6996 insert( lStr , aArg13 );
6997 insert( lStr , aArg14 );
6998 insert( lStr , aArg15 );
6999 insert( lStr , aArg16 );
7000 aExc.append( ( lStr.str() + "\n" ).c_str() );
7001 }
7002 log ( Error() , lStr.str() );
7003}
7004
7005template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 >
7006void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 )
7007{
7008 std::stringstream lStr;
7009 {
7010 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7011 insert( lStr , aArg0 );
7012 insert( lStr , aArg1 );
7013 insert( lStr , aArg2 );
7014 insert( lStr , aArg3 );
7015 insert( lStr , aArg4 );
7016 insert( lStr , aArg5 );
7017 insert( lStr , aArg6 );
7018 insert( lStr , aArg7 );
7019 insert( lStr , aArg8 );
7020 insert( lStr , aArg9 );
7021 insert( lStr , aArg10 );
7022 insert( lStr , aArg11 );
7023 insert( lStr , aArg12 );
7024 insert( lStr , aArg13 );
7025 insert( lStr , aArg14 );
7026 insert( lStr , aArg15 );
7027 insert( lStr , aArg16 );
7028 insert( lStr , aArg17 );
7029 aExc.append( ( lStr.str() + "\n" ).c_str() );
7030 }
7031 log ( Error() , lStr.str() );
7032}
7033
7034template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 >
7035void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 )
7036{
7037 std::stringstream lStr;
7038 {
7039 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7040 insert( lStr , aArg0 );
7041 insert( lStr , aArg1 );
7042 insert( lStr , aArg2 );
7043 insert( lStr , aArg3 );
7044 insert( lStr , aArg4 );
7045 insert( lStr , aArg5 );
7046 insert( lStr , aArg6 );
7047 insert( lStr , aArg7 );
7048 insert( lStr , aArg8 );
7049 insert( lStr , aArg9 );
7050 insert( lStr , aArg10 );
7051 insert( lStr , aArg11 );
7052 insert( lStr , aArg12 );
7053 insert( lStr , aArg13 );
7054 insert( lStr , aArg14 );
7055 insert( lStr , aArg15 );
7056 insert( lStr , aArg16 );
7057 insert( lStr , aArg17 );
7058 insert( lStr , aArg18 );
7059 aExc.append( ( lStr.str() + "\n" ).c_str() );
7060 }
7061 log ( Error() , lStr.str() );
7062}
7063
7064template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 >
7065void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 )
7066{
7067 std::stringstream lStr;
7068 {
7069 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7070 insert( lStr , aArg0 );
7071 insert( lStr , aArg1 );
7072 insert( lStr , aArg2 );
7073 insert( lStr , aArg3 );
7074 insert( lStr , aArg4 );
7075 insert( lStr , aArg5 );
7076 insert( lStr , aArg6 );
7077 insert( lStr , aArg7 );
7078 insert( lStr , aArg8 );
7079 insert( lStr , aArg9 );
7080 insert( lStr , aArg10 );
7081 insert( lStr , aArg11 );
7082 insert( lStr , aArg12 );
7083 insert( lStr , aArg13 );
7084 insert( lStr , aArg14 );
7085 insert( lStr , aArg15 );
7086 insert( lStr , aArg16 );
7087 insert( lStr , aArg17 );
7088 insert( lStr , aArg18 );
7089 insert( lStr , aArg19 );
7090 aExc.append( ( lStr.str() + "\n" ).c_str() );
7091 }
7092 log ( Error() , lStr.str() );
7093}
7094
7095template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 >
7096void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 )
7097{
7098 std::stringstream lStr;
7099 {
7100 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7101 insert( lStr , aArg0 );
7102 insert( lStr , aArg1 );
7103 insert( lStr , aArg2 );
7104 insert( lStr , aArg3 );
7105 insert( lStr , aArg4 );
7106 insert( lStr , aArg5 );
7107 insert( lStr , aArg6 );
7108 insert( lStr , aArg7 );
7109 insert( lStr , aArg8 );
7110 insert( lStr , aArg9 );
7111 insert( lStr , aArg10 );
7112 insert( lStr , aArg11 );
7113 insert( lStr , aArg12 );
7114 insert( lStr , aArg13 );
7115 insert( lStr , aArg14 );
7116 insert( lStr , aArg15 );
7117 insert( lStr , aArg16 );
7118 insert( lStr , aArg17 );
7119 insert( lStr , aArg18 );
7120 insert( lStr , aArg19 );
7121 insert( lStr , aArg20 );
7122 aExc.append( ( lStr.str() + "\n" ).c_str() );
7123 }
7124 log ( Error() , lStr.str() );
7125}
7126
7127template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 >
7128void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 )
7129{
7130 std::stringstream lStr;
7131 {
7132 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7133 insert( lStr , aArg0 );
7134 insert( lStr , aArg1 );
7135 insert( lStr , aArg2 );
7136 insert( lStr , aArg3 );
7137 insert( lStr , aArg4 );
7138 insert( lStr , aArg5 );
7139 insert( lStr , aArg6 );
7140 insert( lStr , aArg7 );
7141 insert( lStr , aArg8 );
7142 insert( lStr , aArg9 );
7143 insert( lStr , aArg10 );
7144 insert( lStr , aArg11 );
7145 insert( lStr , aArg12 );
7146 insert( lStr , aArg13 );
7147 insert( lStr , aArg14 );
7148 insert( lStr , aArg15 );
7149 insert( lStr , aArg16 );
7150 insert( lStr , aArg17 );
7151 insert( lStr , aArg18 );
7152 insert( lStr , aArg19 );
7153 insert( lStr , aArg20 );
7154 insert( lStr , aArg21 );
7155 aExc.append( ( lStr.str() + "\n" ).c_str() );
7156 }
7157 log ( Error() , lStr.str() );
7158}
7159
7160template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 >
7161void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 )
7162{
7163 std::stringstream lStr;
7164 {
7165 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7166 insert( lStr , aArg0 );
7167 insert( lStr , aArg1 );
7168 insert( lStr , aArg2 );
7169 insert( lStr , aArg3 );
7170 insert( lStr , aArg4 );
7171 insert( lStr , aArg5 );
7172 insert( lStr , aArg6 );
7173 insert( lStr , aArg7 );
7174 insert( lStr , aArg8 );
7175 insert( lStr , aArg9 );
7176 insert( lStr , aArg10 );
7177 insert( lStr , aArg11 );
7178 insert( lStr , aArg12 );
7179 insert( lStr , aArg13 );
7180 insert( lStr , aArg14 );
7181 insert( lStr , aArg15 );
7182 insert( lStr , aArg16 );
7183 insert( lStr , aArg17 );
7184 insert( lStr , aArg18 );
7185 insert( lStr , aArg19 );
7186 insert( lStr , aArg20 );
7187 insert( lStr , aArg21 );
7188 insert( lStr , aArg22 );
7189 aExc.append( ( lStr.str() + "\n" ).c_str() );
7190 }
7191 log ( Error() , lStr.str() );
7192}
7193
7194template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 >
7195void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 )
7196{
7197 std::stringstream lStr;
7198 {
7199 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7200 insert( lStr , aArg0 );
7201 insert( lStr , aArg1 );
7202 insert( lStr , aArg2 );
7203 insert( lStr , aArg3 );
7204 insert( lStr , aArg4 );
7205 insert( lStr , aArg5 );
7206 insert( lStr , aArg6 );
7207 insert( lStr , aArg7 );
7208 insert( lStr , aArg8 );
7209 insert( lStr , aArg9 );
7210 insert( lStr , aArg10 );
7211 insert( lStr , aArg11 );
7212 insert( lStr , aArg12 );
7213 insert( lStr , aArg13 );
7214 insert( lStr , aArg14 );
7215 insert( lStr , aArg15 );
7216 insert( lStr , aArg16 );
7217 insert( lStr , aArg17 );
7218 insert( lStr , aArg18 );
7219 insert( lStr , aArg19 );
7220 insert( lStr , aArg20 );
7221 insert( lStr , aArg21 );
7222 insert( lStr , aArg22 );
7223 insert( lStr , aArg23 );
7224 aExc.append( ( lStr.str() + "\n" ).c_str() );
7225 }
7226 log ( Error() , lStr.str() );
7227}
7228
7229template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 >
7230void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 )
7231{
7232 std::stringstream lStr;
7233 {
7234 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7235 insert( lStr , aArg0 );
7236 insert( lStr , aArg1 );
7237 insert( lStr , aArg2 );
7238 insert( lStr , aArg3 );
7239 insert( lStr , aArg4 );
7240 insert( lStr , aArg5 );
7241 insert( lStr , aArg6 );
7242 insert( lStr , aArg7 );
7243 insert( lStr , aArg8 );
7244 insert( lStr , aArg9 );
7245 insert( lStr , aArg10 );
7246 insert( lStr , aArg11 );
7247 insert( lStr , aArg12 );
7248 insert( lStr , aArg13 );
7249 insert( lStr , aArg14 );
7250 insert( lStr , aArg15 );
7251 insert( lStr , aArg16 );
7252 insert( lStr , aArg17 );
7253 insert( lStr , aArg18 );
7254 insert( lStr , aArg19 );
7255 insert( lStr , aArg20 );
7256 insert( lStr , aArg21 );
7257 insert( lStr , aArg22 );
7258 insert( lStr , aArg23 );
7259 insert( lStr , aArg24 );
7260 aExc.append( ( lStr.str() + "\n" ).c_str() );
7261 }
7262 log ( Error() , lStr.str() );
7263}
7264
7265template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 >
7266void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 )
7267{
7268 std::stringstream lStr;
7269 {
7270 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7271 insert( lStr , aArg0 );
7272 insert( lStr , aArg1 );
7273 insert( lStr , aArg2 );
7274 insert( lStr , aArg3 );
7275 insert( lStr , aArg4 );
7276 insert( lStr , aArg5 );
7277 insert( lStr , aArg6 );
7278 insert( lStr , aArg7 );
7279 insert( lStr , aArg8 );
7280 insert( lStr , aArg9 );
7281 insert( lStr , aArg10 );
7282 insert( lStr , aArg11 );
7283 insert( lStr , aArg12 );
7284 insert( lStr , aArg13 );
7285 insert( lStr , aArg14 );
7286 insert( lStr , aArg15 );
7287 insert( lStr , aArg16 );
7288 insert( lStr , aArg17 );
7289 insert( lStr , aArg18 );
7290 insert( lStr , aArg19 );
7291 insert( lStr , aArg20 );
7292 insert( lStr , aArg21 );
7293 insert( lStr , aArg22 );
7294 insert( lStr , aArg23 );
7295 insert( lStr , aArg24 );
7296 insert( lStr , aArg25 );
7297 aExc.append( ( lStr.str() + "\n" ).c_str() );
7298 }
7299 log ( Error() , lStr.str() );
7300}
7301
7302template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 >
7303void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 )
7304{
7305 std::stringstream lStr;
7306 {
7307 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7308 insert( lStr , aArg0 );
7309 insert( lStr , aArg1 );
7310 insert( lStr , aArg2 );
7311 insert( lStr , aArg3 );
7312 insert( lStr , aArg4 );
7313 insert( lStr , aArg5 );
7314 insert( lStr , aArg6 );
7315 insert( lStr , aArg7 );
7316 insert( lStr , aArg8 );
7317 insert( lStr , aArg9 );
7318 insert( lStr , aArg10 );
7319 insert( lStr , aArg11 );
7320 insert( lStr , aArg12 );
7321 insert( lStr , aArg13 );
7322 insert( lStr , aArg14 );
7323 insert( lStr , aArg15 );
7324 insert( lStr , aArg16 );
7325 insert( lStr , aArg17 );
7326 insert( lStr , aArg18 );
7327 insert( lStr , aArg19 );
7328 insert( lStr , aArg20 );
7329 insert( lStr , aArg21 );
7330 insert( lStr , aArg22 );
7331 insert( lStr , aArg23 );
7332 insert( lStr , aArg24 );
7333 insert( lStr , aArg25 );
7334 insert( lStr , aArg26 );
7335 aExc.append( ( lStr.str() + "\n" ).c_str() );
7336 }
7337 log ( Error() , lStr.str() );
7338}
7339
7340template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 >
7341void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 )
7342{
7343 std::stringstream lStr;
7344 {
7345 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7346 insert( lStr , aArg0 );
7347 insert( lStr , aArg1 );
7348 insert( lStr , aArg2 );
7349 insert( lStr , aArg3 );
7350 insert( lStr , aArg4 );
7351 insert( lStr , aArg5 );
7352 insert( lStr , aArg6 );
7353 insert( lStr , aArg7 );
7354 insert( lStr , aArg8 );
7355 insert( lStr , aArg9 );
7356 insert( lStr , aArg10 );
7357 insert( lStr , aArg11 );
7358 insert( lStr , aArg12 );
7359 insert( lStr , aArg13 );
7360 insert( lStr , aArg14 );
7361 insert( lStr , aArg15 );
7362 insert( lStr , aArg16 );
7363 insert( lStr , aArg17 );
7364 insert( lStr , aArg18 );
7365 insert( lStr , aArg19 );
7366 insert( lStr , aArg20 );
7367 insert( lStr , aArg21 );
7368 insert( lStr , aArg22 );
7369 insert( lStr , aArg23 );
7370 insert( lStr , aArg24 );
7371 insert( lStr , aArg25 );
7372 insert( lStr , aArg26 );
7373 insert( lStr , aArg27 );
7374 aExc.append( ( lStr.str() + "\n" ).c_str() );
7375 }
7376 log ( Error() , lStr.str() );
7377}
7378
7379template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 >
7380void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 )
7381{
7382 std::stringstream lStr;
7383 {
7384 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7385 insert( lStr , aArg0 );
7386 insert( lStr , aArg1 );
7387 insert( lStr , aArg2 );
7388 insert( lStr , aArg3 );
7389 insert( lStr , aArg4 );
7390 insert( lStr , aArg5 );
7391 insert( lStr , aArg6 );
7392 insert( lStr , aArg7 );
7393 insert( lStr , aArg8 );
7394 insert( lStr , aArg9 );
7395 insert( lStr , aArg10 );
7396 insert( lStr , aArg11 );
7397 insert( lStr , aArg12 );
7398 insert( lStr , aArg13 );
7399 insert( lStr , aArg14 );
7400 insert( lStr , aArg15 );
7401 insert( lStr , aArg16 );
7402 insert( lStr , aArg17 );
7403 insert( lStr , aArg18 );
7404 insert( lStr , aArg19 );
7405 insert( lStr , aArg20 );
7406 insert( lStr , aArg21 );
7407 insert( lStr , aArg22 );
7408 insert( lStr , aArg23 );
7409 insert( lStr , aArg24 );
7410 insert( lStr , aArg25 );
7411 insert( lStr , aArg26 );
7412 insert( lStr , aArg27 );
7413 insert( lStr , aArg28 );
7414 aExc.append( ( lStr.str() + "\n" ).c_str() );
7415 }
7416 log ( Error() , lStr.str() );
7417}
7418
7419template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 >
7420void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 )
7421{
7422 std::stringstream lStr;
7423 {
7424 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7425 insert( lStr , aArg0 );
7426 insert( lStr , aArg1 );
7427 insert( lStr , aArg2 );
7428 insert( lStr , aArg3 );
7429 insert( lStr , aArg4 );
7430 insert( lStr , aArg5 );
7431 insert( lStr , aArg6 );
7432 insert( lStr , aArg7 );
7433 insert( lStr , aArg8 );
7434 insert( lStr , aArg9 );
7435 insert( lStr , aArg10 );
7436 insert( lStr , aArg11 );
7437 insert( lStr , aArg12 );
7438 insert( lStr , aArg13 );
7439 insert( lStr , aArg14 );
7440 insert( lStr , aArg15 );
7441 insert( lStr , aArg16 );
7442 insert( lStr , aArg17 );
7443 insert( lStr , aArg18 );
7444 insert( lStr , aArg19 );
7445 insert( lStr , aArg20 );
7446 insert( lStr , aArg21 );
7447 insert( lStr , aArg22 );
7448 insert( lStr , aArg23 );
7449 insert( lStr , aArg24 );
7450 insert( lStr , aArg25 );
7451 insert( lStr , aArg26 );
7452 insert( lStr , aArg27 );
7453 insert( lStr , aArg28 );
7454 insert( lStr , aArg29 );
7455 aExc.append( ( lStr.str() + "\n" ).c_str() );
7456 }
7457 log ( Error() , lStr.str() );
7458}
7459
7460template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 >
7461void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 )
7462{
7463 std::stringstream lStr;
7464 {
7465 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7466 insert( lStr , aArg0 );
7467 insert( lStr , aArg1 );
7468 insert( lStr , aArg2 );
7469 insert( lStr , aArg3 );
7470 insert( lStr , aArg4 );
7471 insert( lStr , aArg5 );
7472 insert( lStr , aArg6 );
7473 insert( lStr , aArg7 );
7474 insert( lStr , aArg8 );
7475 insert( lStr , aArg9 );
7476 insert( lStr , aArg10 );
7477 insert( lStr , aArg11 );
7478 insert( lStr , aArg12 );
7479 insert( lStr , aArg13 );
7480 insert( lStr , aArg14 );
7481 insert( lStr , aArg15 );
7482 insert( lStr , aArg16 );
7483 insert( lStr , aArg17 );
7484 insert( lStr , aArg18 );
7485 insert( lStr , aArg19 );
7486 insert( lStr , aArg20 );
7487 insert( lStr , aArg21 );
7488 insert( lStr , aArg22 );
7489 insert( lStr , aArg23 );
7490 insert( lStr , aArg24 );
7491 insert( lStr , aArg25 );
7492 insert( lStr , aArg26 );
7493 insert( lStr , aArg27 );
7494 insert( lStr , aArg28 );
7495 insert( lStr , aArg29 );
7496 insert( lStr , aArg30 );
7497 aExc.append( ( lStr.str() + "\n" ).c_str() );
7498 }
7499 log ( Error() , lStr.str() );
7500}
7501
7502template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 , typename T31 >
7503void log ( exception::exception& aExc , const T0& aArg0 , const T1& aArg1 , const T2& aArg2 , const T3& aArg3 , const T4& aArg4 , const T5& aArg5 , const T6& aArg6 , const T7& aArg7 , const T8& aArg8 , const T9& aArg9 , const T10& aArg10 , const T11& aArg11 , const T12& aArg12 , const T13& aArg13 , const T14& aArg14 , const T15& aArg15 , const T16& aArg16 , const T17& aArg17 , const T18& aArg18 , const T19& aArg19 , const T20& aArg20 , const T21& aArg21 , const T22& aArg22 , const T23& aArg23 , const T24& aArg24 , const T25& aArg25 , const T26& aArg26 , const T27& aArg27 , const T28& aArg28 , const T29& aArg29 , const T30& aArg30 , const T31& aArg31 )
7504{
7505 std::stringstream lStr;
7506 {
7507 std::lock_guard<std::mutex> lLock ( GetLoggingMutex() );
7508 insert( lStr , aArg0 );
7509 insert( lStr , aArg1 );
7510 insert( lStr , aArg2 );
7511 insert( lStr , aArg3 );
7512 insert( lStr , aArg4 );
7513 insert( lStr , aArg5 );
7514 insert( lStr , aArg6 );
7515 insert( lStr , aArg7 );
7516 insert( lStr , aArg8 );
7517 insert( lStr , aArg9 );
7518 insert( lStr , aArg10 );
7519 insert( lStr , aArg11 );
7520 insert( lStr , aArg12 );
7521 insert( lStr , aArg13 );
7522 insert( lStr , aArg14 );
7523 insert( lStr , aArg15 );
7524 insert( lStr , aArg16 );
7525 insert( lStr , aArg17 );
7526 insert( lStr , aArg18 );
7527 insert( lStr , aArg19 );
7528 insert( lStr , aArg20 );
7529 insert( lStr , aArg21 );
7530 insert( lStr , aArg22 );
7531 insert( lStr , aArg23 );
7532 insert( lStr , aArg24 );
7533 insert( lStr , aArg25 );
7534 insert( lStr , aArg26 );
7535 insert( lStr , aArg27 );
7536 insert( lStr , aArg28 );
7537 insert( lStr , aArg29 );
7538 insert( lStr , aArg30 );
7539 insert( lStr , aArg31 );
7540 aExc.append( ( lStr.str() + "\n" ).c_str() );
7541 }
7542 log ( Error() , lStr.str() );
7543}
7544
7545// ======================================================================================================================================================
7546// WARNING! This file is automatically generated! Do not modify it! Any changes will be overwritten!
7547// ======================================================================================================================================================
7548
7549}
7550
std::ostream & stream()
Definition: LogLevels.hpp:70
Helper struct representing the Debug log level to allow us to specialize functions according to their...
Definition: LogLevels.hpp:159
Helper struct representing the Error log level to allow us to specialize functions according to their...
Definition: LogLevels.hpp:100
Helper struct representing the Fatal log level to allow us to specialize functions according to their...
Definition: LogLevels.hpp:85
Helper struct representing the Info log level to allow us to specialize functions according to their ...
Definition: LogLevels.hpp:145
Helper struct representing the Notice log level to allow us to specialize functions according to thei...
Definition: LogLevels.hpp:130
Helper struct representing the Warning log level to allow us to specialize functions according to the...
Definition: LogLevels.hpp:116
An abstract base exception class, including an interface to throw as the derived type (for passing ex...
Definition: exception.hpp:71
void append(const char *aCStr)
Add additional information to the exception message.
Definition: exception.cpp:104
void insert(std::ostream &aStr, const U &aU)
Definition: LogLevels.hpp:25
const bool & LoggingIncludes(const FatalLevel &)
Function to check at runtime whether the level Fatal is to be included in the log output.
Definition: log.cpp:99
ErrorLevel Error
Definition: LogLevels.cpp:61
void log(FatalLevel &aFatal, const T0 &aArg0)
Function to add a log entry at Fatal level.
Definition: log.hxx:18
std::mutex & GetLoggingMutex()
Function to retrieve the mutex lock used by the logger.
Definition: log.cpp:78