1 /* |
1 /* |
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
3 * All rights reserved. |
3 * All rights reserved. |
4 * This component and the accompanying materials are made available |
4 * This component and the accompanying materials are made available |
5 * under the terms of "Eclipse Public License v1.0" |
5 * under the terms of "Eclipse Public License v1.0" |
6 * which accompanies this distribution, and is available |
6 * which accompanies this distribution, and is available |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
8 * |
8 * |
9 * Initial Contributors: |
9 * Initial Contributors: |
10 * Nokia Corporation - initial contribution. |
10 * Nokia Corporation - initial contribution. |
11 * |
11 * |
12 * Contributors: |
12 * Contributors: |
13 * |
13 * |
14 * Description: |
14 * Description: Audio IO Device capabilities Itf |
15 * |
15 * |
16 */ |
16 */ |
17 |
17 |
18 #ifndef XAAUDIOIODEVICECAPABILITIESITF_H |
18 #ifndef XAAUDIOIODEVICECAPABILITIESITF_H |
19 #define XAAUDIOIODEVICECAPABILITIESITF_H |
19 #define XAAUDIOIODEVICECAPABILITIESITF_H |
20 |
20 |
21 #include "openmaxalwrapper.h" |
21 #include "openmaxalwrapper.h" |
49 |
49 |
50 XAuint32 numInputDevices; |
50 XAuint32 numInputDevices; |
51 XAuint32 numOutputDevices; |
51 XAuint32 numOutputDevices; |
52 XAmilliHertz sampleRateArray[12]; |
52 XAmilliHertz sampleRateArray[12]; |
53 XACapabilities* capslist; |
53 XACapabilities* capslist; |
54 |
54 |
55 } XAAudIODevCapaItfImpl; |
55 } XAAudIODevCapaItfImpl; |
56 |
56 |
57 /* Base interface XAAudioIODeviceCapabilitiesItf implementation */ |
57 /* Base interface XAAudioIODeviceCapabilitiesItf implementation */ |
58 XAresult XAAudIODevCapaItfImpl_GetAvailableAudioInputs(XAAudioIODeviceCapabilitiesItf self, |
58 XAresult XAAudIODevCapaItfImpl_GetAvailableAudioInputs( |
59 XAint32* pNumInputs, |
59 XAAudioIODeviceCapabilitiesItf self, XAint32* pNumInputs, |
60 XAuint32* pInputDeviceIDs); |
60 XAuint32* pInputDeviceIDs); |
61 |
61 |
62 XAresult XAAudIODevCapaItfImpl_QueryAudioInputCapabilities(XAAudioIODeviceCapabilitiesItf self, |
62 XAresult XAAudIODevCapaItfImpl_QueryAudioInputCapabilities( |
63 XAuint32 deviceId, |
63 XAAudioIODeviceCapabilitiesItf self, XAuint32 deviceId, |
64 XAAudioInputDescriptor* pDescriptor); |
64 XAAudioInputDescriptor* pDescriptor); |
65 |
65 |
66 XAresult XAAudIODevCapaItfImpl_RegisterAvailableAudioInputsChangedCallback(XAAudioIODeviceCapabilitiesItf self, |
66 XAresult XAAudIODevCapaItfImpl_RegisterAvailableAudioInputsChangedCallback( |
67 xaAvailableAudioInputsChangedCallback callback, |
67 XAAudioIODeviceCapabilitiesItf self, |
68 void* pContext); |
68 xaAvailableAudioInputsChangedCallback callback, void* pContext); |
69 |
69 |
70 XAresult XAAudIODevCapaItfImpl_GetAvailableAudioOutputs(XAAudioIODeviceCapabilitiesItf self, |
70 XAresult XAAudIODevCapaItfImpl_GetAvailableAudioOutputs( |
71 XAint32* pNumOutputs, |
71 XAAudioIODeviceCapabilitiesItf self, XAint32* pNumOutputs, |
72 XAuint32* pOutputDeviceIDs); |
72 XAuint32* pOutputDeviceIDs); |
73 |
73 |
74 XAresult XAAudIODevCapaItfImpl_QueryAudioOutputCapabilities(XAAudioIODeviceCapabilitiesItf self, |
74 XAresult XAAudIODevCapaItfImpl_QueryAudioOutputCapabilities( |
75 XAuint32 deviceId, |
75 XAAudioIODeviceCapabilitiesItf self, XAuint32 deviceId, |
76 XAAudioOutputDescriptor* pDescriptor); |
76 XAAudioOutputDescriptor* pDescriptor); |
77 |
77 |
78 XAresult XAAudIODevCapaItfImpl_RegisterAvailableAudioOutputsChangedCallback(XAAudioIODeviceCapabilitiesItf self, |
78 XAresult XAAudIODevCapaItfImpl_RegisterAvailableAudioOutputsChangedCallback( |
79 xaAvailableAudioOutputsChangedCallback callback, |
79 XAAudioIODeviceCapabilitiesItf self, |
80 void* pContext); |
80 xaAvailableAudioOutputsChangedCallback callback, void* pContext); |
81 |
81 |
82 XAresult XAAudIODevCapaItfImpl_RegisterDefaultDeviceIDMapChangedCallback(XAAudioIODeviceCapabilitiesItf self, |
82 XAresult XAAudIODevCapaItfImpl_RegisterDefaultDeviceIDMapChangedCallback( |
83 xaDefaultDeviceIDMapChangedCallback callback, |
83 XAAudioIODeviceCapabilitiesItf self, |
84 void* pContext); |
84 xaDefaultDeviceIDMapChangedCallback callback, void* pContext); |
85 |
85 |
86 XAresult XAAudIODevCapaItfImpl_GetAssociatedAudioInputs(XAAudioIODeviceCapabilitiesItf self, |
86 XAresult XAAudIODevCapaItfImpl_GetAssociatedAudioInputs( |
87 XAuint32 deviceId, |
87 XAAudioIODeviceCapabilitiesItf self, XAuint32 deviceId, |
88 XAint32* pNumAudioInputs, |
88 XAint32* pNumAudioInputs, XAuint32* pAudioInputDeviceIDs); |
89 XAuint32* pAudioInputDeviceIDs); |
|
90 |
89 |
91 XAresult XAAudIODevCapaItfImpl_GetAssociatedAudioOutputs(XAAudioIODeviceCapabilitiesItf self, |
90 XAresult XAAudIODevCapaItfImpl_GetAssociatedAudioOutputs( |
92 XAuint32 deviceId, |
91 XAAudioIODeviceCapabilitiesItf self, XAuint32 deviceId, |
93 XAint32* pNumAudioOutputs, |
92 XAint32* pNumAudioOutputs, XAuint32* pAudioOutputDeviceIDs); |
94 XAuint32* pAudioOutputDeviceIDs); |
|
95 |
93 |
96 XAresult XAAudIODevCapaItfImpl_GetDefaultAudioDevices(XAAudioIODeviceCapabilitiesItf self, |
94 XAresult XAAudIODevCapaItfImpl_GetDefaultAudioDevices( |
97 XAuint32 defaultDeviceID, |
95 XAAudioIODeviceCapabilitiesItf self, XAuint32 defaultDeviceID, |
98 XAint32 *pNumAudioDevices, |
96 XAint32 *pNumAudioDevices, XAuint32 *pAudioDeviceIDs); |
99 XAuint32 *pAudioDeviceIDs); |
|
100 |
97 |
101 XAresult XAAudIODevCapaItfImpl_QuerySampleFormatsSupported(XAAudioIODeviceCapabilitiesItf self, |
98 XAresult XAAudIODevCapaItfImpl_QuerySampleFormatsSupported( |
102 XAuint32 deviceId, |
99 XAAudioIODeviceCapabilitiesItf self, XAuint32 deviceId, |
103 XAmilliHertz samplingRate, |
100 XAmilliHertz samplingRate, XAint32* pSampleFormats, |
104 XAint32* pSampleFormats, |
101 XAint32* pNumOfSampleFormats); |
105 XAint32* pNumOfSampleFormats); |
|
106 |
102 |
107 /* XAAudIODevCapaItfImpl -specific methods */ |
103 /* XAAudIODevCapaItfImpl -specific methods */ |
108 XAAudIODevCapaItfImpl* XAAudIODevCapaItfImpl_Create(XACapabilities* caps); |
104 XAAudIODevCapaItfImpl* XAAudIODevCapaItfImpl_Create(XACapabilities* caps); |
109 void XAAudIODevCapaItfImpl_Free(XAAudIODevCapaItfImpl* self); |
105 void XAAudIODevCapaItfImpl_Free(XAAudIODevCapaItfImpl* self); |
110 |
106 |