/usr/include/tango/log4tango/Level.hh is in liblog4tango5-dev 8.1.2c+dfsg-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 | //
// Level.hh
//
// Copyright (C) : 2000 - 2002
// LifeLine Networks BV (www.lifeline.nl). All rights reserved.
// Bastiaan Bakker. All rights reserved.
//
// 2004,2005,2006,2007,2008,2009,2010,2011,2012
// Synchrotron SOLEIL
// L'Orme des Merisiers
// Saint-Aubin - BP 48 - France
//
// This file is part of log4tango.
//
// Log4ango is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Log4tango is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with Log4Tango. If not, see <http://www.gnu.org/licenses/>.
#ifndef _LOG4TANGO_LEVEL_H
#define _LOG4TANGO_LEVEL_H
#include <log4tango/Portability.hh>
#include <string>
#include <stdexcept>
/*
* Optionally work around rudeness in windows.h on Win32.
*/
#ifdef ERROR
#ifdef LOG4TANGO_FIX_ERROR_COLLISION
namespace log4tango {
static const int _tmpERRORValue = ERROR;
}
#undef ERROR
static const int ERROR = log4tango::_tmpERRORValue;
#define ERROR ERROR
#else // LOG4TANGO_FIX_ERROR_COLLISION
#error Naming collision for 'ERROR' detected. Please read the FAQ for a \
workaround.
#endif // LOG4TANGO_FIX_ERROR_COLLISION
#endif // ERROR
/*
* Other Win32 rudeness in EDK.h
*/
#ifdef DEBUG
#ifdef LOG4TANGO_FIX_ERROR_COLLISION
#undef DEBUG
#define DEBUG DEBUG
#else // LOG4TANGO_FIX_ERROR_COLLISION
#error Naming collision for 'DEBUG' detected. Please read the FAQ for a \
workaround.
#endif // LOG4TANGO_FIX_ERROR_COLLISION
#endif // DEBUG
namespace log4tango {
//-----------------------------------------------------------------------------
// class : Level
//-----------------------------------------------------------------------------
class LOG4TANGO_EXPORT Level
{
public:
/**
* Levels of Priorities.
**/
typedef enum {
OFF = 100,
FATAL = 200,
ERROR = 300,
WARN = 400,
INFO = 500,
DEBUG = 600
} LevelLevel;
/**
* The type of Level Values
**/
typedef int Value;
/**
* Returns the name of the given level value.
* Currently, if the value is not one of the LevelLevel values,
* the method returns the name of the largest level smaller
* the given value.
* @param level the numeric value of the level.
* @returns a string representing the name of the level.
**/
static const std::string& get_name (Value level);
/**
* Returns the value of the given level name.
* This can be either one of "OFF", "ERRROR", ... or a
* decimal string representation of the value, e.g. '500' for DEBUG.
* @param level_name the string containing the the of the level
* @return the value corresponding with the level name
* @throw std::invalid_argument if the level_name does not
* correspond with a known Level name or a number
**/
static Value get_value (const std::string& level_name)
throw(std::invalid_argument);
};
} // namespace log4tango
#endif // _LOG4TANGO_LEVEL_H
|