00001 /* 00002 * ============================================================================== 00003 * Name : ListenerDopplerBase.h 00004 * Part of : Effects Framework 00005 * Description : This is the definition of the Listener Doppler 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 CLISTENERDOPPLER_H 00021 #define CLISTENERDOPPLER_H 00022 00023 // INCLUDES 00024 00025 #include <e32base.h> 00026 #include <DopplerBase.h> 00027 #include <MCustomInterface.h> 00028 00029 const TUid KUidListenerDopplerEffect = {0x10207B16}; 00030 00031 // FORWARD DELCARATION 00032 class CMdaAudioConvertUtility; 00033 class CMdaAudioPlayerUtility; 00034 class CMdaAudioRecorderUtility; 00035 class CMdaAudioInputStream; 00036 class CMdaAudioOutputStream; 00037 class CMdaAudioToneUtility; 00038 class CCustomCommandUtility; 00039 class CCustomInterfaceUtility; 00040 class CMMFDevSound; 00041 #start_since SINCE_3_1_SDK 00042 class CMidiClientUtility; 00043 #end_since SINCE_3_1_SDK 00044 00045 // CLASS DECLARATION 00046 00054 class CListenerDoppler : public CDoppler 00055 { 00056 00057 public: // Constructors and Destructor 00058 00065 IMPORT_C static CListenerDoppler* NewL( CMdaAudioConvertUtility& aUtility ); 00066 00073 IMPORT_C static CListenerDoppler* NewL( CMdaAudioInputStream& aUtility ); 00074 00081 IMPORT_C static CListenerDoppler* NewL( CMdaAudioOutputStream& aUtility ); 00082 00089 IMPORT_C static CListenerDoppler* NewL( CMdaAudioPlayerUtility& aUtility ); 00090 00099 IMPORT_C static CListenerDoppler* NewL( CMdaAudioRecorderUtility& aUtility, TBool aRecordStream ); 00100 00107 IMPORT_C static CListenerDoppler* NewL( CMdaAudioToneUtility& aUtility ); 00108 00115 IMPORT_C static CListenerDoppler* NewL( CMMFDevSound& aDevSound ); 00116 00123 IMPORT_C static CListenerDoppler* NewL( CCustomCommandUtility* aUtility ); 00124 00131 IMPORT_C static CListenerDoppler* NewL( MCustomInterface& aCustomInterface ); 00132 00133 #start_since SINCE_3_1_SDK 00134 00141 IMPORT_C static CListenerDoppler* NewL( CMidiClientUtility& aUtility ); 00142 #end_since SINCE_3_1_SDK 00143 00144 00149 IMPORT_C virtual ~CListenerDoppler(); 00150 00151 public: // functions from base class 00152 00153 /* 00154 * From CAudioEffect 00155 * Get the unique identifier of the audio effect 00156 * 00157 * @return Unique identifier 00158 */ 00159 IMPORT_C TUid Uid() const; 00160 00161 protected: 00162 00169 IMPORT_C CListenerDoppler(); 00170 00171 protected: // Friend classes 00172 00173 friend class CListenerDopplerMessageHandler; 00174 00175 }; 00176 00177 // of CLISTENERDOPPLER_H 00178 #endif 00179 00180 // End of File