summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/phonon/mmf/mediaobject.h
diff options
context:
space:
mode:
authorFrans Englich <frans.englich@nokia.com>2009-07-03 13:52:24 (GMT)
committerFrans Englich <frans.englich@nokia.com>2009-07-03 13:52:24 (GMT)
commit0089269b13244e0a906443e30f39275bb0cc01f0 (patch)
tree9f75b62ef301594505dc7b5d4475b674b962efc6 /src/3rdparty/phonon/mmf/mediaobject.h
parenta27d314863d38821f5122973be3fe5306ed82ef1 (diff)
downloadQt-0089269b13244e0a906443e30f39275bb0cc01f0.zip
Qt-0089269b13244e0a906443e30f39275bb0cc01f0.tar.gz
Qt-0089269b13244e0a906443e30f39275bb0cc01f0.tar.bz2
Pouring.
Diffstat (limited to 'src/3rdparty/phonon/mmf/mediaobject.h')
-rw-r--r--src/3rdparty/phonon/mmf/mediaobject.h27
1 files changed, 23 insertions, 4 deletions
diff --git a/src/3rdparty/phonon/mmf/mediaobject.h b/src/3rdparty/phonon/mmf/mediaobject.h
index 80a774d..1512919 100644
--- a/src/3rdparty/phonon/mmf/mediaobject.h
+++ b/src/3rdparty/phonon/mmf/mediaobject.h
@@ -31,9 +31,12 @@ namespace Phonon
{
namespace MMF
{
+ class AudioOutput;
+
class MediaObject : public QObject
, public MediaObjectInterface
, public MDrmAudioPlayerCallback
+ , public MAudioLoadingObserver
{
Q_OBJECT
Q_INTERFACES(Phonon::MediaObjectInterface)
@@ -64,22 +67,38 @@ namespace Phonon
// MAudioLoadingObserver
virtual void MaloLoadingComplete();
virtual void MaloLoadingStarted();
-
+
// MDrmAudioPlayerCallback
virtual void MdapcInitComplete(TInt aError,
- const TTimeIntervalMicroSeconds &aDuration);
+ const TTimeIntervalMicroSeconds &aDuration);
virtual void MdapcPlayComplete(TInt aError);
Q_SIGNALS:
void totalTimeChanged();
+ void stateChanged(Phonon::State oldState,
+ Phonon::State newState);
+
+ void finished();
private:
+ friend class AudioOutput;
static inline qint64 toMilliSeconds(const TTimeIntervalMicroSeconds &);
static inline TTimeIntervalMicroSeconds toMicroSeconds(qint64 ms);
+ /**
+ * Changes state() to \a newState, and emits stateChanged().
+ */
+ inline void transitTo(Phonon::State newState);
+
CDrmPlayerUtility * m_player;
- mutable ErrorType m_error;
- mutable State m_state;
+ ErrorType m_error;
+
+ /**
+ * Never update this state by assigning to it. Call transitTo().
+ */
+ State m_state;
+ MediaSource m_mediaSource;
+ MediaSource m_nextSource;
};
}
}