log4shib 2.0.0

Priority.hh
Go to the documentation of this file.
1/*
2 * Priority.hh
3 *
4 * Copyright 2000, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
5 * Copyright 2000, Bastiaan Bakker. All rights reserved.
6 *
7 * See the COPYING file for the terms of usage and distribution.
8 */
9
10#ifndef _LOG4SHIB_PRIORITY_HH
11#define _LOG4SHIB_PRIORITY_HH
12
13#include <log4shib/Portability.hh>
14#include <string>
15#include <stdexcept>
16
17/*
18 * Optionally work around rudeness in windows.h on Win32.
19 */
20#ifdef ERROR
21#ifdef LOG4SHIB_FIX_ERROR_COLLISION
22
23 namespace log4shib {
24 static const int _tmpERRORValue = ERROR;
25}
26
27#undef ERROR
28 static const int ERROR = log4shib::_tmpERRORValue;
29#define ERROR ERROR
30
31#else // LOG4SHIB_FIX_ERROR_COLLISION
32#error Naming collision for 'ERROR' detected. Please read the FAQ for a \
33 workaround.
34#endif // LOG4SHIB_FIX_ERROR_COLLISION
35
36#endif // ERROR
37
38/*
39 * Other Win32 rudeness in EDK.h
40 */
41#ifdef DEBUG
42
43#ifdef LOG4SHIB_FIX_ERROR_COLLISION
44
45#undef DEBUG
46#define DEBUG DEBUG
47
48#else // LOG4SHIB_FIX_ERROR_COLLISION
49#error Naming collision for 'DEBUG' detected. Please read the FAQ for a \
50 workaround.
51#endif // LOG4SHIB_FIX_ERROR_COLLISION
52
53#endif // DEBUG
54
55
56 namespace log4shib {
57
62 class LOG4SHIB_EXPORT Priority {
63 public:
64
69 typedef enum {EMERG = 0,
70 FATAL = 0,
71 ALERT = 100,
72 CRIT = 200,
73 ERROR = 300,
74 WARN = 400,
75 NOTICE = 500,
76 INFO = 600,
77 DEBUG = 700,
78 NOTSET = 800
79 } PriorityLevel;
80
84 typedef int Value;
85
94 static const std::string& getPriorityName(int priority) throw();
95
105 static Value getPriorityValue(const std::string& priorityName)
106 throw(std::invalid_argument);
107 };
108}
109
110#endif // _LOG4SHIB_PRIORITY_HH
LOG4SHIB_EXPORT
#define LOG4SHIB_EXPORT
Definition: Export.hh:11
Portability.hh
log4shib::Priority
The Priority class provides importance levels with which one can categorize log messages.
Definition: Priority.hh:62
log4shib::Priority::Value
int Value
The type of Priority Values.
Definition: Priority.hh:84
log4shib
The top level namespace for all 'Log for C++' types and classes.
Definition: AbortAppender.hh:16