]> git.netwichtig.de Git - user/henk/code/inspircd.git/blob - include/filelogger.h
Merge pull request #1018 from SaberUK/insp20+hidekills
[user/henk/code/inspircd.git] / include / filelogger.h
1 /*
2  * InspIRCd -- Internet Relay Chat Daemon
3  *
4  *   Copyright (C) 2008 Thomas Stagner <aquanight@inspircd.org>
5  *   Copyright (C) 2007 Dennis Friis <peavey@inspircd.org>
6  *
7  * This file is part of InspIRCd.  InspIRCd is free software: you can
8  * redistribute it and/or modify it under the terms of the GNU General Public
9  * License as published by the Free Software Foundation, version 2.
10  *
11  * This program is distributed in the hope that it will be useful, but WITHOUT
12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
13  * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
14  * details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
18  */
19
20
21 #ifndef FILELOGGER_H
22 #define FILELOGGER_H
23
24 #include "logger.h"
25
26 /** Debug levels for use with InspIRCd::Log()
27  *  */
28 enum DebugLevel
29 {
30     RAWIO       =   5,
31     DEBUG       =   10,
32     VERBOSE     =   20,
33     DEFAULT     =   30,
34     SPARSE      =   40,
35     NONE        =   50
36 };
37
38
39 /* Forward declaration -- required */
40 class InspIRCd;
41
42 /** A logging class which logs to a streamed file.
43  */
44 class CoreExport FileLogStream : public LogStream
45 {
46  private:
47         FileWriter *f;
48  public:
49         FileLogStream(int loglevel, FileWriter *fw);
50
51         virtual ~FileLogStream();
52
53         virtual void OnLog(int loglevel, const std::string &type, const std::string &msg);
54 };
55
56 #endif
57