--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mpserviceplugins/inc/mpxaudioeffectproperties.h Fri Mar 19 09:28:13 2010 +0200
@@ -0,0 +1,82 @@
+/*
+* Copyright (c) 2006 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: Container of properties for audio effect
+*
+*/
+
+
+
+#ifndef CMPXAUDIOEFFECTPROPERTIES_H
+#define CMPXAUDIOEFFECTPROPERTIES_H
+
+
+#include <e32base.h>
+#include <s32strm.h>
+
+
+/**
+* Supports 'standard' a attributes. Streamable object
+*/
+class CMPXAudioEffectProperties : public CBase
+ {
+public:
+ inline virtual ~CMPXAudioEffectProperties();
+public:
+ inline TInt Balance() const;
+ inline TInt Reverb() const;
+ inline TBool Stereo() const;
+ inline TBool BassBoost() const;
+ inline TBool Loudness() const;
+
+public:
+ inline void SetBalance(TInt aBalance);
+ inline void SetReverb(TInt aReverb);
+ inline void SetStereo(TBool aStereo);
+ inline void SetBassBoost(TBool aBassBoost);
+ inline void SetLoudness(TBool aLoudness);
+ inline void Reset();
+public:
+ inline void ExternalizeL(RWriteStream& aStream) const;
+ inline void InternalizeL(RReadStream& aStream);
+ inline void SaveToFileL() const;
+ inline void LoadFromFileL();
+private:
+ enum TDesProperty
+ {
+ //EDesPresetName, // Not used yet. EQ
+ EDesNumItems = 0
+ };
+
+ enum TIntProperty
+ {
+ EIntBalance, //(From -100 to 100, 0 = center)
+ EIntReverb, //(from 1 to 8, 0 = default)
+ EIntStereo, //(default off)
+ EIntBassBoost, //(default off)
+ EIntLoudness, //(default off)
+ EIntNumItems
+ };
+private:
+ inline const TDesC& Value(TDesProperty aProperty) const;
+ inline TInt Value(TIntProperty aProperty) const;
+ inline void SetValue(TDesProperty aProperty,const TDesC& aValue);
+ inline void SetValue(TIntProperty aProperty,TInt aValue);
+private:
+ //TFixedArray<HBufC*,EDesNumItems> iDesValues;
+ TFixedArray<TInt,EIntNumItems> iIntValues;
+ };
+
+#include "mpxaudioeffectproperties.inl"
+
+#endif // CMPXAUDIOEFFECTPROPERTIES_H