00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef CSTEREOWIDENING_H
00021 #define CSTEREOWIDENING_H
00022
00023
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
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 class CMidiClientUtility;
00043 class CDrmPlayerUtility;
00044 class CVideoPlayerUtility;
00045
00046
00047
00055 class CStereoWidening : public CAudioEffect
00056 {
00057
00058 public:
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
00186 IMPORT_C static CStereoWidening* NewL(CMidiClientUtility& aUtility,
00187 TBool aEnable = EFalse,
00188 TInt8 aInitialLevel = 0);
00189
00196 IMPORT_C static CStereoWidening* NewL(CDrmPlayerUtility& aUtility,
00197 TBool aEnable = EFalse,
00198 TInt8 aInitialLevel = 0);
00199
00206 IMPORT_C static CStereoWidening* NewL(CVideoPlayerUtility& aUtility,
00207 TBool aEnable = EFalse,
00208 TInt8 aInitialLevel = 0);
00209
00214 IMPORT_C virtual ~CStereoWidening();
00215
00223 IMPORT_C TBool IsContinuousLevelSupported() const;
00224
00230 IMPORT_C void SetStereoWideningLevelL( TUint8 aLevel );
00231
00237 IMPORT_C TUint8 StereoWideningLevel() const;
00238
00239
00240 public:
00241
00242
00243
00244
00245
00246
00247
00248 IMPORT_C TUid Uid() const;
00249
00250 protected:
00251
00258 IMPORT_C const TDesC8& DoEffectData();
00259
00267 IMPORT_C void SetEffectData( const TDesC8& aEffectDataBuffer );
00268
00269 protected:
00270
00277 IMPORT_C CStereoWidening();
00278
00279 protected:
00280
00281
00282 TEfStereoWidening iStereoWideningData;
00283
00284 TEfStereoWideningDataPckg iDataPckgTo;
00285
00286 TEfStereoWideningDataPckg iDataPckgFrom;
00287
00288 protected:
00289 friend class CStereoWideningMessageHandler;
00290
00291 };
00292
00293
00294 #endif
00295
00296