williamr@2: /* williamr@2: * Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). williamr@2: * All rights reserved. williamr@2: * This component and the accompanying materials are made available williamr@4: * under the terms of "Eclipse Public License v1.0" williamr@2: * which accompanies this distribution, and is available williamr@4: * at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@2: * williamr@2: * Initial Contributors: williamr@2: * Nokia Corporation - initial contribution. williamr@2: * williamr@2: * Contributors: williamr@2: * williamr@2: * Description: This is the definition of the orientation effect baseclass. williamr@2: * williamr@2: * williamr@2: */ williamr@2: williamr@2: williamr@2: #ifndef CORIENTATION_H williamr@2: #define CORIENTATION_H williamr@2: williamr@2: // INCLUDES williamr@2: williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: williamr@2: // CLASS DECLARATION williamr@2: williamr@2: /** williamr@2: * This is the orientation effect base class. williamr@2: * williamr@2: * @lib OrientationEffect.lib williamr@2: * @since 3.0 williamr@2: */ williamr@2: williamr@2: class COrientation : public CAudioEffect williamr@2: { williamr@2: williamr@2: protected: // Constructors and destructor williamr@2: williamr@2: /** williamr@2: * williamr@2: * Destructor williamr@2: */ williamr@2: IMPORT_C virtual ~COrientation(); williamr@2: williamr@2: /** williamr@2: * Private C++ constructor for this class. williamr@2: */ williamr@2: IMPORT_C COrientation(); williamr@2: williamr@2: williamr@2: public: //New Functions williamr@2: williamr@2: /** williamr@2: * Get the orientation vectors for the position williamr@2: * @since 3.0 williamr@2: * @param aHeading The heading (thousandths of radians) williamr@2: * @param aPitch The Pitch (thousandths of radians) williamr@2: * @param aRoll The Roll (thousandths of radians) williamr@2: * @return - williamr@2: */ williamr@2: IMPORT_C void Orientation( TInt32& aHeading, TInt32& aPitch, TInt32& aRoll ); williamr@2: williamr@2: /** williamr@2: * Gets the orientation of the position. williamr@2: * @since 3.0 williamr@2: * @param aFrontX X value of Front vector williamr@2: * @param aFrontY Y value of Front vector williamr@2: * @param aFrontZ Z value of Front vector williamr@2: * @param aAboveX X value of Above vector williamr@2: * @param aAboveY Y value of Above vector williamr@2: * @param aAboveZ Z value of Above vector williamr@2: * @return - williamr@2: */ williamr@2: IMPORT_C void OrientationVectors( TInt32& aFrontX, TInt32& aFrontY, TInt32& aFrontZ, williamr@2: TInt32& aAboveX, TInt32& aAboveY, TInt32& aAboveZ ); williamr@2: williamr@2: /** williamr@2: * Sets the Heading, Pitch, Roll values for the orientation of the source williamr@2: * @since 3.0 williamr@2: * @param aHeading The heading (thousandths of radians) williamr@2: * @param aPitch The Pitch (thousandths of radians) williamr@2: * @param aRoll The Roll (thousandths of radians) williamr@2: * @return - williamr@2: */ williamr@2: IMPORT_C void SetOrientationL( TInt32 aHeading, TInt32 aPitch, TInt32 aRoll ); williamr@2: williamr@2: /** williamr@2: * Sets the Front and Above vectors for the orientation of the position. williamr@2: * @since 3.0 williamr@2: * @param aFrontX X value of Front vector williamr@2: * @param aFrontY Y value of Front vector williamr@2: * @param aFrontZ Z value of Front vector williamr@2: * @param aAboveX X value of Above vector williamr@2: * @param aAboveY Y value of Above vector williamr@2: * @param aAboveZ Z value of Above vector williamr@2: * @return - williamr@2: */ williamr@2: IMPORT_C void SetOrientationVectorsL( TInt32 aFrontX, TInt32 aFrontY, TInt32 aFrontZ, williamr@2: TInt32 aAboveX, TInt32 aAboveY, TInt32 aAboveZ ); williamr@2: williamr@2: protected: // Functions from base classes williamr@2: williamr@2: /** williamr@2: * From CAudioEffect williamr@2: * Create a package of the effect data williamr@2: * @since 3.0 williamr@2: * @return A descriptor containing the effect data. williamr@2: */ williamr@2: IMPORT_C const TDesC8& DoEffectData(); williamr@2: williamr@2: /** williamr@2: * From CAudioEffect williamr@2: * Internal function to unpack effect data williamr@2: * @since 3.0 williamr@2: * @param aEffectDataBuffer Descriptor containing packed effect data williamr@2: * @return - williamr@2: */ williamr@2: IMPORT_C void SetEffectData( const TDesC8& aEffectDataBuffer ); williamr@2: williamr@2: protected: williamr@2: williamr@2: // Orientation data structure williamr@2: TEfOrientation iOrientationData; williamr@2: // Data package sent to server williamr@2: TEfOrientationDataPckg iDataPckgTo; williamr@2: // Data package received from server williamr@2: TEfOrientationDataPckg iDataPckgFrom; williamr@2: }; williamr@2: williamr@2: #endif // of CORIENTATION_H williamr@2: williamr@2: // End of File