X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fclient.h;h=2b12e4d69f9e1bf074a95cf07497b6465a6bf320;hb=60cd42dc4fdb1fdfa438402956e7342a01fc8677;hp=31bdbec4d70ce6a571425a2dc51e2988ee2d29fd;hpb=3bd92c1fa7a85b47356cd6f2bad23893955a0785;p=xinema.git diff --git a/source/client.h b/source/client.h index 31bdbec..2b12e4d 100644 --- a/source/client.h +++ b/source/client.h @@ -5,8 +5,8 @@ #include #include #include +#include "xinestream.h" -class XineStream; class Xinema; class Client: public sigc::trackable @@ -15,6 +15,7 @@ private: Xinema &xinema; Msp::Net::StreamSocket *socket; std::string buffer; + Msp::Mutex mutex; Msp::Time::TimeDelta last_position; bool stale; @@ -27,14 +28,24 @@ private: void data_available(); void end_of_stream(); + XineStream &get_stream() const; + int convert_channel(const std::string &); 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_destroyed(); + void stream_state_changed(XineStream::State); void stream_title_changed(const std::string &); void stream_duration_changed(const Msp::Time::TimeDelta &); void stream_position_changed(const Msp::Time::TimeDelta &); + void stream_size_changed(unsigned, unsigned); + void stream_framerate_changed(float); + void stream_codecs_changed(const std::string &, const std::string &); + void stream_channels_changed(); + void stream_audio_channel_changed(int); + void stream_spu_channel_changed(int); }; #endif