00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 #ifndef _LOG4CPP_PRIORITY_HH
00011 #define _LOG4CPP_PRIORITY_HH
00012 
00013 #include <log4cpp/Portability.hh>
00014 #include <string>
00015 #include <stdexcept>
00016 
00017 
00018 
00019 
00020 #ifdef ERROR
00021 #ifdef LOG4CPP_FIX_ERROR_COLLISION
00022 
00023 namespace log4cpp {
00024     static const int _tmpERRORValue = ERROR;
00025 }
00026 
00027 #undef ERROR
00028     static const int ERROR = log4cpp::_tmpERRORValue;
00029 #define ERROR ERROR
00030 
00031 #else  // LOG4CPP_FIX_ERROR_COLLISION
00032 #error Naming collision for 'ERROR' detected. Please read the FAQ for a \
00033        workaround. 
00034 #endif // LOG4CPP_FIX_ERROR_COLLISION 
00035 
00036 #endif // ERROR
00037 
00038 
00039 
00040 
00041 #ifdef DEBUG
00042 
00043 #ifdef LOG4CPP_FIX_ERROR_COLLISION
00044 
00045 #undef DEBUG
00046 #define DEBUG DEBUG
00047 
00048 #else  // LOG4CPP_FIX_ERROR_COLLISION
00049 #error Naming collision for 'DEBUG' detected. Please read the FAQ for a \
00050        workaround. 
00051 #endif // LOG4CPP_FIX_ERROR_COLLISION 
00052 
00053 #endif // DEBUG
00054 
00055 namespace log4cpp {
00056 
00061     class LOG4CPP_EXPORT Priority {
00062         public:
00063 
00064                 static const int MESSAGE_SIZE; 
00065 
00070         typedef enum {EMERG  = 0, 
00071                       FATAL  = 0,
00072                       ALERT  = 100,
00073                       CRIT   = 200,
00074                       ERROR  = 300, 
00075                       WARN   = 400,
00076                       NOTICE = 500,
00077                       INFO   = 600,
00078                       DEBUG  = 700,
00079                       NOTSET = 800
00080         } PriorityLevel;
00081 
00085         typedef int Value;
00086 
00095         static const std::string& getPriorityName(int priority) throw();
00096         
00106         static Value getPriorityValue(const std::string& priorityName)
00107         throw(std::invalid_argument);
00108     };
00109 }
00110 
00111 #endif // _LOG4CPP_PRIORITY_HH