]> git.tdb.fi Git - xinema.git/blobdiff - source/xinestream.h
Locking fix
[xinema.git] / source / xinestream.h
index def7f01a5f9d2dbd6a5e0ee694670c8c597e0bf6..65f25ab26ee13112a8e07a592075b75919308102 100644 (file)
@@ -3,6 +3,7 @@
 
 #include <string>
 #include <xine.h>
+#include <msp/core/mutex.h>
 #include <msp/strings/lexicalcast.h>
 #include <msp/time/timedelta.h>
 
@@ -27,6 +28,7 @@ private:
        XineEngine &engine;
        xine_stream_t *stream;
        xine_event_queue_t *queue;
+       Msp::Mutex mutex;
        State state;
        std::string title;
        Msp::Time::TimeDelta duration;
@@ -36,6 +38,7 @@ public:
        XineStream(XineEngine &, const std::string &);
        ~XineStream();
 
+       Msp::Mutex &get_mutex() { return mutex; }
        State get_state() const { return state; }
        const Msp::Time::TimeDelta &get_duration() const { return duration; }
        const Msp::Time::TimeDelta &get_position() const { return position; }
@@ -51,7 +54,7 @@ private:
 public:
        void tick();
 private:
-       void check_info();
+       void update_info();
        void handle_event(const xine_event_t &);
 };