remotecontrol/avrcp/playerinformation/src/playerapplicationsetting.h
changeset 51 20ac952a623c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/remotecontrol/avrcp/playerinformation/src/playerapplicationsetting.h	Wed Oct 13 16:20:29 2010 +0300
@@ -0,0 +1,89 @@
+// Copyright (c) 2007-2010 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:
+//
+
+/**
+ @file
+ @internalComponent
+ @released
+*/
+
+#ifndef PLAYERAPPLICATIONSETTING_H
+#define PLAYERAPPLICATIONSETTING_H
+
+
+/**
+Class containing all the information for one attribute.
+All the attributes for a player are contained in a RHashMap 
+of CPlayerApplicationSettings in CPlayerInfoTarget
+*/
+NONSHARABLE_CLASS(CPlayerApplicationSettings) : 	public CBase
+	{
+public:
+	/**
+	Factory function.
+	@param  aAttributeID The ID value
+	@param  aAttributeText A text description of the attribute
+	@param  aValues A list of valid values
+	@param  aValueTexts A list of descriptions of the possible values
+	@param  aInitialValue The starting value
+	@return A new CPlayerApplicationSettings
+	*/
+	static CPlayerApplicationSettings* NewL( TUint aAttributeID,
+		TDesC8& 						aAttributeText,
+		const RArray<TUint>& 			aValues,
+		RArray<TPtrC8>&					aValueTexts,
+		TUint 							aInitialValue );
+	
+	/** Destructor */
+	~CPlayerApplicationSettings();
+
+	TUint GetAttributeID();
+	TUint GetCurrentValue();
+	TPtrC8 GetAttributeText();
+	RArray<TUint>* GetValues();
+	RPointerArray<HBufC8>* GetValuesTexts();
+	TInt SetCurrentValue(TUint aValue);
+
+private:
+	/** 
+	Constructor.
+	@param aInterfaceSelector The interface selector.
+	*/
+	CPlayerApplicationSettings( );
+
+	void ConstructL(TUint aAttributeID,
+		TDesC8& 						aAttributeText,
+		const RArray<TUint>& 			aValues,
+		RArray<TPtrC8>&					aValueText,
+		TUint 							aInitialValue );
+
+private:
+	/* attribute ID */
+	TUint 							iAttributeID;
+	
+	/* text description of the attribute */
+	HBufC8*	 						iAttributeText;
+	
+	/* array of allowed values */
+	RArray<TUint> 					iValues;
+	
+	/* array of text descriptions of allowed values */
+	RPointerArray<HBufC8>			iValueText;
+	
+	/* the current value */
+	TUint 							iCurrentValue;
+	};
+	
+#endif // PLAYERAPPLICATIONSETTING_H