First public contribution.
2 * Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
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".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
14 * Description: AudioInput API header
24 #include <midiclientutility.h>
26 // FORWARD DECLARATIONS
27 class CMdaAudioRecorderUtility;
29 class MCustomInterface;
31 class CMdaAudioInputStream;
32 class CVideoRecorderUtility;
37 * ?one_line_short_description.
38 * ?other_description_lines
40 class CAudioInput : public CBase
44 enum TAudioInputPreference
53 typedef TArray<TAudioInputPreference> TAudioInputArray;
55 public: // Constructors and destructor
58 * Two-phased constructor.
60 IMPORT_C static CAudioInput* NewL(CMdaAudioRecorderUtility& aUtility);
61 // IMPORT_C static CAudioInput* NewL(CMidiClientUtility& aUtility);
62 IMPORT_C static CAudioInput* NewL(CMMFDevSound& aDevSound);
63 IMPORT_C static CAudioInput* NewL(MCustomInterface& aUtility);
64 IMPORT_C static CAudioInput* NewL(MCustomCommand& aUtility);
65 IMPORT_C static CAudioInput* NewL(CMdaAudioInputStream& aUtility);
66 IMPORT_C static CAudioInput* NewL(CVideoRecorderUtility& aUtility);
69 * ?member_description.
70 * @param ?arg1 ?description
71 * @return ?description
73 virtual TAudioInputArray AudioInput() = 0;
76 * ?member_description.
77 * @param ?arg1 ?description
78 * @return ?description
80 virtual void SetAudioInputL(TAudioInputArray aAudioInputs) = 0;
84 #endif // CAUDIOINPUT_H