/**************************************************************************** ** ** Copyright (C) 2008-$THISYEAR$ $TROLLTECH$. All rights reserved. ** ** This file is part of the SCXML project on Trolltech Labs. ** ** $TROLLTECH_GPL_LICENSE$ ** ****************************************************************************/ #ifndef SPENGINE_H #define SPENGINE_H #include #include class SPEngine : public QObject { Q_OBJECT Q_PROPERTY(int totalTime READ totalTime) Q_PROPERTY(int currentTime READ currentTime) Q_PROPERTY(int volume READ volume WRITE setVolume) Q_SIGNALS: void aboutToFinish(); void tick(qint64); void totalTimeChanged(qint64); void volumeChanged(int); public Q_SLOTS: void clearQueue(); void enqueue (const QUrl &); void setTrack(const QUrl &); void play(); void pause(); void seek(qint64); void stop (); protected Q_SLOTS: void onVolumeChanged(qreal); public: SPEngine(QObject*); virtual ~SPEngine (); int currentTime () const; int totalTime () const; void setVolume(int); int volume () const; private: class SPEnginePvt* pvt; }; #endif