Please review the interface and let me know what you think. Thanks, Erik
PS: Jon, the viewvc link is broken. 2007/8/23, [EMAIL PROTECTED] <[EMAIL PROTECTED]>: > > Author: erijo > Date: Thu Aug 23 07:03:28 2007 > New Revision: 5195 > > URL: http://svn.licq.org/viewvc/licq?rev=5195&view=rev > Log: > Add two new interfaces (Log and LogSink) and their implementation. > > * Licq::Log is the interface that plugins will use to log stuff that > happens. Supports diffrent levels of logging and convient functions > for all levels (e.g. info(...) is the same as log(Info, ...). The > log message can be std::string or, if more formatting is required, > boost::format. > > * Licq::LogSink should be implemented by plugins wishing to receive > log messages. They should then register the sink with the daemon. > > * LicqDaemon::Log implements Licq::Log and sends log messages to a > Licq::LogSink. The idea is that all plugins get their own instance > of this class that all send their log messages to the same sink (a > LogDistributor instance). > > * LicqDaemon::LogDistributor implements Licq::LogSink and distributes > log messages to all registered sinks. > > * LicqDaemon::StreamLogSink prints all log messages to a > std::ostream, e.g. std::cerr. > > TODO: LogDistributor must be made thread-safe. -- Erik Johansson http://ejohansson.se/
