sl@0: sl@0: // MmfStdGlblAudioEffect.h sl@0: sl@0: // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // sl@0: sl@0: #ifndef MMFSTDGLBLAUDIOEFFECT_H sl@0: #define MMFSTDGLBLAUDIOEFFECT_H sl@0: sl@0: #include sl@0: sl@0: /** sl@0: @publishedPartner sl@0: @released sl@0: @file sl@0: */ sl@0: sl@0: /** sl@0: Global Equaliser effect sl@0: This provides access to the global equaliser sl@0: */ sl@0: class CMmfGlobalEqEffect : public CMmfGlobalAudioEffect sl@0: { sl@0: public: sl@0: /** sl@0: Factory function sl@0: @param Observer to use - can be NULL sl@0: @return Freshly created object sl@0: @leave KErrNotSupported sl@0: There is no low-level implementation for this class sl@0: */ sl@0: IMPORT_C static CMmfGlobalEqEffect* NewL(MMmfGlobalAudioEffectObserver* aObserver); sl@0: sl@0: /** sl@0: Maximum number of bands an equaliser can support sl@0: */ sl@0: static const TInt KMaxBands = 10; sl@0: sl@0: /** sl@0: Struct to form basis of package buffer to ExtractValuesL() and SetByValuesL() sl@0: */ sl@0: class TValues sl@0: { sl@0: public: sl@0: TInt iNumBands; //*< Bands on current equaliser sl@0: TReal iCurrentValue[KMaxBands]; //*< current setting sl@0: TInt iNominalFreq[KMaxBands]; //*< Nominal freq for each band, used in dialogs sl@0: TReal iMin; //*< Min possible value on each band sl@0: TReal iMax; //*< Max possible value on each band sl@0: TVolumeValue iValueType; //*< How to interpet iCurrentValue, iMin and iMax sl@0: }; sl@0: sl@0: private: sl@0: CMmfGlobalEqEffect(); sl@0: void ConstructL(MMmfGlobalAudioEffectObserver* aObserver); sl@0: }; sl@0: sl@0: sl@0: /** sl@0: Global Megaboost effect sl@0: This provides access to the global megaboost. sl@0: Note there is currently no TValues struct defined for this - client apps must use sl@0: the preset interface. sl@0: */ sl@0: class CMmfGlobalMegaEffect : public CMmfGlobalAudioEffect sl@0: { sl@0: public: sl@0: /** sl@0: Factory function sl@0: @param Observer to use - can be NULL sl@0: @return Freshly created object sl@0: @leave KErrNotSupported sl@0: There is no low-level implementation for this class sl@0: */ sl@0: IMPORT_C static CMmfGlobalMegaEffect* NewL(MMmfGlobalAudioEffectObserver* aObserver); sl@0: sl@0: private: sl@0: CMmfGlobalMegaEffect(); sl@0: void ConstructL(MMmfGlobalAudioEffectObserver* aObserver); sl@0: }; sl@0: sl@0: sl@0: sl@0: #endif // MMFSTDGLBLAUDIOEFFECT_H