Added extern "C" if __cplusplus is defined.
[wine] / include / tapi.h
1 /*
2  * TAPI definitions
3  * 
4  * Copyright (c) 1999 Andreas Mohr
5  */
6
7 #ifndef __WINE_TAPI_H
8 #define __WINE_TAPI_H
9
10 #include "windef.h"
11
12 #ifdef __cplusplus
13 extern "C" {
14 #endif /* defined(__cplusplus) */
15
16 typedef HANDLE HCALL, *LPHCALL;
17 typedef HANDLE HLINE, *LPHLINE;
18 typedef HANDLE HLINEAPP, *LPHLINEAPP;
19 typedef HANDLE HPHONE, *LPHPHONE;
20 typedef HANDLE HPHONEAPP, *LPHPHONEAPP;
21
22 /* FIXME: bogus codes !! */
23 #define TAPIERR_REQUESTFAILED   20
24
25 typedef struct lineaddresscaps_tag {
26     DWORD dwTotalSize;
27     DWORD dwNeededSize;
28     DWORD dwUsedSize;
29     DWORD dwLineDeviceID;
30     DWORD dwAddressSize;
31     DWORD dwAddressOffset;
32     DWORD dwDevSpecificSize;
33     DWORD dwDevSpecificOffset;
34     DWORD dwAddressSharing;
35     DWORD dwAddressStates;
36     DWORD dwCallInfoStates;
37     DWORD dwCallerIDFlags;
38     DWORD dwCalledIDFlags;
39     DWORD dwConnectedIDFlags;
40     DWORD dwRedirectionIDFlags;
41     DWORD dwRedirectingIDFlags;
42     DWORD dwCallStates;
43     DWORD dwDialToneModes;
44     DWORD dwBusyModes;
45     DWORD dwSpecialInfo;
46     DWORD dwDisconnectModes;
47     DWORD dwMaxNumActiveCalls;
48     DWORD dwMaxNumOnHoldCalls;
49     DWORD dwMaxNumOnHoldPendingCalls;
50     DWORD dwMaxNumConference;
51     DWORD dwMaxNumTransConf;
52     DWORD dwAddrCapFlags;
53     DWORD dwCallFeatures;
54     DWORD dwRemoveFromConfCaps;
55     DWORD dwRemoveFromConfState;
56     DWORD dwTransferModes;
57     DWORD dwParkModes;
58     DWORD dwForwardModes;
59     DWORD dwMaxForwardEntries;
60     DWORD dwMaxSpecificEntries;
61     DWORD dwMinFwdNumRings;
62     DWORD dwMaxFwdNumRings;
63     DWORD dwMaxCallCompletions;
64     DWORD dwCallCompletionConds;
65     DWORD dwCallCompletionModes;
66     DWORD dwNumCompletionMessages;
67     DWORD dwCompletionMsgTextEntrySize;
68     DWORD dwCompletionMsgTextSize;
69     DWORD dwCompletionMsgTextOffset;
70     DWORD dwAddressFeatures;
71 } LINEADDRESSCAPS, *LPLINEADDRESSCAPS;
72
73 typedef struct lineaddressstatus_tag {
74     DWORD dwTotalSize;
75     DWORD dwNeededSize;
76     DWORD dwUsedSize;
77     DWORD dwNumInUse;
78     DWORD dwNumActiveCalls;
79     DWORD dwNumOnHoldCalls;
80     DWORD dwNumOnHoldPendCalls;
81     DWORD dwAddressFeatures;
82     DWORD dwNumRingsNoAnswer;
83     DWORD dwForwardNumEntries;
84     DWORD dwForwardSize;
85     DWORD dwForwardOffset;
86     DWORD dwTerminalModesSize;
87     DWORD dwTerminalModesOffset;
88     DWORD dwDevSpecificSize;
89     DWORD dwDevSpecificOffset;
90 } LINEADDRESSSTATUS, *LPLINEADDRESSSTATUS;
91
92 typedef struct linedialparams_tag {
93     DWORD dwDialPause;
94     DWORD dwDialSpeed;
95     DWORD dwDigitDuration;
96     DWORD dwWaitForDialtone;
97 } LINEDIALPARAMS, *LPLINEDIALPARAMS;
98
99 typedef struct linecallinfo_tag {
100     DWORD dwTotalSize;
101     DWORD dwNeededSize;
102     DWORD dwUsedSize;
103     HLINE hLine;
104     DWORD dwLineDeviceID;
105     DWORD dwAddressID;
106     DWORD dwBearerMode;
107     DWORD dwRate;
108     DWORD dwMediaMode;
109     DWORD dwAppSpecific;
110     DWORD dwCallID;
111     DWORD dwRelatedCallID;
112     DWORD dwCallParamFlags;
113     DWORD dwCallStates;
114     DWORD dwMonitorDigitModes;
115     DWORD dwMonitorMediaModes;
116     LINEDIALPARAMS DialParams;
117     DWORD dwOrigin;
118     DWORD dwReason;
119     DWORD dwCompletionID;
120     DWORD dwNumOwners;
121     DWORD dwNumMonitors;
122     DWORD dwCountryCode;
123     DWORD dwTrunk;
124     DWORD dwCallerIDFlags;
125     DWORD dwCallerIDSize;
126     DWORD dwCallerIDOffset;
127     DWORD dwCallerIDNameSize;
128     DWORD dwCallerIDNameOffset;
129     DWORD dwCalledIDFlags;
130     DWORD dwCalledIDSize;
131     DWORD dwCalledIDOffset;
132     DWORD dwCalledIDNameSize;
133     DWORD dwCalledIDNameOffset;
134     DWORD dwConnectedIDFlags;
135     DWORD dwConnectedIDSize;
136     DWORD dwConnectedIDOffset;
137     DWORD dwConnectedIDNameSize;
138     DWORD dwConnectedIDNameOffset;
139     DWORD dwRedirectionIDFlags;
140     DWORD dwRedirectionIDSize;
141     DWORD dwRedirectionIDOffset;
142     DWORD dwRedirectionIDNameSize;
143     DWORD dwRedirectionIDNameOffset;
144     DWORD dwRedirectingIDFlags;
145     DWORD dwRedirectingIDSize;
146     DWORD dwRedirectingIDOffset;
147     DWORD dwRedirectingIDNameSize;
148     DWORD dwRedirectingIDNameOffset;
149     DWORD dwAppNameSize;
150     DWORD dwAppNameOffset;
151     DWORD dwDisplayableAddressSize;
152     DWORD dwDisplayableAddressOffset;
153     DWORD dwCalledPartySize;
154     DWORD dwCalledPartyOffset;
155     DWORD dwCommentSize;
156     DWORD dwCommentOffset;
157     DWORD dwDisplaySize;
158     DWORD dwDisplayOffset;
159     DWORD dwUserUserInfoSize;
160     DWORD dwUserUserInfoOffset;
161     DWORD dwHighLevelCompSize;
162     DWORD dwHighLevelCompOffset;
163     DWORD dwLowLevelCompSize;
164     DWORD dwLowLevelCompOffset;
165     DWORD dwChargingInfoSize;
166     DWORD dwChargingInfoOffset;
167     DWORD dwTerminalModesSize;
168     DWORD dwTerminalModesOffset;
169     DWORD dwDevSpecificSize;
170     DWORD dwDevSpecificOffset;
171 } LINECALLINFO, *LPLINECALLINFO;
172
173 typedef struct linecalllist_tag {
174     DWORD dwTotalSize;
175     DWORD dwNeededSize;
176     DWORD dwUsedSize;
177     DWORD dwCallsNumEntries;
178     DWORD dwCallsSize;
179     DWORD dwCallsOffset;
180 } LINECALLLIST, *LPLINECALLLIST;
181
182 typedef struct linecallparams_tag {
183     DWORD dwTotalSize;
184     DWORD dwBearerMode;
185     DWORD dwMinRate;
186     DWORD dwMaxRate;
187     DWORD dwMediaMode;
188     DWORD dwCallParamFlags;
189     DWORD dwAddressMode;
190     DWORD dwAddressID;
191     LINEDIALPARAMS DialParams;
192     DWORD dwOrigAddressSize;
193     DWORD dwOrigAddressOffset;
194     DWORD dwDisplayableAddressSize;
195     DWORD dwDisplayableAddressOffset;
196     DWORD dwCalledPartySize;
197     DWORD dwCalledPartyOffset;
198     DWORD dwCommentSize;
199     DWORD dwCommentOffset;
200     DWORD dwUserUserInfoSize;
201     DWORD dwUserUserInfoOffset;
202     DWORD dwHighLevelCompSize;
203     DWORD dwHighLevelCompOffset;
204     DWORD dwLowLevelCompSize;
205     DWORD dwLowLevelCompOffset;
206     DWORD dwDevSpecificSize;
207     DWORD dwDevSpecificOffset;
208 } LINECALLPARAMS, *LPLINECALLPARAMS;
209
210 typedef struct linecallstatus_tag {
211     DWORD dwTotalSize;
212     DWORD dwNeededSize;
213     DWORD dwUsedSize;
214     DWORD dwCallState;
215     DWORD dwCallStateMode;
216     DWORD dwCallPrivilege;
217     DWORD dwCallFeatures;
218     DWORD dwDevSpecificSize;
219     DWORD dwDevSpecificOffset;
220 } LINECALLSTATUS, *LPLINECALLSTATUS;
221
222 typedef struct linecountrylist_tag {
223     DWORD dwTotalSize;
224     DWORD dwNeededSize;
225     DWORD dwUsedSize;
226     DWORD dwNumCountries;
227     DWORD dwCountryListSize;
228     DWORD dwCountryListOffset;
229 } LINECOUNTRYLIST, *LPLINECOUNTRYLIST;
230
231 typedef struct linedevcaps_tag {
232     DWORD dwTotalSize;
233     DWORD dwNeededSize;
234     DWORD dwUsedSize;
235     DWORD dwProviderInfoSize;
236     DWORD dwProviderInfoOffset;
237     DWORD dwSwitchInfoSize;
238     DWORD dwSwitchInfoOffset;
239     DWORD dwPermanentLineID;
240     DWORD dwLineNameSize;
241     DWORD dwLineNameOffset;
242     DWORD dwStringFormat;
243     DWORD dwAddressModes;
244     DWORD dwNumAddresses;
245     DWORD dwBearerModes;
246     DWORD dwMaxRate;
247     DWORD dwMediaModes;
248     DWORD dwGenerateToneModes;
249     DWORD dwGenerateToneMaxNumFreq;
250     DWORD dwGenerateDigitModes;
251     DWORD dwMonitorToneMaxNumFreq;
252     DWORD dwMonitorToneMaxNumEntries;
253     DWORD dwMonitorDigitModes;
254     DWORD dwGatherDigitsMinTimeout;
255     DWORD dwGatherDigitsMaxTimeout;
256     DWORD dwMedCtlDigitMaxListSize;
257     DWORD dwMedCtlMediaMaxListSize;
258     DWORD dwMedCtlToneMaxListSize;
259     DWORD dwMedCtlCallStateMaxListSize;
260     DWORD dwDevCapFlags;
261     DWORD dwMaxNumActiveCalls;
262     DWORD dwAnswerMode;
263     DWORD dwRingModes;
264     DWORD dwLineStates;
265     DWORD dwUUIAcceptSize;
266     DWORD dwUUIAnswerSize;
267     DWORD dwUUIMakeCallSize;
268     DWORD dwUUIDropSize;
269     DWORD dwUUISendUserUserInfoSize;
270     DWORD dwUUICallInfoSize;
271     LINEDIALPARAMS MinDialParams;
272     LINEDIALPARAMS MaxDialParams;
273     LINEDIALPARAMS DefaultDialParams;
274     DWORD dwNumTerminals;
275     DWORD dwTerminalCapsSize;
276     DWORD dwTerminalCapsOffset;
277     DWORD dwTerminalTextEntrySize;
278     DWORD dwTerminalTextSize;
279     DWORD dwTerminalTextOffset;
280     DWORD dwDevSpecificSize;
281     DWORD dwDevSpecificOffset;
282     DWORD dwLineFeatures;
283 } LINEDEVCAPS, *LPLINEDEVCAPS;
284
285 typedef struct linedevstatus_tag {
286     DWORD dwTotalSize;
287     DWORD dwNeededSize;
288     DWORD dwUsedSize;
289     DWORD dwNumOpens;
290     DWORD dwOpenMediaModes;
291     DWORD dwNumActiveCalls;
292     DWORD dwNumOnHoldCalls;
293     DWORD dwNumOnHoldPendingCalls;
294     DWORD dwLineFeatures;
295     DWORD dwNumCallCompletion;
296     DWORD dwRingMode;
297     DWORD dwSignalLevel;
298     DWORD dwBatteryLevel;
299     DWORD dwRoamMode;
300     DWORD dwDevStatusFlags;
301     DWORD dwTerminalModesSize;
302     DWORD dwTerminalModesOffset;
303     DWORD dwDevSpecificSize;
304     DWORD dwDevSpecificOffset;
305 } LINEDEVSTATUS, *LPLINEDEVSTATUS;
306
307 typedef struct lineextensionid_tag {
308     DWORD dwExtensionID0;
309     DWORD dwExtensionID1;
310     DWORD dwExtensionID2;
311     DWORD dwExtensionID3;
312 } LINEEXTENSIONID, *LPLINEEXTENSIONID;
313
314 typedef struct lineforward_tag {
315     DWORD dwForwardMode;
316     DWORD dwCallerAddressSize;
317     DWORD dwCallerAddressOffset;
318     DWORD dwDestCountryCode;
319     DWORD dwDestAddressSize;
320     DWORD dwDestAddressOffset;
321 } LINEFORWARD, *LPLINEFORWARD;
322
323 typedef struct lineforwardlist_tag {
324     DWORD dwTotalSize;
325     DWORD dwNumEntries;
326     LINEFORWARD ForwardList[1];
327 } LINEFORWARDLIST, *LPLINEFORWARDLIST;
328     
329 typedef struct linegeneratetone_tag {
330     DWORD dwFrequency;
331     DWORD dwCadenceOn;
332     DWORD dwCadenceOff;
333     DWORD dwVolume;
334 } LINEGENERATETONE, *LPLINEGENERATETONE;
335
336 typedef struct linemediacontrolcallstate_tag {
337     DWORD dwCallStates;
338     DWORD dwMediaControl;
339 } LINEMEDIACONTROLCALLSTATE, *LPLINEMEDIACONTROLCALLSTATE;
340
341 typedef struct linemediacontroldigit_tag {
342     DWORD dwDigit;
343     DWORD dwDigitModes;
344     DWORD dwMediaControl;
345 } LINEMEDIACONTROLDIGIT, *LPLINEMEDIACONTROLDIGIT;
346
347 typedef struct linemediacontrolmedia_tag {
348     DWORD dwMediaModes;
349     DWORD dwDuration;
350     DWORD dwMediaControl;
351 } LINEMEDIACONTROLMEDIA, *LPLINEMEDIACONTROLMEDIA;
352
353 typedef struct linemediacontroltone_tag {
354     DWORD dwAppSpecific;
355     DWORD dwDuration;
356     DWORD dwFrequency1;
357     DWORD dwFrequency2;
358     DWORD dwFrequency3;
359     DWORD dwMediaControl;
360 } LINEMEDIACONTROLTONE, *LPLINEMEDIACONTROLTONE;
361
362 typedef struct linemonitortone_tag {
363     DWORD dwAppSpecific;
364     DWORD dwDuration;
365     DWORD dwFrequency1;
366     DWORD dwFrequency2;
367     DWORD dwFrequency3;
368 } LINEMONITORTONE, *LPLINEMONITORTONE;
369
370 typedef struct lineproviderlist_tag {
371     DWORD dwTotalSize;
372     DWORD dwNeededSize;
373     DWORD dwUsedSize;
374     DWORD dwNumProviders;
375     DWORD dwProviderListSize;
376     DWORD dwProviderListOffset;
377 } LINEPROVIDERLIST, *LPLINEPROVIDERLIST;
378
379 typedef struct linetranslatecaps_tag {
380     DWORD dwTotalSize;
381     DWORD dwNeededSize;
382     DWORD dwUsedSize;
383     DWORD dwNumLocations;
384     DWORD dwLocationListSize;
385     DWORD dwLocationListOffset;
386     DWORD dwCurrentLocationID;
387     DWORD dwNumCards;
388     DWORD dwCardListSize;
389     DWORD dwCardListOffset;
390     DWORD dwCurrentPreferredCardID;
391 } LINETRANSLATECAPS, *LPLINETRANSLATECAPS;
392
393 typedef struct linetranslateoutput_tag {
394     DWORD dwTotalSize;
395     DWORD dwNeededSize;
396     DWORD dwUsedSize;
397     DWORD dwDialableStringSize;
398     DWORD dwDialableStringOffset;
399     DWORD dwDisplayableStringSize;
400     DWORD dwDisplayableStringOffset;
401     DWORD dwCurrentCountry;
402     DWORD dwDestCountry;
403     DWORD dwTranslateResults;
404 } LINETRANSLATEOUTPUT, *LPLINETRANSLATEOUTPUT;
405
406 typedef void (CALLBACK * LINECALLBACK)(DWORD, DWORD, DWORD, DWORD, DWORD, DWORD);
407
408 typedef struct _PHONEAPP {
409   int dummy;
410 } PHONEAPP, *LPPHONEAPP;
411
412 typedef struct _PHONE {
413     DWORD dwRingMode;
414     DWORD dwVolume;
415 } PHONE, *LPPHONE;
416
417 typedef struct phonebuttoninfo_tag {
418     DWORD dwTotalSize;
419     DWORD dwNeededSize;
420     DWORD dwUsedSize;
421     DWORD dwButtonMode;
422     DWORD dwButtonFunction;
423     DWORD dwButtonTextSize;
424     DWORD dwButtonTextOffset;
425     DWORD dwDevSpecificSize;
426     DWORD dwDevSpecificOffset;
427     DWORD dwButtonState;
428 } PHONEBUTTONINFO, *LPPHONEBUTTONINFO;
429
430 typedef struct phonecaps_tag {
431     DWORD dwTotalSize;
432     DWORD dwNeededSize;
433     DWORD dwUsedSize;
434     DWORD dwProviderInfoSize;
435     DWORD dwProviderInfoOffset;
436     DWORD dwPhoneInfoSize;
437     DWORD dwPhoneInfoOffset;
438     DWORD dwPermanentPhoneID;
439     DWORD dwPhoneNameSize;
440     DWORD dwPhoneNameOffset;
441     DWORD dwStringFormat;
442     DWORD dwPhoneStates;
443     DWORD dwHookSwitchDevs;
444     DWORD dwHandsetHookSwitchModes;
445     DWORD dwSpeakerHookSwitchModes;
446     DWORD dwHeadsetHookSwitchModes;
447     DWORD dwVolumeFlags;
448     DWORD dwGainFlags;
449     DWORD dwDisplayNumRows;
450     DWORD dwDisplayNumColumns;
451     DWORD dwNumRingModes;
452     DWORD dwNumButtonLamps;
453     DWORD dwButtonModesSize;
454     DWORD dwButtonModesOffset;
455     DWORD dwButtonFunctionsSize;
456     DWORD dwButtonFunctionsOffset;
457     DWORD dwLampModesSize;
458     DWORD dwLampModesOffset;
459     DWORD dwNumSetData;
460     DWORD dwSetDataSize;
461     DWORD dwSetDataOffset;
462     DWORD dwNumGetData;
463     DWORD dwGetDataSize;
464     DWORD dwGetDataOffset;
465     DWORD dwDevSpecificSize;
466     DWORD dwDevSpecificOffset;
467 } PHONECAPS, *LPPHONECAPS;
468
469 typedef struct phoneextensionid_tag {
470     DWORD dwExtensionID0;
471     DWORD dwExtensionID1;
472     DWORD dwExtensionID2;
473     DWORD dwExtensionID3;
474 } PHONEEXTENSIONID, *LPPHONEEXTENSIONID;
475
476 typedef struct phonestatus_tag {
477     DWORD dwTotalSize;
478     DWORD dwNeededSize;
479     DWORD dwUsedSize;
480     DWORD dwStatusFlags;
481     DWORD dwNumOwners;
482     DWORD dwRingMOde;
483     DWORD dwRingVolume;
484     DWORD dwHandsetHookSwitchMode;
485     DWORD dwHandsetVolume;
486     DWORD dwHandsetGain;
487     DWORD dwSpeakerHookSwitchMode;
488     DWORD dwSpeakerVolume;
489     DWORD dwSpeakerGain;
490     DWORD dwHeadsetHookSwitchMode;
491     DWORD dwHeadsetVolume;
492     DWORD dwHeadsetGain;
493     DWORD dwDisplaySize;
494     DWORD dwDisplayOffset;
495     DWORD dwLampModesSize;
496     DWORD dwLampModesOffset;
497     DWORD dwOwnerNameSize;
498     DWORD dwOwnerNameOffset;
499     DWORD dwDevSpecificSize;
500     DWORD dwDevSpecificOffset;
501 } PHONESTATUS, *LPPHONESTATUS;
502
503 typedef void (CALLBACK * PHONECALLBACK)(HANDLE, DWORD, DWORD, DWORD, DWORD, DWORD);
504
505 typedef struct varstring_tag {
506     DWORD dwTotalSize;
507     DWORD dwNeededSize;
508     DWORD dwUsedSize;
509     DWORD dwStringFormat;
510     DWORD dwStringSize;
511     DWORD dwStringOffset;
512 } VARSTRING, *LPVARSTRING;
513
514 /* line functions */
515 DWORD WINAPI lineAccept(HCALL,LPCSTR,DWORD);
516 DWORD WINAPI lineAddProvider(LPCSTR,HWND,LPDWORD);
517 DWORD WINAPI lineAddToConference(HCALL,HCALL);
518 DWORD WINAPI lineAnswer(HCALL,LPCSTR,DWORD);
519 DWORD WINAPI lineBlindTransfer(HCALL,LPCSTR,DWORD);
520 DWORD WINAPI lineClose(HLINE);
521 DWORD WINAPI lineCompleteCall(HCALL,LPDWORD,DWORD,DWORD);
522 DWORD WINAPI lineCompleteTransfer(HCALL,HCALL,LPHCALL,DWORD);
523 DWORD WINAPI lineConfigDialog(DWORD,HWND,LPCSTR);
524 DWORD WINAPI lineConfigDialogEdit(DWORD,HWND,LPCSTR,LPVOID const,DWORD,LPVARSTRING);
525 DWORD WINAPI lineConfigProvider(HWND,DWORD);
526 DWORD WINAPI lineDeallocateCall(HCALL);
527 DWORD WINAPI lineDevSpecific(HLINE,DWORD,HCALL,LPVOID,DWORD);
528 DWORD WINAPI lineDevSpecificFeature(HLINE,DWORD,LPVOID,DWORD);
529 DWORD WINAPI lineDial(HCALL,LPCSTR,DWORD);
530 DWORD WINAPI lineDrop(HCALL,LPCSTR,DWORD);
531 DWORD WINAPI lineForward(HLINE,DWORD,DWORD,LPLINEFORWARDLIST,DWORD,LPHCALL,LPLINECALLPARAMS);
532 DWORD WINAPI lineGatherDigits(HCALL,DWORD,LPSTR,DWORD,LPCSTR,DWORD,DWORD);
533 DWORD WINAPI lineGenerateDigits(HCALL,DWORD,LPCSTR,DWORD);
534 DWORD WINAPI lineGenerateTone(HCALL,DWORD,DWORD,DWORD,LPLINEGENERATETONE);
535 DWORD WINAPI lineGetAddressCaps(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPLINEADDRESSCAPS);
536 DWORD WINAPI lineGetAddressID(HLINE,LPDWORD,DWORD,LPCSTR,DWORD);
537 DWORD WINAPI lineGetAddressStatus(HLINE,DWORD,LPLINEADDRESSSTATUS);
538 DWORD WINAPI lineGetAppPriority(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPVARSTRING,LPDWORD);
539 DWORD WINAPI lineGetCallInfo(HCALL,LPLINECALLINFO);
540 DWORD WINAPI lineGetCallStatus(HCALL,LPLINECALLSTATUS);
541 DWORD WINAPI lineGetConfRelatedCalls(HCALL,LPLINECALLLIST);
542 DWORD WINAPI lineGetCountry(DWORD,DWORD,LPLINECOUNTRYLIST);
543 DWORD WINAPI lineGetDevCaps(HLINEAPP,DWORD,DWORD,DWORD,LPLINEDEVCAPS);
544 DWORD WINAPI lineGetDevConfig(DWORD,LPVARSTRING,LPCSTR);
545 DWORD WINAPI lineGetID(HLINE,DWORD,HCALL,DWORD,LPVARSTRING,LPCSTR);
546 DWORD WINAPI lineGetIcon(DWORD,LPCSTR,HICON *);
547 DWORD WINAPI lineGetLineDevStatus(HLINE,LPLINEDEVSTATUS);
548 DWORD WINAPI lineGetNewCalls(HLINE,DWORD,DWORD,LPLINECALLLIST);
549 DWORD WINAPI lineGetNumRings(HLINE,DWORD,LPDWORD);
550 DWORD WINAPI lineGetProviderList(DWORD dwAPIVersion,LPLINEPROVIDERLIST);
551 DWORD WINAPI lineGetRequest(HLINEAPP,DWORD,LPVOID);
552 DWORD WINAPI lineGetStatusMessages(HLINE,LPDWORD,LPDWORD);
553 DWORD WINAPI lineGetTranslateCaps(HLINEAPP,DWORD,LPLINETRANSLATECAPS);
554 DWORD WINAPI lineHandoff(HCALL,LPCSTR,DWORD);
555 DWORD WINAPI lineHold(HCALL);
556 DWORD WINAPI lineInitialize(LPHLINEAPP,HINSTANCE,LINECALLBACK,LPCSTR,LPDWORD);
557 DWORD WINAPI lineMakeCall(HLINE,LPHCALL,LPCSTR,DWORD,LPLINECALLPARAMS);
558 DWORD WINAPI lineMonitorDigits(HCALL,DWORD);
559 DWORD WINAPI lineMonitorMedia(HCALL,DWORD);
560 DWORD WINAPI lineMonitorTones(HCALL,LPLINEMONITORTONE,DWORD);
561 DWORD WINAPI lineNegotiateAPIVersion(HLINEAPP,DWORD,DWORD,DWORD,LPDWORD,LPLINEEXTENSIONID);
562 DWORD WINAPI lineNegotiateExtVersion(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPDWORD);
563 DWORD WINAPI lineOpen(HLINEAPP,DWORD,LPHLINE,DWORD,DWORD,DWORD,DWORD,DWORD,LPLINECALLPARAMS);
564 DWORD WINAPI linePark(HCALL,DWORD,LPCSTR,LPVARSTRING);
565 DWORD WINAPI linePickup(HLINE,DWORD,LPHCALL,LPCSTR,LPCSTR);
566 DWORD WINAPI linePrepareAddToConference(HCALL,LPHCALL,LPLINECALLPARAMS);
567 DWORD WINAPI lineRedirect(HCALL,LPCSTR,DWORD);
568 DWORD WINAPI lineRegisterRequestRecipient(HLINEAPP,DWORD,DWORD,DWORD);
569 DWORD WINAPI lineReleaseUserUserInfo(HCALL);
570 DWORD WINAPI lineRemoveFromConference(HCALL);
571 DWORD WINAPI lineRemoveProvider(DWORD,HWND);
572 DWORD WINAPI lineSecureCall(HCALL);
573 DWORD WINAPI lineSendUserUserInfo(HCALL,LPCSTR,DWORD);
574 DWORD WINAPI lineSetAppPriority(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPCSTR,DWORD);
575 DWORD WINAPI lineSetAppSpecific(HCALL,DWORD);
576 DWORD WINAPI lineSetCallParams(HCALL,DWORD,DWORD,DWORD,LPLINEDIALPARAMS);
577 DWORD WINAPI lineSetCallPrivilege(HCALL,DWORD);
578 DWORD WINAPI lineSetCurrentLocation(HLINEAPP,DWORD);
579 DWORD WINAPI lineSetDevConfig(DWORD,LPVOID,DWORD,LPCSTR);
580 DWORD WINAPI lineSetMediaControl(HLINE,DWORD,HCALL,DWORD,LPLINEMEDIACONTROLDIGIT,DWORD,LPLINEMEDIACONTROLMEDIA,DWORD,LPLINEMEDIACONTROLTONE,DWORD,LPLINEMEDIACONTROLCALLSTATE,DWORD);
581 DWORD WINAPI lineSetMediaMode(HCALL,DWORD);
582 DWORD WINAPI lineSetNumRings(HLINE,DWORD,DWORD);
583 DWORD WINAPI lineSetStatusMessages(HLINE,DWORD,DWORD);
584 DWORD WINAPI lineSetTerminal(HLINE,DWORD,HCALL,DWORD,DWORD,DWORD,DWORD);
585 DWORD WINAPI lineSetTollList(HLINEAPP,DWORD,LPCSTR,DWORD);
586 DWORD WINAPI lineSetupConference(HCALL,HLINE,LPHCALL,LPHCALL,DWORD,LPLINECALLPARAMS);
587 DWORD WINAPI lineSetupTransfer(HCALL,LPHCALL,LPLINECALLPARAMS);
588 DWORD WINAPI lineShutdown(HLINEAPP);
589 DWORD WINAPI lineSwapHold(HCALL,HCALL);
590 DWORD WINAPI lineTranslateAddress(HLINEAPP,DWORD,DWORD,LPCSTR,DWORD,DWORD,LPLINETRANSLATEOUTPUT);
591 DWORD WINAPI lineTranslateDialog(HLINEAPP,DWORD,DWORD,HWND,LPCSTR);
592 DWORD WINAPI lineUncompleteCall(HLINE,DWORD);
593 DWORD WINAPI lineUnHold(HCALL);
594 DWORD WINAPI lineUnpark(HLINE,DWORD,LPHCALL,LPCSTR);
595
596 /* phone functions */
597 DWORD WINAPI phoneClose(HPHONE);
598 DWORD WINAPI phoneConfigDialog(DWORD,HWND,LPCSTR);
599 DWORD WINAPI phoneDevSpecific(HPHONE,LPVOID,DWORD);
600 DWORD WINAPI phoneGetButtonInfo(HPHONE,DWORD,LPPHONEBUTTONINFO);
601 DWORD WINAPI phoneGetData(HPHONE,DWORD,LPVOID,DWORD);
602 DWORD WINAPI phoneGetDevCaps(HPHONEAPP,DWORD,DWORD,DWORD,LPPHONECAPS);
603 DWORD WINAPI phoneGetDisplay(HPHONE,LPVARSTRING);
604 DWORD WINAPI phoneGetHookSwitch(HPHONE,LPDWORD);
605 DWORD WINAPI phoneGetID(HPHONE,LPVARSTRING,LPCSTR);
606 DWORD WINAPI phoneGetIcon(DWORD,LPCSTR,HICON *);
607 DWORD WINAPI phoneGetLamp(HPHONE,DWORD,LPDWORD);
608 DWORD WINAPI phoneGetRing(HPHONE,LPDWORD,LPDWORD);
609 DWORD WINAPI phoneGetStatus(HPHONE,LPPHONESTATUS);
610 DWORD WINAPI phoneGetStatusMessages(HPHONE,LPDWORD,LPDWORD,LPDWORD);
611 DWORD WINAPI phoneGetVolume(HPHONE,DWORD,LPDWORD);
612 DWORD WINAPI phoneInitialize(LPHPHONEAPP,HINSTANCE,PHONECALLBACK,LPCSTR,LPDWORD);
613 DWORD WINAPI phoneNegotiateAPIVersion(HPHONEAPP,DWORD,DWORD,DWORD,LPDWORD,LPPHONEEXTENSIONID);
614 DWORD WINAPI phoneNegotiateExtVersion(HPHONEAPP,DWORD,DWORD,DWORD,DWORD,LPDWORD);
615 DWORD WINAPI phoneOpen(HPHONEAPP,DWORD,LPHPHONE,DWORD,DWORD,DWORD,DWORD);
616 DWORD WINAPI phoneSetButtonInfo(HPHONE,DWORD,LPPHONEBUTTONINFO);
617 DWORD WINAPI phoneSetData(HPHONE,DWORD,LPVOID,DWORD);
618 DWORD WINAPI phoneSetDisplay(HPHONE,DWORD,DWORD,LPCSTR,DWORD);
619 DWORD WINAPI phoneSetGain(HPHONE,DWORD,DWORD);
620 DWORD WINAPI phoneSetHookSwitch(HPHONE,DWORD,DWORD);
621 DWORD WINAPI phoneSetLamp(HPHONE,DWORD,DWORD);
622 DWORD WINAPI phoneSetRing(HPHONE,DWORD,DWORD);
623 DWORD WINAPI phoneSetStatusMessages(HPHONE,DWORD,DWORD,DWORD);
624 DWORD WINAPI phoneSetVolume(HPHONE,DWORD,DWORD);
625 DWORD WINAPI phoneShutdown(HPHONEAPP);
626
627 /* "assisted" functions */
628 DWORD WINAPI tapiGetLocationInfo(LPSTR,LPSTR);
629 DWORD WINAPI tapiRequestMakeCall(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
630
631 #ifdef __cplusplus
632 } /* extern "C" */
633 #endif /* defined(__cplusplus) */
634
635 #endif /* __WINE_TAPI_H */