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