S60 3rd Edition API Reference: stereowideningbase.h Source File

stereowideningbase.h

Go to the documentation of this file.
00001 /*
00002 * ==============================================================================
00003 *  Name        : StereoWideningBase.h
00004 *  Part of     : Effects Framework
00005 *  Description : This is the definition of the Stereo Widening effect class.
00006 *  Version     : %version: 3 %
00007 *
00008 *  Copyright © 2006 Nokia. All rights reserved.
00009 *  This material, including documentation and any related
00010 *  computer programs, is protected by copyright controlled by
00011 *  Nokia Corporation. All rights are reserved. Copying,
00012 *  including reproducing, storing, adapting or translating, any
00013 *  or all of this material requires the prior written consent of
00014 *  Nokia Corporation. This material also contains confidential
00015 *  information which may not be disclosed to others without the
00016 *  prior written consent of Nokia Corporation.
00017 * ==============================================================================
00018 */
00019 
00020 #ifndef CSTEREOWIDENING_H
00021 #define CSTEREOWIDENING_H
00022 
00023 // INCLUDES
00024 
00025 #include <e32base.h>
00026 #include <AudioEffectBase.h>
00027 #include <StereoWideningData.h>
00028 #include <MCustomInterface.h>
00029 
00030 const TUid KUidStereoWideningEffect = {0x10203836};
00031 
00032 // FORWARD DELCARATION
00033 class CMdaAudioConvertUtility;
00034 class CMdaAudioPlayerUtility;
00035 class CMdaAudioRecorderUtility;
00036 class CMdaAudioInputStream;
00037 class CMdaAudioOutputStream;
00038 class CMdaAudioToneUtility;
00039 class CCustomCommandUtility;
00040 class CCustomInterfaceUtility;
00041 class CMMFDevSound;
00042 #start_since SINCE_3_1_SDK
00043 class CMidiClientUtility;
00044 #end_since SINCE_3_1_SDK
00045 
00046 // CLASS DECLARATION
00047 
00055 class CStereoWidening : public CAudioEffect
00056     {
00057 
00058     public:     //New Functions
00059 
00065         IMPORT_C static CStereoWidening* NewL();
00066 
00075         IMPORT_C static CStereoWidening* NewL(CMdaAudioConvertUtility& aUtility, 
00076                                               TBool aEnable = EFalse,
00077                                               TInt8 aInitialLevel = 0);
00078 
00087         IMPORT_C static CStereoWidening* NewL(CMdaAudioInputStream& aUtility,   
00088                                               TBool aEnable = EFalse,
00089                                               TInt8 aInitialLevel = 0);
00090 
00099         IMPORT_C static CStereoWidening* NewL(CMdaAudioOutputStream& aUtility, 
00100                                               TBool aEnable = EFalse,
00101                                               TInt8 aInitialLevel = 0);
00102 
00111         IMPORT_C static CStereoWidening* NewL(CMdaAudioPlayerUtility& aUtility,
00112                                               TBool aEnable = EFalse,
00113                                               TInt8 aInitialLevel = 0);
00114 
00125         IMPORT_C static CStereoWidening* NewL(CMdaAudioRecorderUtility& aUtility,
00126                                               TBool aRecordStream,
00127                                               TBool aEnable = EFalse,
00128                                               TInt8 aInitialLevel = 0);
00129 
00138         IMPORT_C static CStereoWidening* NewL(CMdaAudioToneUtility& aUtility,
00139                                               TBool aEnable = EFalse,
00140                                               TInt8 aInitialLevel = 0);
00141 
00150         IMPORT_C static CStereoWidening* NewL(CMMFDevSound& aDevSound,
00151                                               TBool aEnable = EFalse,
00152                                               TInt8 aInitialLevel = 0);
00153 
00162         IMPORT_C static CStereoWidening* NewL(CCustomCommandUtility* aUtility,
00163                                               TBool aEnable = EFalse,
00164                                               TInt8 aInitialLevel = 0);
00165 
00174         IMPORT_C static CStereoWidening* NewL(MCustomInterface& aCustomInterface,
00175                                               TBool aEnable = EFalse,
00176                                               TInt8 aInitialLevel = 0);
00177 
00178 #start_since SINCE_3_1_SDK
00179 
00188         IMPORT_C static CStereoWidening* NewL(CMidiClientUtility& aUtility,
00189                                               TBool aEnable = EFalse, 
00190                                               TInt8 aInitialLevel = 0);
00191 #end_since SINCE_3_1_SDK
00192 
00193 
00198         IMPORT_C virtual ~CStereoWidening();
00199 
00207         IMPORT_C TBool IsContinuousLevelSupported() const;
00208 
00214         IMPORT_C void SetStereoWideningLevelL( TUint8 aLevel );
00215 
00221         IMPORT_C TUint8 StereoWideningLevel() const;
00222 
00223 
00224     public: // functions from base class
00225 
00226         /*
00227         * From CAudioEffect
00228         * Get the unique identifier of the audio effect
00229         * 
00230         * @return Unique identifier
00231         */
00232         IMPORT_C TUid Uid() const;
00233 
00234     protected:  // Functions from base classes
00235 
00242         IMPORT_C const TDesC8& DoEffectData();
00243 
00251         IMPORT_C void SetEffectData( const TDesC8& aEffectDataBuffer );
00252 
00253     protected:
00254 
00261         IMPORT_C CStereoWidening();
00262 
00263     protected:
00264 
00265         // Balance data structure
00266         TEfStereoWidening iStereoWideningData;
00267         // Data package sent to server
00268         TEfStereoWideningDataPckg iDataPckgTo;
00269         // Data package received from server
00270         TEfStereoWideningDataPckg iDataPckgFrom;
00271 
00272     protected:    // Friend classes
00273         friend class CStereoWideningMessageHandler;
00274 
00275     };
00276 
00277 // of CSTEREOWIDENING_H
00278 #endif
00279 
00280 // End of File

Copyright © Nokia Corporation 2001-2007
Back to top