epoc32/include/locationbase.h
branchSymbian2
changeset 2 2fe1408b6811
parent 0 061f57f2323e
child 4 837f303aceeb
--- a/epoc32/include/locationbase.h	Tue Nov 24 13:55:44 2009 +0000
+++ b/epoc32/include/locationbase.h	Tue Mar 16 16:12:26 2010 +0000
@@ -1,1 +1,127 @@
-locationbase.h
+/*
+* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
+* which accompanies this distribution, and is available
+* at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  This is the definition of the base class for location effect.
+*
+*
+*/
+
+
+#ifndef CLOCATION_H
+#define CLOCATION_H
+
+// INCLUDES
+
+#include <e32base.h>
+#include <AudioEffectBase.h>
+#include <LocationData.h>
+
+// CLASS DECLARATION
+
+/**
+*  This is the base class for location effect settings.
+*
+*  @lib LocationEffect.lib
+*  @since 3.0
+*/
+
+class CLocation : public CAudioEffect
+	{
+
+	protected:	// Constructors and destructor
+
+		/**
+        *
+        * Destructor
+        */
+		IMPORT_C virtual ~CLocation();
+
+		/**
+		* Private C++ constructor for this class.
+        */
+		IMPORT_C CLocation();
+
+	public: // New Functions
+
+		/**
+        * Gets the cartesian coordinates for the location of the position.
+        * @since 3.0
+        * @param aX The x-coordinate of the position (in millimeters)
+        * @param aY The y-coordinate of the position (in millimeters)
+        * @param aZ The z-coordinate of the position (in millimeters)
+        * @return -
+        */
+		IMPORT_C void LocationCartesian( TInt32& aX, TInt32& aY, TInt32& aZ );
+
+		/**
+        * Gets the spherical coordinates for the location of the position.
+        * @since 3.0
+        * @param aAzimuth The Azimuth of the position (thousandths of radians)
+        * @param aElevation The elevation of the position (thousandths of radians)
+        * @param aRadius The radius of the position (thousandths of radians)
+        * @return -
+        */
+		IMPORT_C void LocationSpherical( TInt32& aAzimuth, TInt32& aElevation, TInt32& aRadius );
+
+		/**
+        * Sets the cartesian coordinates for the location of the position.
+        * @since 3.0
+        * @param aX The x-coordinate of the position
+        * @param aY The y-coordinate of the position
+        * @param aZ The z-coordinate of the position
+        * @return -
+        */
+		IMPORT_C void SetLocationCartesianL( TInt32& aX, TInt32& aY, TInt32& aZ );
+
+		/**
+        * Sets the spherical coordinates for the location of the position.
+        * @since 3.0
+        * @param aAzimuth The Azimuth of the position (thousandths of radians)
+        * @param aElevation The elevation of the position (thousandths of radians)
+        * @param aRadius The radius of the position (thousandths of radians)
+        * @return -
+        */
+		IMPORT_C void SetLocationSphericalL( TInt32& aAzimuth, TInt32& aElevation, TInt32& aRadius );
+
+    protected:  // Functions from base classes
+
+		/**
+		* From CAudioEffect
+		* Create a package of the effect data
+        * @since 3.0
+        * @return A descriptor containing the effect data.
+        */
+		IMPORT_C const TDesC8& DoEffectData();
+
+		/**
+		* From CAudioEffect
+		* Internal function to unpack effect data
+        * @since 3.0
+        * @param aEffectDataBuffer Descriptor containing packed effect data
+        * @return -
+        */
+        IMPORT_C void SetEffectData( const TDesC8& aEffectDataBuffer );
+
+	protected:
+
+		// Location data structure
+		TEfLocation iLocationData;
+		// Data package sent to server
+		TEfLocationDataPckg iDataPckgTo;
+		// Data package received from server
+		TEfLocationDataPckg iDataPckgFrom;
+	};
+
+#endif	// of CLOCATION_H
+
+// End of File