]> git.tdb.fi Git - xinema.git/blobdiff - source/client.h
Export some simple playback information to clients
[xinema.git] / source / client.h
index 1f543fc15861f4ebaf2e4cd923e05d38c4d1f37a..fa2ea8d02ebdcfff8002b74e9f8bbb77071d894d 100644 (file)
@@ -1,17 +1,21 @@
 #ifndef CLIENT_H_
 #define CLIENT_H_
 
+#include <sigc++/trackable.h>
 #include <msp/fs/path.h>
 #include <msp/net/streamsocket.h>
+#include <msp/time/timedelta.h>
 
+class XineStream;
 class Xinema;
 
-class Client
+class Client: public sigc::trackable
 {
 private:
        Xinema &xinema;
        Msp::Net::StreamSocket *socket;
        std::string buffer;
+       Msp::Time::TimeDelta last_position;
        bool stale;
 
 public:
@@ -26,6 +30,10 @@ private:
        void process_command(const std::string &);
        void send_reply(const std::string &);
        void list_directory(const Msp::FS::Path &);
+
+       void stream_created(XineStream &);
+       void stream_duration_changed(const Msp::Time::TimeDelta &);
+       void stream_position_changed(const Msp::Time::TimeDelta &);
 };
 
 #endif