| Index: include/AdblockPlus/ITimer.h | 
| diff --git a/include/AdblockPlus/LogSystem.h b/include/AdblockPlus/ITimer.h | 
| similarity index 52% | 
| copy from include/AdblockPlus/LogSystem.h | 
| copy to include/AdblockPlus/ITimer.h | 
| index 6a71d5cfa98daf9390825e913143bf9f5b54f436..291e56f1626418daa7dacd9ddfd0a53611137fe5 100644 | 
| --- a/include/AdblockPlus/LogSystem.h | 
| +++ b/include/AdblockPlus/ITimer.h | 
| @@ -15,42 +15,38 @@ | 
| * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 
| */ | 
|  | 
| -#ifndef ADBLOCK_PLUS_LOG_SYSTEM_H | 
| -#define ADBLOCK_PLUS_LOG_SYSTEM_H | 
| +#ifndef ADBLOCK_PLUS_TIMER_H | 
| +#define ADBLOCK_PLUS_TIMER_H | 
|  | 
| -#include <string> | 
| +#include <functional> | 
| +#include <chrono> | 
| #include <memory> | 
|  | 
| namespace AdblockPlus | 
| { | 
| /** | 
| -   * Logging interface. | 
| +   * Timer manager interface. | 
| */ | 
| -  class LogSystem | 
| +  struct ITimer | 
| { | 
| -  public: | 
| /** | 
| -     * Log level. | 
| -     */ | 
| -    enum LogLevel {LOG_LEVEL_TRACE, LOG_LEVEL_LOG, LOG_LEVEL_INFO, LOG_LEVEL_WARN, LOG_LEVEL_ERROR}; | 
| - | 
| -    virtual ~LogSystem() {} | 
| +    * Callback type invoked after elapsing of timer timeout. | 
| +    */ | 
| +    typedef std::function<void()> TimerCallback; | 
| +    virtual ~ITimer() {}; | 
|  | 
| /** | 
| -     * Writes a log message. | 
| -     * @param logLevel Log level. | 
| -     * @param message Log message. | 
| -     * @param source Source of the message, e.g. file name and line. | 
| -     *        Ignored when empty. | 
| +     * Sets a timer. | 
| +     * @param timeout A timer callback will be called after that interval. | 
| +     * @param timeCallback The callback which is called after timeout. | 
| */ | 
| -    virtual void operator()(LogLevel logLevel, const std::string& message, | 
| -          const std::string& source) = 0; | 
| +    virtual void SetTimer(const std::chrono::milliseconds& timeout, const TimerCallback& timerCallback) = 0; | 
| }; | 
|  | 
| /** | 
| -   * Shared smart pointer to a `LogSystem` instance. | 
| +   * Unique smart pointer to an instance of `ITimer` implementation. | 
| */ | 
| -  typedef std::shared_ptr<LogSystem> LogSystemPtr; | 
| +  typedef std::unique_ptr<ITimer> TimerPtr; | 
| } | 
|  | 
| #endif | 
|  |