sl@0: /* sl@0: * Copyright (c) 2004 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: This file contains definitions of audio effects data structures for sl@0: * equalizer. sl@0: * sl@0: */ sl@0: sl@0: sl@0: sl@0: #ifndef EQUALIZERDATA_H sl@0: #define EQUALIZERDATA_H sl@0: sl@0: // INCLUDES sl@0: #include sl@0: #include sl@0: #include sl@0: sl@0: // CLASS DECLARATION sl@0: sl@0: /** sl@0: * This class defines the effect data structure of a particular frequency band. sl@0: * sl@0: * @lib EqualizerEffect.lib sl@0: * @since 3.0 sl@0: */ sl@0: class TEfAudioEqualizerBand sl@0: { sl@0: public: sl@0: sl@0: /** sl@0: * Constructor. sl@0: */ sl@0: TEfAudioEqualizerBand() {} sl@0: sl@0: void ExternalizeL( RWriteStream& aStream ) const sl@0: { sl@0: aStream.WriteUint8L(iBandId); sl@0: aStream.WriteUint32L(iBandLevel); sl@0: aStream.WriteUint32L(iBandWidth); sl@0: aStream.WriteUint32L(iCenterFrequency); sl@0: aStream.WriteUint32L(iCrossoverFrequency); sl@0: } sl@0: sl@0: void InternalizeL( RReadStream& aStream ) sl@0: { sl@0: iBandId = aStream.ReadUint8L(); sl@0: iBandLevel = aStream.ReadUint32L(); sl@0: iBandWidth = aStream.ReadUint32L(); sl@0: iCenterFrequency = aStream.ReadUint32L(); sl@0: iCrossoverFrequency = aStream.ReadUint32L(); sl@0: } sl@0: sl@0: TUint8 iBandId; sl@0: TInt32 iBandLevel; sl@0: TInt32 iBandWidth; sl@0: TInt32 iCenterFrequency; sl@0: TInt32 iCrossoverFrequency; sl@0: sl@0: }; sl@0: sl@0: /** sl@0: * This class defines the effect data structure to be passed between client and sl@0: * server. sl@0: * sl@0: * @lib EqualizerEffect.lib sl@0: * @since 3.0 sl@0: */ sl@0: class TEfAudioEqualizer : public TEfCommon sl@0: { sl@0: public: sl@0: sl@0: /** sl@0: * Constructor. sl@0: */ sl@0: TEfAudioEqualizer() {} sl@0: sl@0: /** sl@0: * Constructor. sl@0: */ sl@0: TEfAudioEqualizer( TInt32 aMindB, TInt32 aMaxdB ) : sl@0: iMindB(aMindB), iMaxdB(aMaxdB) {} sl@0: sl@0: TInt32 iMindB; sl@0: TInt32 iMaxdB; sl@0: sl@0: }; sl@0: sl@0: sl@0: class TEfAudioEqualizerCombined : public TEfAudioEqualizer, public TEfAudioEqualizerBand sl@0: { sl@0: public: sl@0: sl@0: // Indicates the data is valid for Equalizer sl@0: TBool iAudioEqualizerDataValid; sl@0: // Indicates the data is valid for Equalizer Band sl@0: TBool iAudioEqualizerBandDataValid; sl@0: }; sl@0: sl@0: sl@0: typedef TPckgBuf TEfAudioEqualizerDataPckg; sl@0: typedef TPckgBuf TEfAudioEqualizerBandDataPckg; sl@0: typedef TPckgBuf TEfAudioEqualizerCombinedDataPckg; sl@0: sl@0: #endif // EQUALIZERDATA_H sl@0: sl@0: // End of File