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