diff -r f54ebcfc1b80 -r afea38384506 radioapp/radiouiengine/inc/radiomonitorservice.h --- a/radioapp/radiouiengine/inc/radiomonitorservice.h Mon May 03 12:31:41 2010 +0300 +++ b/radioapp/radiouiengine/inc/radiomonitorservice.h Fri May 14 15:52:32 2010 +0300 @@ -23,44 +23,56 @@ // User includes #include "radioservicedef.h" +#include "radioenginewrapperobserver.h" // Forward declarations -class RadioUiEngine; +class RadioUiEnginePrivate; +class RadioStation; class RadioMonitorService : public XQServiceProvider + , public RadioEngineWrapperObserver { Q_OBJECT public: - RadioMonitorService( RadioUiEngine& engine ); + RadioMonitorService( RadioUiEnginePrivate& engine ); virtual ~RadioMonitorService(); - void notifyFavoriteCount( const int favoriteCount ); - void notifyAntennaStatus( bool connected ); - void notifyRadioStatus( RadioStatus::Status radioStatus ); - void notifyFrequency( const uint frequency ); - void notifyName( const QString& name ); - void notifyGenre( const QString& genre ); - void notifyRadioText( const QString& radioText ); - void notifyHomePage( const QString& homePage ); + void init(); + void notifySong( const QString& song ); public slots: - void requestNotifications(); - void requestAllData(); + void requestNotifications(); // Slot called by Qt Highway + void requestAllData(); // Slot called by Qt Highway + +private slots: + + void notifyRadioStatus(); + void notifyFavoriteCount(); + void notifyStationChange( const RadioStation& station ); private: +// from base class RadioEngineWrapperObserver + + void tunedToFrequency( uint frequency, int reason ); + +// New functions + + RadioStatus::Status determineRadioStatus() const; void notify( const QVariant& notification ); void notifyList( const QVariantList& list ); private: // data - RadioUiEngine& mUiEngine; + RadioUiEnginePrivate& mUiEngine; + + QList mRequestIndexes; - QList mRequestIndexes; + RadioStatus::Status mRadioStatus; };