From d3a479b7fa1d1e52f9d3950139643fe7e3ff5a57 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Thu, 10 Jan 2013 19:08:42 +0100 Subject: event/TimeoutMonitor: wrapper for g_timeout_source_new() --- src/StateFile.hxx | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) (limited to 'src/StateFile.hxx') diff --git a/src/StateFile.hxx b/src/StateFile.hxx index 0888b25a..39c3fcdf 100644 --- a/src/StateFile.hxx +++ b/src/StateFile.hxx @@ -20,21 +20,17 @@ #ifndef MPD_STATE_FILE_HXX #define MPD_STATE_FILE_HXX -#include +#include "event/TimeoutMonitor.hxx" +#include "gcc.h" #include struct Partition; -class EventLoop; -class StateFile { +class StateFile final : private TimeoutMonitor { std::string path; Partition &partition; - EventLoop &loop; - - /** the GLib source id for the save timer */ - guint source_id; /** * These version numbers determine whether we need to save the state @@ -45,14 +41,13 @@ class StateFile { public: StateFile(const char *path, Partition &partition, EventLoop &loop); - ~StateFile(); void Read(); void Write(); void AutoWrite(); private: - static gboolean TimerCallback(gpointer data); + virtual bool OnTimeout() override; }; #endif /* STATE_FILE_H */ -- cgit v1.2.3