author | simon <simon> | 2002-12-13 22:40:57 (UTC) |
---|---|---|
committer | simon <simon> | 2002-12-13 22:40:57 (UTC) |
commit | d178168d0980e62d6ce1acb92b6b62c07b64ea34 (patch) (side-by-side diff) | |
tree | 666c8db2a8351d64d9e3e9d16ca202be6a31a16b /noncore/multimedia/opieplayer2/lib.h | |
parent | 24a30625ec822a7c55e4d4175c5fe40ba05c883e (diff) | |
download | opie-d178168d0980e62d6ce1acb92b6b62c07b64ea34.zip opie-d178168d0980e62d6ce1acb92b6b62c07b64ea34.tar.gz opie-d178168d0980e62d6ce1acb92b6b62c07b64ea34.tar.bz2 |
- prepare the API for threaded initialization, step one
Diffstat (limited to 'noncore/multimedia/opieplayer2/lib.h') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/multimedia/opieplayer2/lib.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/noncore/multimedia/opieplayer2/lib.h b/noncore/multimedia/opieplayer2/lib.h index aba2ec9..6363918 100644 --- a/noncore/multimedia/opieplayer2/lib.h +++ b/noncore/multimedia/opieplayer2/lib.h @@ -46,29 +46,32 @@ class XineVideoWidget; namespace XINE { /** * Lib wrapps the simple interface * of libxine for easy every day use * This will become a full C++ Wrapper * It supports playing, pausing, info, * stooping, seeking. */ class Frame; - class Lib : public ThreadUtil::Channel + class Lib : public ThreadUtil::Channel, private ThreadUtil::Thread { Q_OBJECT public: - Lib(XineVideoWidget* = 0); + enum InitializationMode { InitializeImmediately, InitializeInThread }; + + Lib( InitializationMode initMode, XineVideoWidget* = 0); + ~Lib(); static int majorVersion(); static int minorVersion(); static int subVersion(); void resize ( const QSize &s ); int play( const QString& fileName, int startPos = 0, int start_time = 0 ); void stop(); @@ -174,25 +177,29 @@ namespace XINE { */ int error() const; signals: void stopped(); void initialized(); protected: virtual void receiveMessage( ThreadUtil::ChannelMessage *msg, SendType sendType ); + virtual void run(); + private: + void initialize(); + int m_bytes_per_pixel; bool m_video:1; XineVideoWidget *m_wid; xine_t *m_xine; xine_stream_t *m_stream; xine_cfg_entry_t *m_config; xine_vo_driver_t *m_videoOutput; xine_ao_driver_t* m_audioOutput; xine_event_queue_t *m_queue; void handleXineEvent( const xine_event_t* t ); void handleXineEvent( int type ); |