diff -r 5accba95f577 -r ed4308a6c628 devsoundextensions/globalaudiosettings/inc/GlobalAudioSettingsImpl.h --- a/devsoundextensions/globalaudiosettings/inc/GlobalAudioSettingsImpl.h Mon Aug 23 20:19:06 2010 +0100 +++ b/devsoundextensions/globalaudiosettings/inc/GlobalAudioSettingsImpl.h Mon Aug 23 21:33:25 2010 +0100 @@ -42,7 +42,7 @@ class CRingingTone1ObserverAO; class CRingingTone2ObserverAO; class CKeypadToneObserverAO; - +class CSilenceModeObserverAO; /** * Defines functions that client uses to set phone profile settings. * @@ -251,7 +251,13 @@ * is returned */ CGlobalAudioSettings::TGASKeypadVolume KeyPadToneVolume(); - + /** + * Returns silent mode status. + * + * + * @return TBool aEnable. ETrue if the silent mode is enabled else EFalse. + */ + TBool IsSilenceModeEnabled(); /** * Registers audio clients list observer. * @@ -337,6 +343,7 @@ CRingingTone1ObserverAO* iRingingTone1ObserverAO; CRingingTone2ObserverAO* iRingingTone2ObserverAO; CKeypadToneObserverAO* iKeypadToneObserverAO; + CSilenceModeObserverAO* iSilenceModeObserverAO; }; @@ -648,6 +655,34 @@ RProperty iKeypadToneVolumeProperty; TGlobalAudioSettings& iGlobalAudioSettingsData; }; + +NONSHARABLE_CLASS(CSilenceModeObserverAO) : public CActive + { +public: + // Ist Phase constr and Destr + static CSilenceModeObserverAO* NewL(CGlobalAudioSettings &aGlobalAudioSettings, + MAudioSettingsObserver& aAudioSettingsObserver, + TGlobalAudioSettings& aGlobalAudioSettingsData); + ~CSilenceModeObserverAO(); + void Subscribe(); + +protected: + // From CActive + void RunL(); + void DoCancel(); + TInt RunError(TInt aError); + +private: + // Constr and IInd phase constr + CSilenceModeObserverAO(CGlobalAudioSettings &aGlobalAudioSettings, + MAudioSettingsObserver& aAudioSettingsObserver, + TGlobalAudioSettings& aGlobalAudioSettingsData); + void ConstructL(); + CGlobalAudioSettings& iGlobalAudioSettings; + MAudioSettingsObserver& iAudioSettingsObserver; + RProperty iSilenceModeProperty; + TGlobalAudioSettings& iGlobalAudioSettingsData; + }; #endif // GLOBALAUDIOSETTINGSIMPL_H // End of file