radioapp/radiouiengine/inc/radiostation_p.h
changeset 41 3a6b55c6390c
parent 32 189d20c34778
--- a/radioapp/radiouiengine/inc/radiostation_p.h	Tue Jul 06 14:16:27 2010 +0300
+++ b/radioapp/radiouiengine/inc/radiostation_p.h	Wed Aug 18 09:49:03 2010 +0300
@@ -32,6 +32,17 @@
 {
 public:
 
+    /**
+     * Flags to indicate various on/off type information of the radio station
+     */
+    enum StationInfoFlag
+    {
+       RenamedByUser        = 1 << 0,
+       StationSendsRds      = 1 << 1,
+       CallSignCheckDone    = 1 << 2
+    };
+    Q_DECLARE_FLAGS( StationInfo, StationInfoFlag )
+
     explicit RadioStationPrivate( int presetIndex = RadioStation::Invalid, uint frequency = 0 );
     explicit RadioStationPrivate( const RadioStationPrivate& other );
 
@@ -39,8 +50,6 @@
 
     void init( int presetIndex, uint frequency = 0 );
 
-private:
-
 // from base class RadioStationIf
 
     int presetIndex() const;
@@ -61,6 +70,13 @@
     void setFavorite( bool favorite );
     bool isLocalStation() const;
     void setLocalStation( bool localStation );
+    bool hasStationSentRds() const;
+    void setStationHasSentRds( bool hasSentRds );
+
+// New functions
+
+    bool isCallSignCheckDone() const;
+    void setCallSignCheckDone( bool checkDone );
 
 public: // data
 
@@ -92,11 +108,6 @@
     QString                     mName;
 
     /**
-     * Flag to indicate whether or not the user has renamed the station
-     */
-    bool                        mRenamedByUser;
-
-    /**
      * Station genre received through RDS
      */
     int                         mGenre;
@@ -161,17 +172,19 @@
     RadioStation::Change        mChangeFlags;
 
     /**
-     * Keeps track of station call sign calculation state
-     */
-    bool                        mCallSignCheckDone;
-
-    /**
      * Time of the last PS name change. Used to check if the station changes its PS name too often.
      * In bad RDS coverage a station using dynamic PS might be incorrectly determined to use static PS.
      * This is a corrective effort to change that decision if the name changes too often.
      */
     QTime                       mLastPsNameChangeTime;
 
+    /**
+     * Flags to indicate various on/off type information of the radio station
+     */
+    StationInfo                 mStationInfo;
+
 };
 
+Q_DECLARE_OPERATORS_FOR_FLAGS( RadioStationPrivate::StationInfo )
+
 #endif // RADIOSTATIONINFO_P_H_