]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/logger.h
Use IsCTCP in blockcolor for ignoring CTCPs.
[user/henk/code/inspircd.git] / include / logger.h
index 2ea280be8b429cf596fe3ba6e129ea5c3d930313..6af842b791b11384150c7677baac24b601a199be 100644 (file)
@@ -1,8 +1,13 @@
 /*
  * InspIRCd -- Internet Relay Chat Daemon
  *
+ *   Copyright (C) 2014 Attila Molnar <attilamolnar@hush.com>
+ *   Copyright (C) 2012-2013, 2017 Sadie Powell <sadie@witchery.services>
+ *   Copyright (C) 2012, 2019 Robby <robby@chatbelgie.be>
+ *   Copyright (C) 2010 Craig Edwards <brain@inspircd.org>
+ *   Copyright (C) 2009 Daniel De Graaf <danieldg@inspircd.org>
+ *   Copyright (C) 2008, 2012 Robin Burchell <robin+git@viroteck.net>
  *   Copyright (C) 2008 Thomas Stagner <aquanight@inspircd.org>
- *   Copyright (C) 2008 Robin Burchell <robin+git@viroteck.net>
  *
  * This file is part of InspIRCd.  InspIRCd is free software: you can
  * redistribute it and/or modify it under the terms of the GNU General Public
@@ -41,14 +46,18 @@ class CoreExport FileWriter
         */
        FILE* log;
 
-       /** Number of write operations that have occured
+       /** The number of write operations after which we should flush.
         */
-       int writeops;
+       unsigned int flush;
+
+       /** Number of write operations that have occurred
+        */
+       unsigned int writeops;
 
  public:
        /** The constructor takes an already opened logfile.
         */
-       FileWriter(FILE* logfile);
+       FileWriter(FILE* logfile, unsigned int flushcount);
 
        /** Write one or more preformatted log lines.
         * If the data cannot be written immediately,
@@ -114,10 +123,10 @@ class CoreExport LogStream : public classbase
 
 typedef std::map<FileWriter*, int> FileLogMap;
 
-class CoreExport LogManager
+class CoreExport LogManager : public fakederef<LogManager>
 {
  private:
-       /** Lock variable, set to true when a log is in progress, which prevents further loggging from happening and creating a loop.
+       /** Lock variable, set to true when a log is in progress, which prevents further logging from happening and creating a loop.
         */
        bool Logging;
 
@@ -198,7 +207,7 @@ class CoreExport LogManager
         */
        bool AddLogType(const std::string &type, LogStream *l, bool autoclose);
 
-       /** Removes a logstream from the core. After removal, it will not recieve further events.
+       /** Removes a logstream from the core. After removal, it will not receive further events.
         * If the LogStream was ever added with autoclose, it will be closed after this call (this means the pointer won't be valid anymore).
         */
        void DelLogStream(LogStream* l);