From e3b9387237187f3e3e146c26eb8c390d7758e930 Mon Sep 17 00:00:00 2001 From: brain Date: Sat, 19 Aug 2006 00:50:11 +0000 Subject: Extra comments about how the FileLogger class schedules its own write events if all the data is not written git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4985 e03df62e-2008-0410-955e-edbf42e46eb7 --- include/inspircd.h | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/include/inspircd.h b/include/inspircd.h index befe07515..4783b2dc1 100644 --- a/include/inspircd.h +++ b/include/inspircd.h @@ -160,16 +160,25 @@ class FileLogger : public EventHandler */ int writeops; public: - /** The constructor takes an already opened logfile + /** The constructor takes an already opened logfile. */ FileLogger(InspIRCd* Instance, FILE* logfile); - /** This returns false, logfiles are writeable + /** This returns false, logfiles are writeable. */ bool Readable(); - /** Handle pending write events + /** Handle pending write events. + * This will flush any waiting data to disk. + * If any data remains after the fprintf call, + * another write event is scheduled to write + * the rest of the data when possible. */ void HandleEvent(EventType et); - /** Write one or more preformatted log lines + /** Write one or more preformatted log lines. + * If the data cannot be written immediately, + * this class will insert itself into the + * SocketEngine, and register a write event, + * and when the write event occurs it will + * attempt again to write the data. */ void WriteLogLine(const std::string &line); /** Close the log file and cancel any events. @@ -183,7 +192,7 @@ class FileLogger : public EventHandler class XLineManager; -/** The main singleton class of the irc server. +/** The main class of the irc server. * This class contains instances of all the other classes * in this software, with the exception of the base class, * classbase. Amongst other things, it contains a ModeParser, -- cgit v1.2.3