radioengine/settings/api/mradiosettingssetter.h
branchRCL_3
changeset 19 cce62ebc198e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/radioengine/settings/api/mradiosettingssetter.h	Tue Aug 31 15:15:02 2010 +0300
@@ -0,0 +1,131 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+#ifndef M_RADIOSETTINGSSETTERS_H
+#define M_RADIOSETTINGSSETTERS_H
+
+// User includes
+#include "mradioenginesettings.h"
+
+// Forward declarations
+class MRadioSettingsObserver;
+
+/**
+ * Setter interface for radio settings. This should be accessible only for CRadioEngineImp
+ */
+NONSHARABLE_CLASS( MRadioSettingsSetter ) : public MRadioEngineSettings
+    {
+public:
+
+    /**
+     * Sets observer for the radio settings
+     *
+     * @param aObserver The observer
+     */
+    virtual void SetObserver( MRadioSettingsObserver* aObserver ) = 0;
+
+    /**
+     * Stores the radio volume level that is used when audio is routed through the headset.
+     *
+     * @param    aVolume     The radio volume level to store.
+     *
+     */
+    virtual TInt SetHeadsetVolume( TInt aVolume ) = 0;
+
+    /**
+     * Stores the radio volume level that is used when audio is routed through the speaker.
+     *
+     * @param   aVolume     The radio volume level.
+     */
+    virtual TInt SetSpeakerVolume( TInt aVolume ) = 0;
+
+    /**
+     * Wrapper for storing the radio volume level of current output device
+     *
+     * @param   aVolume     The radio volume level.
+     */
+    virtual TInt SetVolume( TInt aVolume ) = 0;
+
+    /**
+     * Stores the radio output mode to use.
+     *
+     * @param   aOutputMode     The radio output mode to use.
+     */
+    virtual TInt SetOutputMode( TInt aOutputMode ) = 0;
+
+    /**
+     * Stores the radio audio route ( headset/ihf ) to use.
+     *
+     * @param   aAudioRoute   The radio output destination to use.
+     */
+    virtual TInt SetAudioRoute( TInt aAudioRoute ) = 0;
+
+    /**
+     * Stores the radio muting state when audio is routed through the headset.
+     *
+     * @param   aMuted      <code>ETrue</code> if radio is to be muted when routed through the headset, <code>EFalse</code> otherwise.
+     */
+    virtual TInt SetHeadsetVolMuted( TBool aMuted ) = 0;
+
+    /**
+     * Stores the radio muting state when audio is routed through the speaker.
+     *
+     * @param   aMuted      <code>ETrue</code> if radio is to be muted when routed through the speaker, <code>EFalse</code> otherwise.
+     */
+    virtual TInt SetSpeakerVolMuted( TBool aMuted ) = 0;
+
+    /**
+     * Wrapper for storing the radio muting state of current output device
+     *
+     * @param   aMuted      <code>ETrue</code> if radio is to be muted, <code>EFalse</code> otherwise.
+     */
+    virtual TInt SetVolMuted( TBool aMuted ) = 0;
+
+    /**
+     * Stores the power state of the radio.
+     *
+     * @param   aPowerState     <code>ETrue</code> if radio is powered on, <code>EFalse</code> otherwise.
+     */
+    virtual TInt SetPowerOn( TBool aPowerState ) = 0;
+
+    /**
+     * Stores the frequency tuned.
+     *
+     * @param   aFrequency  The frequency to store.
+     */
+    virtual TInt SetTunedFrequency( TUint32 aFrequency ) = 0;
+
+    /**
+     * Stores the region ID currently in use.
+     *
+     * @param   aRegion     The region's ID to store.
+     */
+    virtual TInt SetRegionId( TInt aRegion ) = 0;
+
+    /**
+     *
+     */
+    virtual TInt SetNetworkId( const TDesC& aNetworkId ) = 0;
+
+    /**
+     *
+     */
+    virtual TInt SetCountryCode( const TDesC& aCountryCode ) = 0;
+
+    };
+
+#endif // M_RADIOSETTINGSSETTERS_H