ReactOS  0.4.14-dev-358-gbef841c
phone.c
Go to the documentation of this file.
1 /*
2  * TAPI32 phone services
3  *
4  * Copyright 1999 Andreas Mohr
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19  */
20 
21 #include <stdarg.h>
22 
23 #include "windef.h"
24 #include "winbase.h"
25 #include "objbase.h"
26 #include "tapi.h"
27 #include "wine/debug.h"
28 
29 /*
30  * Additional TSPI functions:
31  * - voiceGetHandles
32  * - TSPI_ProviderInit
33  * - TSPI_ProviderShutdown
34  * - TSPI_ProviderEnumDevices
35  * - TSPI_ProviderConfig
36 */
38 
39 /***********************************************************************
40  * phoneClose (TAPI32.@)
41  */
43 {
44  FIXME("(%p), stub.\n", hPhone);
45  /* call TSPI function here ! */
46  return 0;
47 }
48 
49 /***********************************************************************
50  * phoneConfigDialog (TAPI32.@)
51  */
52 DWORD WINAPI phoneConfigDialogA(DWORD dwDeviceID, HWND hwndOwner, LPCSTR lpszDeviceClass)
53 {
54  FIXME("(%08x, %p, %s): stub.\n", dwDeviceID, hwndOwner, lpszDeviceClass);
55  return 0;
56 }
57 
58 /***********************************************************************
59  * phoneDevSpecific (TAPI32.@)
60  */
62 {
63  FIXME("(%p, %p, %d): stub.\n", hPhone, lpParams, dwSize);
64  return 1;
65 }
66 
67 /***********************************************************************
68  * phoneGetButtonInfo (TAPI32.@)
69  */
70 DWORD WINAPI phoneGetButtonInfoA(HPHONE hPhone, DWORD dwButtonLampID,
71  LPPHONEBUTTONINFO lpButtonInfo)
72 {
73  FIXME("(%p, %08x, %p): stub.\n", hPhone, dwButtonLampID, lpButtonInfo);
74  return 0;
75 }
76 
77 /***********************************************************************
78  * phoneGetData (TAPI32.@)
79  */
80 DWORD WINAPI phoneGetData(HPHONE hPhone, DWORD dwDataID, LPVOID lpData, DWORD dwSize)
81 {
82  FIXME("(%p, %08x, %p, %d): stub.\n", hPhone, dwDataID, lpData, dwSize);
83  return 0;
84 }
85 
86 /***********************************************************************
87  * phoneGetDevCaps (TAPI32.@)
88  */
90  DWORD dwAPIVersion, DWORD dwExtVersion, LPPHONECAPS lpPhoneCaps)
91 {
92  FIXME("(%p, %08x, %08x, %08x, %p): stub.\n", hPhoneApp, dwDeviceID, dwAPIVersion, dwExtVersion, lpPhoneCaps);
93  /* call TSPI function here ! */
94  return 0;
95 }
96 
97 /***********************************************************************
98  * phoneGetDisplay (TAPI32.@)
99  */
101 {
102  FIXME("(%p, %p): stub.\n", hPhone, lpDisplay);
103  return 0;
104 }
105 
106 /***********************************************************************
107  * phoneGetGain (TAPI32.@)
108  */
109 DWORD WINAPI phoneGetGain(HPHONE hPhone, DWORD dwHookSwitchDev, LPDWORD lpdwGain)
110 {
111  FIXME("(%p, %08x, %p): stub.\n", hPhone, dwHookSwitchDev, lpdwGain);
112  /* call TSPI function here ! */
113  return 0;
114 }
115 
116 /***********************************************************************
117  * phoneGetHookSwitch (TAPI32.@)
118  */
119 DWORD WINAPI phoneGetHookSwitch(HPHONE hPhone, LPDWORD lpdwHookSwitchDevs)
120 {
121  FIXME("(%p, %p): stub.\n", hPhone, lpdwHookSwitchDevs);
122  /* call TSPI function here ! */
123  return 0;
124 }
125 
126 /***********************************************************************
127  * phoneGetID (TAPI32.@)
128  */
130  LPCSTR lpszDeviceClass)
131 {
132  FIXME("(%p, %p, %s): stub.\n", hPhone, lpDeviceID, lpszDeviceClass);
133  /* call TSPI function here ! */
134  return 0;
135 }
136 
137 /***********************************************************************
138  * phoneGetIcon (TAPI32.@)
139  */
140 DWORD WINAPI phoneGetIconA(DWORD dwDeviceID, LPCSTR lpszDeviceClass,
141  HICON *lphIcon)
142 {
143  FIXME("(%08x, %s, %p): stub.\n", dwDeviceID, lpszDeviceClass, lphIcon);
144  /* call TSPI function here ! */
145  return 0;
146 }
147 
148 /***********************************************************************
149  * phoneGetLamp (TAPI32.@)
150  */
151 DWORD WINAPI phoneGetLamp(HPHONE hPhone, DWORD dwButtonLampID,
152  LPDWORD lpdwLampMode)
153 {
154  FIXME("(%p, %08x, %p): stub.\n", hPhone, dwButtonLampID, lpdwLampMode);
155  return 0;
156 }
157 
158 /***********************************************************************
159  * phoneGetMessage (TAPI32.@)
160  */
162 {
163  FIXME("(%p, %p, %08x): stub.\n", hPhoneApp, lpMessage, dwTimeout);
164  return 0;
165 }
166 
167 /***********************************************************************
168  * phoneGetRing (TAPI32.@)
169  */
170 DWORD WINAPI phoneGetRing(HPHONE hPhone, LPDWORD lpdwRingMode, LPDWORD lpdwVolume)
171 {
172  FIXME("(%p, %p, %p): stub.\n", hPhone, lpdwRingMode, lpdwVolume);
173  return 0;
174 }
175 
176 /***********************************************************************
177  * phoneGetStatus (TAPI32.@)
178  */
180 {
181  FIXME("(%p, %p): stub.\n", hPhone, lpPhoneStatus);
182  /* call TSPI function here ! */
183  return 0;
184 }
185 
186 /***********************************************************************
187  * phoneGetStatusMessages (TAPI32.@)
188  */
190  LPDWORD lpdwButtonModes, LPDWORD lpdwButtonStates)
191 {
192  FIXME("(%p, %p, %p, %p): stub.\n", hPhone, lpdwPhoneStates, lpdwButtonModes, lpdwButtonStates);
193  return 0;
194 }
195 
196 /***********************************************************************
197  * phoneGetVolume (TAPI32.@)
198  */
199 DWORD WINAPI phoneGetVolume(HPHONE hPhone, DWORD dwHookSwitchDevs,
200  LPDWORD lpdwVolume)
201 {
202  FIXME("(%p, %08x, %p): stub.\n", hPhone, dwHookSwitchDevs, lpdwVolume);
203  /* call TSPI function here ! */
204  return 0;
205 }
206 
207 /***********************************************************************
208  * phoneInitialize (TAPI32.@)
209  */
210 DWORD WINAPI phoneInitialize(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCSTR lpszAppName, LPDWORD lpdwNumDevs)
211 {
212  FIXME("(%p, %p, %p, %s, %p): stub.\n", lphPhoneApp, hInstance, lpfnCallback, lpszAppName, lpdwNumDevs);
213  return 0;
214 }
215 
216 /***********************************************************************
217  * phoneInitializeiExA (TAPI32.@)
218  */
219 DWORD WINAPI phoneInitializeExA(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCSTR lpszAppName, LPDWORD lpdwNumDevs, LPDWORD lpdwAPIVersion, LPPHONEINITIALIZEEXPARAMS lpPhoneInitializeExParams)
220 {
221  FIXME("(%p, %p, %p, %s, %p, %p, %p): stub.\n", lphPhoneApp, hInstance, lpfnCallback, lpszAppName, lpdwNumDevs, lpdwAPIVersion, lpPhoneInitializeExParams);
222  *lpdwNumDevs = 0;
223  return 0;
224 }
225 
226 /***********************************************************************
227  * phoneInitializeiExW (TAPI32.@)
228  */
229 DWORD WINAPI phoneInitializeExW(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCWSTR lpszAppName, LPDWORD lpdwNumDevs, LPDWORD lpdwAPIVersion, LPPHONEINITIALIZEEXPARAMS lpPhoneInitializeExParams)
230 {
231  FIXME("(%p, %p, %p, %s, %p, %p, %p): stub.\n", lphPhoneApp, hInstance, lpfnCallback, debugstr_w(lpszAppName), lpdwNumDevs, lpdwAPIVersion, lpPhoneInitializeExParams);
232  *lpdwNumDevs = 0;
233  return 0;
234 }
235 
236 /***********************************************************************
237  * phoneNegotiateAPIVersion (TAPI32.@)
238  */
239 DWORD WINAPI phoneNegotiateAPIVersion(HPHONEAPP hPhoneApp, DWORD dwDeviceID, DWORD dwAPILowVersion, DWORD dwAPIHighVersion, LPDWORD lpdwAPIVersion, LPPHONEEXTENSIONID lpExtensionID)
240 {
241  FIXME("(): stub.\n");
242  return 0;
243 }
244 
245 /***********************************************************************
246  * phoneNegotiateExtVersion (TAPI32.@)
247  */
249  DWORD dwAPIVersion, DWORD dwExtLowVersion,
250  DWORD dwExtHighVersion, LPDWORD lpdwExtVersion)
251 {
252  FIXME("(): stub.\n");
253  /* call TSPI function here ! */
254  return 0;
255 }
256 
257 /***********************************************************************
258  * phoneOpen (TAPI32.@)
259  */
260 DWORD WINAPI phoneOpen(HPHONEAPP hPhoneApp, DWORD dwDeviceID, LPHPHONE lphPhone, DWORD dwAPIVersion, DWORD dwExtVersion, DWORD dwCallbackInstance, DWORD dwPrivileges)
261 {
262  FIXME("(): stub.\n");
263  /* call TSPI function here ! */
264  return 0;
265 }
266 
267 /***********************************************************************
268  * phoneSetButtonInfo (TAPI32.@)
269  */
270 DWORD WINAPI phoneSetButtonInfoA(HPHONE hPhone, DWORD dwButtonLampID, LPPHONEBUTTONINFO lpButtonInfo)
271 {
272  FIXME("(%p, %08x, %p): stub.\n", hPhone, dwButtonLampID, lpButtonInfo);
273  return 0;
274 }
275 
276 /***********************************************************************
277  * phoneSetData (TAPI32.@)
278  */
280 {
281  FIXME("(%p, %08x, %p, %d): stub.\n", hPhone, dwDataID, lpData, dwSize);
282  return 1;
283 }
284 
285 /***********************************************************************
286  * phoneSetDisplay (TAPI32.@)
287  */
288 DWORD WINAPI phoneSetDisplay(HPHONE hPhone, DWORD dwRow, DWORD dwColumn, LPCSTR lpszDisplay, DWORD dwSize)
289 {
290  FIXME("(%p, '%s' at %d/%d, len %d): stub.\n", hPhone, lpszDisplay, dwRow, dwColumn, dwSize);
291  return 1;
292 }
293 
294 /***********************************************************************
295  * phoneSetGain (TAPI32.@)
296  */
297 DWORD WINAPI phoneSetGain(HPHONE hPhone, DWORD dwHookSwitchDev, DWORD dwGain)
298 {
299  FIXME("(%p, %08x, %d): stub.\n", hPhone, dwHookSwitchDev, dwGain);
300  /* call TSPI function here ! */
301  return 1;
302 }
303 
304 /***********************************************************************
305  * phoneSetHookSwitch (TAPI32.@)
306  */
307 DWORD WINAPI phoneSetHookSwitch(HPHONE hPhone, DWORD dwHookSwitchDevs, DWORD dwHookSwitchMode)
308 {
309  FIXME("(%p, %08x, %08x): stub.\n", hPhone, dwHookSwitchDevs, dwHookSwitchMode);
310  /* call TSPI function here ! */
311  return 1;
312 }
313 
314 /***********************************************************************
315  * phoneSetLamp (TAPI32.@)
316  */
317 DWORD WINAPI phoneSetLamp(HPHONE hPhone, DWORD dwButtonLampID, DWORD lpdwLampMode)
318 {
319  FIXME("(%p, %08x, %08x): stub.\n", hPhone, dwButtonLampID, lpdwLampMode);
320  return 1;
321 }
322 
323 /***********************************************************************
324  * phoneSetRing (TAPI32.@)
325  */
326 DWORD WINAPI phoneSetRing(HPHONE hPhone, DWORD dwRingMode, DWORD dwVolume)
327 {
328  FIXME("(%p, %08x, %08x): stub.\n", hPhone, dwRingMode, dwVolume);
329  return 1;
330 }
331 
332 /***********************************************************************
333  * phoneSetStatusMessages (TAPI32.@)
334  */
335 DWORD WINAPI phoneSetStatusMessages(HPHONE hPhone, DWORD dwPhoneStates, DWORD dwButtonModes, DWORD dwButtonStates)
336 {
337  FIXME("(%p, %08x, %08x, %08x): stub.\n", hPhone, dwPhoneStates, dwButtonModes, dwButtonStates);
338  /* call TSPI function here ! */
339  return 0; /* FIXME ? */
340 }
341 
342 /***********************************************************************
343  * phoneSetVolume (TAPI32.@)
344  */
345 DWORD WINAPI phoneSetVolume(HPHONE hPhone, DWORD dwHookSwitchDev, DWORD dwVolume)
346 {
347  FIXME("(%p, %08x, %08x): stub.\n", hPhone, dwHookSwitchDev, dwVolume);
348  /* call TSPI function here ! */
349  return 1;
350 }
351 
352 /***********************************************************************
353  * phoneShutdown (TAPI32.@)
354  */
356 {
357  FIXME("(%p): stub.\n", hPhoneApp);
358  return 0;
359 }
DWORD WINAPI phoneGetDisplay(HPHONE hPhone, LPVARSTRING lpDisplay)
Definition: phone.c:100
static HICON
Definition: imagelist.c:84
DWORD WINAPI phoneGetDevCapsA(HPHONEAPP hPhoneApp, DWORD dwDeviceID, DWORD dwAPIVersion, DWORD dwExtVersion, LPPHONECAPS lpPhoneCaps)
Definition: phone.c:89
DWORD WINAPI phoneGetVolume(HPHONE hPhone, DWORD dwHookSwitchDevs, LPDWORD lpdwVolume)
Definition: phone.c:199
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
DWORD WINAPI phoneSetLamp(HPHONE hPhone, DWORD dwButtonLampID, DWORD lpdwLampMode)
Definition: phone.c:317
DWORD WINAPI phoneGetRing(HPHONE hPhone, LPDWORD lpdwRingMode, LPDWORD lpdwVolume)
Definition: phone.c:170
DWORD WINAPI phoneShutdown(HPHONEAPP hPhoneApp)
Definition: phone.c:355
DWORD WINAPI phoneNegotiateExtVersion(HPHONEAPP hPhoneApp, DWORD dwDeviceID, DWORD dwAPIVersion, DWORD dwExtLowVersion, DWORD dwExtHighVersion, LPDWORD lpdwExtVersion)
Definition: phone.c:248
DWORD WINAPI phoneGetIDA(HPHONE hPhone, LPVARSTRING lpDeviceID, LPCSTR lpszDeviceClass)
Definition: phone.c:129
DWORD WINAPI phoneGetStatusA(HPHONE hPhone, LPPHONESTATUS lpPhoneStatus)
Definition: phone.c:179
DWORD WINAPI phoneGetStatusMessages(HPHONE hPhone, LPDWORD lpdwPhoneStates, LPDWORD lpdwButtonModes, LPDWORD lpdwButtonStates)
Definition: phone.c:189
DWORD WINAPI phoneSetDisplay(HPHONE hPhone, DWORD dwRow, DWORD dwColumn, LPCSTR lpszDisplay, DWORD dwSize)
Definition: phone.c:288
DWORD WINAPI phoneNegotiateAPIVersion(HPHONEAPP hPhoneApp, DWORD dwDeviceID, DWORD dwAPILowVersion, DWORD dwAPIHighVersion, LPDWORD lpdwAPIVersion, LPPHONEEXTENSIONID lpExtensionID)
Definition: phone.c:239
HINSTANCE hInstance
Definition: charmap.c:20
DWORD WINAPI phoneGetIconA(DWORD dwDeviceID, LPCSTR lpszDeviceClass, HICON *lphIcon)
Definition: phone.c:140
DWORD WINAPI phoneInitializeExW(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCWSTR lpszAppName, LPDWORD lpdwNumDevs, LPDWORD lpdwAPIVersion, LPPHONEINITIALIZEEXPARAMS lpPhoneInitializeExParams)
Definition: phone.c:229
DWORD WINAPI phoneSetData(HPHONE hPhone, DWORD dwDataID, LPVOID lpData, DWORD dwSize)
Definition: phone.c:279
#define debugstr_w
Definition: kernel32.h:32
#define FIXME(fmt,...)
Definition: debug.h:110
DWORD WINAPI phoneOpen(HPHONEAPP hPhoneApp, DWORD dwDeviceID, LPHPHONE lphPhone, DWORD dwAPIVersion, DWORD dwExtVersion, DWORD dwCallbackInstance, DWORD dwPrivileges)
Definition: phone.c:260
DWORD WINAPI phoneGetHookSwitch(HPHONE hPhone, LPDWORD lpdwHookSwitchDevs)
Definition: phone.c:119
const char * LPCSTR
Definition: xmlstorage.h:183
DWORD WINAPI phoneInitialize(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCSTR lpszAppName, LPDWORD lpdwNumDevs)
Definition: phone.c:210
void(CALLBACK * PHONECALLBACK)(HANDLE, DWORD, DWORD, DWORD, DWORD, DWORD)
Definition: tapi.h:879
DWORD WINAPI phoneGetGain(HPHONE hPhone, DWORD dwHookSwitchDev, LPDWORD lpdwGain)
Definition: phone.c:109
DWORD WINAPI phoneSetGain(HPHONE hPhone, DWORD dwHookSwitchDev, DWORD dwGain)
Definition: phone.c:297
#define WINAPI
Definition: msvc.h:8
unsigned long DWORD
Definition: ntddk_ex.h:95
DWORD WINAPI phoneGetButtonInfoA(HPHONE hPhone, DWORD dwButtonLampID, LPPHONEBUTTONINFO lpButtonInfo)
Definition: phone.c:70
DWORD WINAPI phoneDevSpecific(HPHONE hPhone, LPVOID lpParams, DWORD dwSize)
Definition: phone.c:61
DWORD WINAPI phoneConfigDialogA(DWORD dwDeviceID, HWND hwndOwner, LPCSTR lpszDeviceClass)
Definition: phone.c:52
DWORD WINAPI phoneGetMessage(HPHONEAPP hPhoneApp, LPPHONEMESSAGE lpMessage, DWORD dwTimeout)
Definition: phone.c:161
DWORD WINAPI phoneSetRing(HPHONE hPhone, DWORD dwRingMode, DWORD dwVolume)
Definition: phone.c:326
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD dwTimeout
Definition: wincrypt.h:6081
DWORD WINAPI phoneSetStatusMessages(HPHONE hPhone, DWORD dwPhoneStates, DWORD dwButtonModes, DWORD dwButtonStates)
Definition: phone.c:335
DWORD WINAPI phoneSetButtonInfoA(HPHONE hPhone, DWORD dwButtonLampID, LPPHONEBUTTONINFO lpButtonInfo)
Definition: phone.c:270
DWORD WINAPI phoneGetData(HPHONE hPhone, DWORD dwDataID, LPVOID lpData, DWORD dwSize)
Definition: phone.c:80
DWORD WINAPI phoneSetVolume(HPHONE hPhone, DWORD dwHookSwitchDev, DWORD dwVolume)
Definition: phone.c:345
WINE_DEFAULT_DEBUG_CHANNEL(tapi)
DWORD WINAPI phoneSetHookSwitch(HPHONE hPhone, DWORD dwHookSwitchDevs, DWORD dwHookSwitchMode)
Definition: phone.c:307
DWORD WINAPI phoneInitializeExA(LPHPHONEAPP lphPhoneApp, HINSTANCE hInstance, PHONECALLBACK lpfnCallback, LPCSTR lpszAppName, LPDWORD lpdwNumDevs, LPDWORD lpdwAPIVersion, LPPHONEINITIALIZEEXPARAMS lpPhoneInitializeExParams)
Definition: phone.c:219
uint32_t * LPDWORD
Definition: typedefs.h:57
DWORD WINAPI phoneClose(HPHONE hPhone)
Definition: phone.c:42
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
Definition: env.c:54
DWORD WINAPI phoneGetLamp(HPHONE hPhone, DWORD dwButtonLampID, LPDWORD lpdwLampMode)
Definition: phone.c:151