1 /* |
|
2 * Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: Utility to get the preset and data |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 #ifndef CAMMSEMCAUDIOVIRTUALIZERENVIRONMENTALPRESETUTILITY_H |
|
20 #define CAMMSEMCAUDIOVIRTUALIZERENVIRONMENTALPRESETUTILITY_H |
|
21 |
|
22 // INCLUDES |
|
23 #include <e32base.h> |
|
24 #include "cammsemcbasemmfdevsound.h" |
|
25 #include <StereoWideningUtility.h> |
|
26 #include <StereoWideningUtilityData.h> |
|
27 |
|
28 |
|
29 // CLASS DECLARATION |
|
30 |
|
31 /** |
|
32 * @since 5.1 |
|
33 */ |
|
34 NONSHARABLE_CLASS(CAMMSEMCAudioVirtualizerEnvironmentalPresetUtility) |
|
35 : public CAMMSEMCBaseMMFDevSound |
|
36 { |
|
37 public: // destructor |
|
38 |
|
39 /** |
|
40 * Destructor. |
|
41 */ |
|
42 ~CAMMSEMCAudioVirtualizerEnvironmentalPresetUtility(); |
|
43 |
|
44 public: // New functions |
|
45 |
|
46 /** |
|
47 * Gets the current preset. |
|
48 * |
|
49 * @return the current preset |
|
50 */ |
|
51 void GetPresetAtIndexL(TDes& aPreset ,TInt iPresetIndex); |
|
52 |
|
53 /** |
|
54 * Sets the effect according to the given preset. |
|
55 * |
|
56 * @param aPreset The new preset that will be taken into use |
|
57 */ |
|
58 void SetPresetL(const TDesC& aPreset); |
|
59 |
|
60 /** |
|
61 * Creates utilities that can be used to obtain CSterioWidening Utility |
|
62 * and preset data . |
|
63 * Does nothing if the utility already exists. |
|
64 */ |
|
65 virtual void PrepareEmptyStereoWideningUtilitiesL(); |
|
66 |
|
67 /** |
|
68 * Deletes Environmental utilities |
|
69 * Does nothing if the utilities have already been deleted. |
|
70 */ |
|
71 virtual void DeleteEmptyStereoWideningUtilities(); |
|
72 /** |
|
73 * Gets list of preset names available. |
|
74 * @param aPresetNames Returned preset names |
|
75 */ |
|
76 virtual void GetPresetNamesL(CDesCArray& aPresetNames); |
|
77 |
|
78 CStereoWidening * GetStereoWideningAtPresetIndexL(TInt iPresetIndex); |
|
79 |
|
80 public: |
|
81 /** |
|
82 * c++ constructor. |
|
83 */ |
|
84 CAMMSEMCAudioVirtualizerEnvironmentalPresetUtility(); |
|
85 /** |
|
86 * 2nd phase constructor. |
|
87 */ |
|
88 |
|
89 void ConstructL(); |
|
90 |
|
91 protected: // data |
|
92 |
|
93 // Available preset names, owned |
|
94 CDesCArrayFlat* iPresetNames; |
|
95 // Used to get preset names and data when the group is empty |
|
96 // (there are no controls in the group, and thus, no actual |
|
97 // control can be used for that purpose). |
|
98 CStereoWideningUtility* iEmptyStereoWideningUtility; |
|
99 |
|
100 }; |
|
101 |
|
102 #endif // CAMMSEMCAUDIOVIRTUALIZERENVIRONMENTALPRESETUTILITY_H |
|
103 |
|
104 |
|