[XDK]
[reactos.git] / include / psdk / 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21 #ifndef __WINE_TAPI_H
22 #define __WINE_TAPI_H
23
24 #ifndef __WINESRC__
25 # include <windows.h>
26 #endif
27 #include <basetsd.h>
28 #include <oaidl.h>
29
30 #ifdef __cplusplus
31 extern "C" {
32 #endif /* defined(__cplusplus) */
33
34 typedef HANDLE HCALL, *LPHCALL;
35 typedef HANDLE HLINE, *LPHLINE;
36 typedef HANDLE HLINEAPP, *LPHLINEAPP;
37 typedef HANDLE HPHONE, *LPHPHONE;
38 typedef HANDLE HPHONEAPP, *LPHPHONEAPP;
39
40 #define TAPIERR_REQUESTFAILED -16L
41 #define LINEERR_ALLOCATED 0x80000001
42 #define LINEERR_BADDEVICEID 0x80000002
43 #define LINEERR_BEARERMODEUNAVAIL 0x80000003
44 #define LINEERR_CALLUNAVAIL 0x80000005
45 #define LINEERR_COMPLETIONOVERRUN 0x80000006
46 #define LINEERR_CONFERENCEFULL 0x80000007
47 #define LINEERR_DIALBILLING 0x80000008
48 #define LINEERR_DIALDIALTONE 0x80000009
49 #define LINEERR_DIALPROMPT 0x8000000A
50 #define LINEERR_DIALQUIET 0x8000000B
51 #define LINEERR_INCOMPATIBLEAPIVERSION 0x8000000C
52 #define LINEERR_INCOMPATIBLEEXTVERSION 0x8000000D
53 #define LINEERR_INIFILECORRUPT 0x8000000E
54 #define LINEERR_INUSE 0x8000000F
55 #define LINEERR_INVALADDRESS 0x80000010
56 #define LINEERR_INVALADDRESSID 0x80000011
57 #define LINEERR_INVALADDRESSMODE 0x80000012
58 #define LINEERR_INVALADDRESSSTATE 0x80000013
59 #define LINEERR_INVALAPPHANDLE 0x80000014
60 #define LINEERR_INVALAPPNAME 0x80000015
61 #define LINEERR_INVALBEARERMODE 0x80000016
62 #define LINEERR_INVALCALLCOMPLMODE 0x80000017
63 #define LINEERR_INVALCALLHANDLE 0x80000018
64 #define LINEERR_INVALCALLPARAMS 0x80000019
65 #define LINEERR_INVALCALLPRIVILEGE 0x8000001A
66 #define LINEERR_INVALCALLSELECT 0x8000001B
67 #define LINEERR_INVALCALLSTATE 0x8000001C
68 #define LINEERR_INVALCALLSTATELIST 0x8000001D
69 #define LINEERR_INVALCARD 0x8000001E
70 #define LINEERR_INVALCOMPLETIONID 0x8000001F
71 #define LINEERR_INVALCONFCALLHANDLE 0x80000020
72 #define LINEERR_INVALCONSULTCALLHANDLE 0x80000021
73 #define LINEERR_INVALCOUNTRYCODE 0x80000022
74 #define LINEERR_INVALDEVICECLASS 0x80000023
75 #define LINEERR_INVALDEVICEHANDLE 0x80000024
76 #define LINEERR_INVALDIALPARAMS 0x80000025
77 #define LINEERR_INVALDIGITLIST 0x80000026
78 #define LINEERR_INVALDIGITMODE 0x80000027
79 #define LINEERR_INVALDIGITS 0x80000028
80 #define LINEERR_INVALEXTVERSION 0x80000029
81 #define LINEERR_INVALGROUPID 0x8000002A
82 #define LINEERR_INVALLINEHANDLE 0x8000002B
83 #define LINEERR_INVALLINESTATE 0x8000002C
84 #define LINEERR_INVALLOCATION 0x8000002D
85 #define LINEERR_INVALMEDIALIST 0x8000002E
86 #define LINEERR_INVALMEDIAMODE 0x8000002F
87 #define LINEERR_INVALMESSAGEID 0x80000030
88 #define LINEERR_INVALPARAM 0x80000032
89 #define LINEERR_INVALPARKID 0x80000033
90 #define LINEERR_INVALPARKMODE 0x80000034
91 #define LINEERR_INVALPOINTER 0x80000035
92 #define LINEERR_INVALPRIVSELECT 0x80000036
93 #define LINEERR_INVALRATE 0x80000037
94 #define LINEERR_INVALREQUESTMODE 0x80000038
95 #define LINEERR_INVALTERMINALID 0x80000039
96 #define LINEERR_INVALTERMINALMODE 0x8000003A
97 #define LINEERR_INVALTIMEOUT 0x8000003B
98 #define LINEERR_INVALTONE 0x8000003C
99 #define LINEERR_INVALTONELIST 0x8000003D
100 #define LINEERR_INVALTONEMODE 0x8000003E
101 #define LINEERR_INVALTRANSFERMODE 0x8000003F
102 #define LINEERR_LINEMAPPERFAILED 0x80000040
103 #define LINEERR_NOCONFERENCE 0x80000041
104 #define LINEERR_NODEVICE 0x80000042
105 #define LINEERR_NODRIVER 0x80000043
106 #define LINEERR_NOMEM 0x80000044
107 #define LINEERR_NOREQUEST 0x80000045
108 #define LINEERR_NOTOWNER 0x80000046
109 #define LINEERR_NOTREGISTERED 0x80000047
110 #define LINEERR_OPERATIONFAILED 0x80000048
111 #define LINEERR_OPERATIONUNAVAIL 0x80000049
112 #define LINEERR_RATEUNAVAIL 0x8000004A
113 #define LINEERR_RESOURCEUNAVAIL 0x8000004B
114 #define LINEERR_REQUESTOVERRUN 0x8000004C
115 #define LINEERR_STRUCTURETOOSMALL 0x8000004D
116 #define LINEERR_TARGETNOTFOUND 0x8000004E
117 #define LINEERR_TARGETSELF 0x8000004F
118 #define LINEERR_UNINITIALIZED 0x80000050
119 #define LINEERR_USERUSERINFOTOOBIG 0x80000051
120 #define LINEERR_REINIT 0x80000052
121 #define LINEERR_ADDRESSBLOCKED 0x80000053
122 #define LINEERR_BILLINGREJECTED 0x80000054
123 #define LINEERR_INVALFEATURE 0x80000055
124 #define LINEERR_NOMULTIPLEINSTANCE 0x80000056
125
126 #define STRINGFORMAT_ASCII 0x00000001
127 #define STRINGFORMAT_DBCS 0x00000002
128 #define STRINGFORMAT_UNICODE 0x00000003
129 #define STRINGFORMAT_BINARY 0x00000004
130
131 #define LINEADDRESSMODE_ADDRESSID 0x00000001
132 #define LINEADDRESSMODE_DIALABLEADDR 0x00000002
133
134 #define LINEBEARERMODE_VOICE 0x00000001
135 #define LINEBEARERMODE_SPEECH 0x00000002
136 #define LINEBEARERMODE_MULTIUSE 0x00000004
137 #define LINEBEARERMODE_DATA 0x00000008
138 #define LINEBEARERMODE_ALTSPEECHDATA 0x00000010
139 #define LINEBEARERMODE_NONCALLSIGNALING 0x00000020
140 #define LINEBEARERMODE_PASSTHROUGH 0x00000040
141
142 #define LINEMEDIAMODE_UNKNOWN 0x00000002
143 #define LINEMEDIAMODE_INTERACTIVEVOICE 0x00000004
144 #define LINEMEDIAMODE_AUTOMATEDVOICE 0x00000008
145 #define LINEMEDIAMODE_DATAMODEM 0x00000010
146
147 #define LINEDEVCAPFLAGS_CROSSADDRCONF 0x00000001
148 #define LINEDEVCAPFLAGS_HIGHLEVCOMP 0x00000002
149 #define LINEDEVCAPFLAGS_LOWLEVCOMP 0x00000004
150 #define LINEDEVCAPFLAGS_MEDIACONTROL 0x00000008
151 #define LINEDEVCAPFLAGS_MULTIPLEADDR 0x00000010
152 #define LINEDEVCAPFLAGS_CLOSEDROP 0x00000020
153 #define LINEDEVCAPFLAGS_DIALBILLING 0x00000040
154 #define LINEDEVCAPFLAGS_DIALQUIET 0x00000080
155 #define LINEDEVCAPFLAGS_DIALDIALTONE 0x00000100
156
157 #define LINEDEVSTATE_OTHER 0x00000001
158 #define LINEDEVSTATE_RINGING 0x00000002
159 #define LINEDEVSTATE_CONNECTED 0x00000004
160 #define LINEDEVSTATE_DISCONNECTED 0x00000008
161 #define LINEDEVSTATE_MSGWAITON 0x00000010
162 #define LINEDEVSTATE_MSGWAITOFF 0x00000020
163 #define LINEDEVSTATE_INSERVICE 0x00000040
164 #define LINEDEVSTATE_OUTOFSERVICE 0x00000080
165 #define LINEDEVSTATE_MAINTENANCE 0x00000100
166 #define LINEDEVSTATE_OPEN 0x00000200
167 #define LINEDEVSTATE_CLOSE 0x00000400
168 #define LINEDEVSTATE_NUMCALLS 0x00000800
169 #define LINEDEVSTATE_NUMCOMPLETIONS 0x00001000
170 #define LINEDEVSTATE_TERMINALS 0x00002000
171 #define LINEDEVSTATE_ROAMMODE 0x00004000
172 #define LINEDEVSTATE_BATTERY 0x00008000
173 #define LINEDEVSTATE_SIGNAL 0x00010000
174 #define LINEDEVSTATE_DEVSPECIFIC 0x00020000
175 #define LINEDEVSTATE_REINIT 0x00040000
176 #define LINEDEVSTATE_LOCK 0x00080000
177
178 #define LINEDEVSTATE_CAPSCHANGE 0x00100000
179 #define LINEDEVSTATE_CONFIGCHANGE 0x00200000
180 #define LINEDEVSTATE_TRANSLATECHANGE 0x00400000
181 #define LINEDEVSTATE_COMPLCANCEL 0x00800000
182 #define LINEDEVSTATE_REMOVED 0x01000000
183
184 #define LINELOCATIONOPTION_PULSEDIAL 0x00000001
185
186
187 #define LINEFEATURE_DEVSPECIFIC 0x00000001
188 #define LINEFEATURE_DEVSPECIFICFEAT 0x00000002
189 #define LINEFEATURE_FORWARD 0x00000004
190 #define LINEFEATURE_MAKECALL 0x00000008
191 #define LINEFEATURE_SETMEDIACONTROL 0x00000010
192 #define LINEFEATURE_SETTERMINAL 0x00000020
193 #define LINEFEATURE_SETDEVSTATUS 0x00000040
194 #define LINEFEATURE_FORWARDFWD 0x00000080
195 #define LINEFEATURE_FORWARDDND 0x00000100
196
197 /* tapi callback messages */
198
199 #define LINE_ADDRESSSTATE 0L
200 #define LINE_CALLINFO 1L
201 #define LINE_CALLSTATE 2L
202 #define LINE_CLOSE 3L
203 #define LINE_DEVSPECIFIC 4L
204 #define LINE_DEVSPECIFICFEATURE 5L
205 #define LINE_GATHERDIGITS 6L
206 #define LINE_GENERATE 7L
207 #define LINE_LINEDEVSTATE 8L
208 #define LINE_MONITORDIGITS 9L
209 #define LINE_MONITORMEDIA 10L
210 #define LINE_MONITORTONE 11L
211 #define LINE_REPLY 12L
212 #define LINE_REQUEST 13L
213 #define PHONE_BUTTON 14L
214 #define PHONE_CLOSE 15L
215 #define PHONE_DEVSPECIFIC 16L
216 #define PHONE_REPLY 17L
217 #define PHONE_STATE 18L
218 #define LINE_CREATE 19L
219 #define PHONE_CREATE 20L
220
221 #define LINE_AGENTSPECIFIC 21L
222 #define LINE_AGENTSTATUS 22L
223 #define LINE_APPNEWCALL 23L
224 #define LINE_PROXYREQUEST 24L
225 #define LINE_REMOVE 25L
226 #define PHONE_REMOVE 26L
227 /* these are used as Param1 of line_callstate messages */
228 #define LINECALLSTATE_IDLE 0x00000001
229 #define LINECALLSTATE_OFFERING 0x00000002
230 #define LINECALLSTATE_ACCEPTED 0x00000004
231 #define LINECALLSTATE_DIALTONE 0x00000008
232 #define LINECALLSTATE_DIALING 0x00000010
233 #define LINECALLSTATE_RINGBACK 0x00000020
234 #define LINECALLSTATE_BUSY 0x00000040
235 #define LINECALLSTATE_SPECIALINFO 0x00000080
236 #define LINECALLSTATE_CONNECTED 0x00000100
237 #define LINECALLSTATE_PROCEEDING 0x00000200
238 #define LINECALLSTATE_ONHOLD 0x00000400
239 #define LINECALLSTATE_CONFERENCED 0x00000800
240 #define LINECALLSTATE_ONHOLDPENDCONF 0x00001000
241 #define LINECALLSTATE_ONHOLDPENDTRANSFER 0x00002000
242 #define LINECALLSTATE_DISCONNECTED 0x00004000
243 #define LINECALLSTATE_UNKNOWN 0x00008000
244 #define LINECONNECTEDMODE_ACTIVE 0x00000001
245 #define LINECONNECTEDMODE_INACTIVE 0x00000002
246 #define LINECONNECTEDMODE_ACTIVEHELD 0x00000004
247 #define LINECONNECTEDMODE_INACTIVEHELD 0x00000008
248 #define LINECONNECTEDMODE_CONFIRMED 0x00000010
249
250 /* these are Param2 values for state_disconnected line_callstate messages */
251 #define LINEDISCONNECTMODE_NORMAL 0x00000001
252 #define LINEDISCONNECTMODE_UNKNOWN 0x00000002
253 #define LINEDISCONNECTMODE_REJECT 0x00000004
254 #define LINEDISCONNECTMODE_PICKUP 0x00000008
255 #define LINEDISCONNECTMODE_FORWARDED 0x00000010
256 #define LINEDISCONNECTMODE_BUSY 0x00000020
257 #define LINEDISCONNECTMODE_NOANSWER 0x00000040
258 #define LINEDISCONNECTMODE_BADADDRESS 0x00000080
259 #define LINEDISCONNECTMODE_UNREACHABLE 0x00000100
260 #define LINEDISCONNECTMODE_CONGESTION 0x00000200
261 #define LINEDISCONNECTMODE_INCOMPATIBLE 0x00000400
262 #define LINEDISCONNECTMODE_UNAVAIL 0x00000800
263 #define LINEDISCONNECTMODE_NODIALTONE 0x00001000
264 #define LINEDISCONNECTMODE_NUMBERCHANGED 0x00002000
265 #define LINEDISCONNECTMODE_OUTOFORDER 0x00004000
266 #define LINEDISCONNECTMODE_TEMPFAILURE 0x00008000
267 #define LINEDISCONNECTMODE_QOSUNAVAIL 0x00010000
268 #define LINEDISCONNECTMODE_BLOCKED 0x00020000
269 #define LINEDISCONNECTMODE_DONOTDISTURB 0x00040000
270 #define LINEDISCONNECTMODE_CANCELLED 0x00080000
271
272 #define LINECALLSELECT_LINE 0x00000001
273 #define LINECALLSELECT_ADDRESS 0x00000002
274 #define LINECALLSELECT_CALL 0x00000004
275 #define LINECALLSELECT_DEVICEID 0x00000008
276
277 #define LINECALLPRIVILEGE_NONE 0x00000001
278 #define LINECALLPRIVILEGE_MONITOR 0x00000002
279 #define LINECALLPRIVILEGE_OWNER 0x00000004
280 #define LINECALLFEATURE_ACCEPT 0x00000001
281 #define LINECALLFEATURE_ADDTOCONF 0x00000002
282 #define LINECALLFEATURE_ANSWER 0x00000004
283 #define LINECALLFEATURE_BLINDTRANSFER 0x00000008
284 #define LINECALLFEATURE_COMPLETECALL 0x00000010
285 #define LINECALLFEATURE_COMPLETETRANSF 0x00000020
286 #define LINECALLFEATURE_DIAL 0x00000040
287 #define LINECALLFEATURE_DROP 0x00000080
288 #define LINECALLFEATURE_GATHERDIGITS 0x00000100
289 #define LINECALLFEATURE_GENERATEDIGITS 0x00000200
290 #define LINECALLFEATURE_GENERATETONE 0x00000400
291 #define LINECALLFEATURE_HOLD 0x00000800
292 #define LINECALLFEATURE_MONITORDIGITS 0x00001000
293 #define LINECALLFEATURE_MONITORMEDIA 0x00002000
294 #define LINECALLFEATURE_MONITORTONES 0x00004000
295 #define LINECALLFEATURE_PARK 0x00008000
296 #define LINECALLFEATURE_PREPAREADDCONF 0x00010000
297 #define LINECALLFEATURE_REDIRECT 0x00020000
298 #define LINECALLFEATURE_REMOVEFROMCONF 0x00040000
299 #define LINECALLFEATURE_SECURECALL 0x00080000
300 #define LINECALLFEATURE_SENDUSERUSER 0x00100000
301 #define LINECALLFEATURE_SETCALLPARAMS 0x00200000
302 #define LINECALLFEATURE_SETMEDIACONTROL 0x00400000
303 #define LINECALLFEATURE_SETTERMINAL 0x00800000
304 #define LINECALLFEATURE_SETUPCONF 0x01000000
305 #define LINECALLFEATURE_SETUPTRANSFER 0x02000000
306 #define LINECALLFEATURE_SWAPHOLD 0x04000000
307 #define LINECALLFEATURE_UNHOLD 0x08000000
308 #define LINECALLFEATURE_RELEASEUSERUSERINFO 0x10000000
309
310 typedef struct lineaddresscaps_tag {
311 DWORD dwTotalSize;
312 DWORD dwNeededSize;
313 DWORD dwUsedSize;
314 DWORD dwLineDeviceID;
315 DWORD dwAddressSize;
316 DWORD dwAddressOffset;
317 DWORD dwDevSpecificSize;
318 DWORD dwDevSpecificOffset;
319 DWORD dwAddressSharing;
320 DWORD dwAddressStates;
321 DWORD dwCallInfoStates;
322 DWORD dwCallerIDFlags;
323 DWORD dwCalledIDFlags;
324 DWORD dwConnectedIDFlags;
325 DWORD dwRedirectionIDFlags;
326 DWORD dwRedirectingIDFlags;
327 DWORD dwCallStates;
328 DWORD dwDialToneModes;
329 DWORD dwBusyModes;
330 DWORD dwSpecialInfo;
331 DWORD dwDisconnectModes;
332 DWORD dwMaxNumActiveCalls;
333 DWORD dwMaxNumOnHoldCalls;
334 DWORD dwMaxNumOnHoldPendingCalls;
335 DWORD dwMaxNumConference;
336 DWORD dwMaxNumTransConf;
337 DWORD dwAddrCapFlags;
338 DWORD dwCallFeatures;
339 DWORD dwRemoveFromConfCaps;
340 DWORD dwRemoveFromConfState;
341 DWORD dwTransferModes;
342 DWORD dwParkModes;
343 DWORD dwForwardModes;
344 DWORD dwMaxForwardEntries;
345 DWORD dwMaxSpecificEntries;
346 DWORD dwMinFwdNumRings;
347 DWORD dwMaxFwdNumRings;
348 DWORD dwMaxCallCompletions;
349 DWORD dwCallCompletionConds;
350 DWORD dwCallCompletionModes;
351 DWORD dwNumCompletionMessages;
352 DWORD dwCompletionMsgTextEntrySize;
353 DWORD dwCompletionMsgTextSize;
354 DWORD dwCompletionMsgTextOffset;
355 DWORD dwAddressFeatures;
356 } LINEADDRESSCAPS, *LPLINEADDRESSCAPS;
357
358 typedef struct lineaddressstatus_tag {
359 DWORD dwTotalSize;
360 DWORD dwNeededSize;
361 DWORD dwUsedSize;
362 DWORD dwNumInUse;
363 DWORD dwNumActiveCalls;
364 DWORD dwNumOnHoldCalls;
365 DWORD dwNumOnHoldPendCalls;
366 DWORD dwAddressFeatures;
367 DWORD dwNumRingsNoAnswer;
368 DWORD dwForwardNumEntries;
369 DWORD dwForwardSize;
370 DWORD dwForwardOffset;
371 DWORD dwTerminalModesSize;
372 DWORD dwTerminalModesOffset;
373 DWORD dwDevSpecificSize;
374 DWORD dwDevSpecificOffset;
375 } LINEADDRESSSTATUS, *LPLINEADDRESSSTATUS;
376
377 typedef struct linedialparams_tag {
378 DWORD dwDialPause;
379 DWORD dwDialSpeed;
380 DWORD dwDigitDuration;
381 DWORD dwWaitForDialtone;
382 } LINEDIALPARAMS, *LPLINEDIALPARAMS;
383
384 typedef struct linecallinfo_tag {
385 DWORD dwTotalSize;
386 DWORD dwNeededSize;
387 DWORD dwUsedSize;
388 HLINE hLine;
389 DWORD dwLineDeviceID;
390 DWORD dwAddressID;
391 DWORD dwBearerMode;
392 DWORD dwRate;
393 DWORD dwMediaMode;
394 DWORD dwAppSpecific;
395 DWORD dwCallID;
396 DWORD dwRelatedCallID;
397 DWORD dwCallParamFlags;
398 DWORD dwCallStates;
399 DWORD dwMonitorDigitModes;
400 DWORD dwMonitorMediaModes;
401 LINEDIALPARAMS DialParams;
402 DWORD dwOrigin;
403 DWORD dwReason;
404 DWORD dwCompletionID;
405 DWORD dwNumOwners;
406 DWORD dwNumMonitors;
407 DWORD dwCountryCode;
408 DWORD dwTrunk;
409 DWORD dwCallerIDFlags;
410 DWORD dwCallerIDSize;
411 DWORD dwCallerIDOffset;
412 DWORD dwCallerIDNameSize;
413 DWORD dwCallerIDNameOffset;
414 DWORD dwCalledIDFlags;
415 DWORD dwCalledIDSize;
416 DWORD dwCalledIDOffset;
417 DWORD dwCalledIDNameSize;
418 DWORD dwCalledIDNameOffset;
419 DWORD dwConnectedIDFlags;
420 DWORD dwConnectedIDSize;
421 DWORD dwConnectedIDOffset;
422 DWORD dwConnectedIDNameSize;
423 DWORD dwConnectedIDNameOffset;
424 DWORD dwRedirectionIDFlags;
425 DWORD dwRedirectionIDSize;
426 DWORD dwRedirectionIDOffset;
427 DWORD dwRedirectionIDNameSize;
428 DWORD dwRedirectionIDNameOffset;
429 DWORD dwRedirectingIDFlags;
430 DWORD dwRedirectingIDSize;
431 DWORD dwRedirectingIDOffset;
432 DWORD dwRedirectingIDNameSize;
433 DWORD dwRedirectingIDNameOffset;
434 DWORD dwAppNameSize;
435 DWORD dwAppNameOffset;
436 DWORD dwDisplayableAddressSize;
437 DWORD dwDisplayableAddressOffset;
438 DWORD dwCalledPartySize;
439 DWORD dwCalledPartyOffset;
440 DWORD dwCommentSize;
441 DWORD dwCommentOffset;
442 DWORD dwDisplaySize;
443 DWORD dwDisplayOffset;
444 DWORD dwUserUserInfoSize;
445 DWORD dwUserUserInfoOffset;
446 DWORD dwHighLevelCompSize;
447 DWORD dwHighLevelCompOffset;
448 DWORD dwLowLevelCompSize;
449 DWORD dwLowLevelCompOffset;
450 DWORD dwChargingInfoSize;
451 DWORD dwChargingInfoOffset;
452 DWORD dwTerminalModesSize;
453 DWORD dwTerminalModesOffset;
454 DWORD dwDevSpecificSize;
455 DWORD dwDevSpecificOffset;
456 } LINECALLINFO, *LPLINECALLINFO;
457
458 typedef struct linecalllist_tag {
459 DWORD dwTotalSize;
460 DWORD dwNeededSize;
461 DWORD dwUsedSize;
462 DWORD dwCallsNumEntries;
463 DWORD dwCallsSize;
464 DWORD dwCallsOffset;
465 } LINECALLLIST, *LPLINECALLLIST;
466
467 typedef struct linecallparams_tag {
468 DWORD dwTotalSize;
469 DWORD dwBearerMode;
470 DWORD dwMinRate;
471 DWORD dwMaxRate;
472 DWORD dwMediaMode;
473 DWORD dwCallParamFlags;
474 DWORD dwAddressMode;
475 DWORD dwAddressID;
476 LINEDIALPARAMS DialParams;
477 DWORD dwOrigAddressSize;
478 DWORD dwOrigAddressOffset;
479 DWORD dwDisplayableAddressSize;
480 DWORD dwDisplayableAddressOffset;
481 DWORD dwCalledPartySize;
482 DWORD dwCalledPartyOffset;
483 DWORD dwCommentSize;
484 DWORD dwCommentOffset;
485 DWORD dwUserUserInfoSize;
486 DWORD dwUserUserInfoOffset;
487 DWORD dwHighLevelCompSize;
488 DWORD dwHighLevelCompOffset;
489 DWORD dwLowLevelCompSize;
490 DWORD dwLowLevelCompOffset;
491 DWORD dwDevSpecificSize;
492 DWORD dwDevSpecificOffset;
493 } LINECALLPARAMS, *LPLINECALLPARAMS;
494
495 typedef struct linecallstatus_tag {
496 DWORD dwTotalSize;
497 DWORD dwNeededSize;
498 DWORD dwUsedSize;
499 DWORD dwCallState;
500 DWORD dwCallStateMode;
501 DWORD dwCallPrivilege;
502 DWORD dwCallFeatures;
503 DWORD dwDevSpecificSize;
504 DWORD dwDevSpecificOffset;
505 } LINECALLSTATUS, *LPLINECALLSTATUS;
506
507 typedef struct linecountrylist_tag {
508 DWORD dwTotalSize;
509 DWORD dwNeededSize;
510 DWORD dwUsedSize;
511 DWORD dwNumCountries;
512 DWORD dwCountryListSize;
513 DWORD dwCountryListOffset;
514 } LINECOUNTRYLIST, *LPLINECOUNTRYLIST;
515
516 typedef struct linecountryentry_tag {
517 DWORD dwCountryID;
518 DWORD dwCountryCode;
519 DWORD dwNextCountryID;
520 DWORD dwCountryNameSize;
521 DWORD dwCountryNameOffset;
522 DWORD dwSameAreaRuleSize;
523 DWORD dwSameAreaRuleOffset;
524 DWORD dwLongDistanceRuleSize;
525 DWORD dwLongDistanceRuleOffset;
526 DWORD dwInternationalRuleSize;
527 DWORD dwInternationalRuleOffset;
528 } LINECOUNTRYENTRY, *LPLINECOUNTRYENTRY;
529
530 typedef struct linedevcaps_tag {
531 DWORD dwTotalSize;
532 DWORD dwNeededSize;
533 DWORD dwUsedSize;
534 DWORD dwProviderInfoSize;
535 DWORD dwProviderInfoOffset;
536 DWORD dwSwitchInfoSize;
537 DWORD dwSwitchInfoOffset;
538 DWORD dwPermanentLineID;
539 DWORD dwLineNameSize;
540 DWORD dwLineNameOffset;
541 DWORD dwStringFormat;
542 DWORD dwAddressModes;
543 DWORD dwNumAddresses;
544 DWORD dwBearerModes;
545 DWORD dwMaxRate;
546 DWORD dwMediaModes;
547 DWORD dwGenerateToneModes;
548 DWORD dwGenerateToneMaxNumFreq;
549 DWORD dwGenerateDigitModes;
550 DWORD dwMonitorToneMaxNumFreq;
551 DWORD dwMonitorToneMaxNumEntries;
552 DWORD dwMonitorDigitModes;
553 DWORD dwGatherDigitsMinTimeout;
554 DWORD dwGatherDigitsMaxTimeout;
555 DWORD dwMedCtlDigitMaxListSize;
556 DWORD dwMedCtlMediaMaxListSize;
557 DWORD dwMedCtlToneMaxListSize;
558 DWORD dwMedCtlCallStateMaxListSize;
559 DWORD dwDevCapFlags;
560 DWORD dwMaxNumActiveCalls;
561 DWORD dwAnswerMode;
562 DWORD dwRingModes;
563 DWORD dwLineStates;
564 DWORD dwUUIAcceptSize;
565 DWORD dwUUIAnswerSize;
566 DWORD dwUUIMakeCallSize;
567 DWORD dwUUIDropSize;
568 DWORD dwUUISendUserUserInfoSize;
569 DWORD dwUUICallInfoSize;
570 LINEDIALPARAMS MinDialParams;
571 LINEDIALPARAMS MaxDialParams;
572 LINEDIALPARAMS DefaultDialParams;
573 DWORD dwNumTerminals;
574 DWORD dwTerminalCapsSize;
575 DWORD dwTerminalCapsOffset;
576 DWORD dwTerminalTextEntrySize;
577 DWORD dwTerminalTextSize;
578 DWORD dwTerminalTextOffset;
579 DWORD dwDevSpecificSize;
580 DWORD dwDevSpecificOffset;
581 DWORD dwLineFeatures;
582 } LINEDEVCAPS, *LPLINEDEVCAPS;
583
584 typedef struct linedevstatus_tag {
585 DWORD dwTotalSize;
586 DWORD dwNeededSize;
587 DWORD dwUsedSize;
588 DWORD dwNumOpens;
589 DWORD dwOpenMediaModes;
590 DWORD dwNumActiveCalls;
591 DWORD dwNumOnHoldCalls;
592 DWORD dwNumOnHoldPendCalls;
593 DWORD dwLineFeatures;
594 DWORD dwNumCallCompletions;
595 DWORD dwRingMode;
596 DWORD dwSignalLevel;
597 DWORD dwBatteryLevel;
598 DWORD dwRoamMode;
599 DWORD dwDevStatusFlags;
600 DWORD dwTerminalModesSize;
601 DWORD dwTerminalModesOffset;
602 DWORD dwDevSpecificSize;
603 DWORD dwDevSpecificOffset;
604 } LINEDEVSTATUS, *LPLINEDEVSTATUS;
605
606 typedef struct lineextensionid_tag {
607 DWORD dwExtensionID0;
608 DWORD dwExtensionID1;
609 DWORD dwExtensionID2;
610 DWORD dwExtensionID3;
611 } LINEEXTENSIONID, *LPLINEEXTENSIONID;
612
613 typedef struct lineforward_tag {
614 DWORD dwForwardMode;
615 DWORD dwCallerAddressSize;
616 DWORD dwCallerAddressOffset;
617 DWORD dwDestCountryCode;
618 DWORD dwDestAddressSize;
619 DWORD dwDestAddressOffset;
620 } LINEFORWARD, *LPLINEFORWARD;
621
622 typedef struct lineforwardlist_tag {
623 DWORD dwTotalSize;
624 DWORD dwNumEntries;
625 LINEFORWARD ForwardList[1];
626 } LINEFORWARDLIST, *LPLINEFORWARDLIST;
627
628 typedef struct linegeneratetone_tag {
629 DWORD dwFrequency;
630 DWORD dwCadenceOn;
631 DWORD dwCadenceOff;
632 DWORD dwVolume;
633 } LINEGENERATETONE, *LPLINEGENERATETONE;
634
635 typedef struct lineinitializeexparams_tag {
636 DWORD dwTotalSize;
637 DWORD dwNeededSize;
638 DWORD dwUsedSize;
639 DWORD dwOptions;
640 union {
641 HANDLE hEvent;
642 HANDLE hCompletionPort;
643 } Handles;
644 DWORD dwCompletionKey;
645 } LINEINITIALIZEEXPARAMS, *LPLINEINITIALIZEEXPARAMS;
646
647 typedef struct linemediacontrolcallstate_tag {
648 DWORD dwCallStates;
649 DWORD dwMediaControl;
650 } LINEMEDIACONTROLCALLSTATE, *LPLINEMEDIACONTROLCALLSTATE;
651
652 typedef struct linemediacontroldigit_tag {
653 DWORD dwDigit;
654 DWORD dwDigitModes;
655 DWORD dwMediaControl;
656 } LINEMEDIACONTROLDIGIT, *LPLINEMEDIACONTROLDIGIT;
657
658 typedef struct linemediacontrolmedia_tag {
659 DWORD dwMediaModes;
660 DWORD dwDuration;
661 DWORD dwMediaControl;
662 } LINEMEDIACONTROLMEDIA, *LPLINEMEDIACONTROLMEDIA;
663
664 typedef struct linemediacontroltone_tag {
665 DWORD dwAppSpecific;
666 DWORD dwDuration;
667 DWORD dwFrequency1;
668 DWORD dwFrequency2;
669 DWORD dwFrequency3;
670 DWORD dwMediaControl;
671 } LINEMEDIACONTROLTONE, *LPLINEMEDIACONTROLTONE;
672
673 typedef struct linemonitortone_tag {
674 DWORD dwAppSpecific;
675 DWORD dwDuration;
676 DWORD dwFrequency1;
677 DWORD dwFrequency2;
678 DWORD dwFrequency3;
679 } LINEMONITORTONE, *LPLINEMONITORTONE;
680
681 typedef struct lineproviderlist_tag {
682 DWORD dwTotalSize;
683 DWORD dwNeededSize;
684 DWORD dwUsedSize;
685 DWORD dwNumProviders;
686 DWORD dwProviderListSize;
687 DWORD dwProviderListOffset;
688 } LINEPROVIDERLIST, *LPLINEPROVIDERLIST;
689
690 typedef struct linetranslatecaps_tag {
691 DWORD dwTotalSize;
692 DWORD dwNeededSize;
693 DWORD dwUsedSize;
694 DWORD dwNumLocations;
695 DWORD dwLocationListSize;
696 DWORD dwLocationListOffset;
697 DWORD dwCurrentLocationID;
698 DWORD dwNumCards;
699 DWORD dwCardListSize;
700 DWORD dwCardListOffset;
701 DWORD dwCurrentPreferredCardID;
702 } LINETRANSLATECAPS, *LPLINETRANSLATECAPS;
703
704 typedef struct linelocationentry_tag {
705 DWORD dwPermanentLocationID;
706 DWORD dwLocationNameSize;
707 DWORD dwLocationNameOffset;
708 DWORD dwCountryCode;
709 DWORD dwCityCodeSize;
710 DWORD dwCityCodeOffset;
711 DWORD dwPreferredCardID;
712 DWORD dwLocalAccessCodeSize;
713 DWORD dwLocalAccessCodeOffset;
714 DWORD dwLongDistanceAccessCodeSize;
715 DWORD dwLongDistanceAccessCodeOffset;
716 DWORD dwTollPrefixListSize;
717 DWORD dwTollPrefixListOffset;
718 DWORD dwCountryID;
719 DWORD dwOptions;
720 DWORD dwCancelCallWaitingSize;
721 DWORD dwCancelCallWaitingOffset;
722 } LINELOCATIONENTRY, *LPLINELOCATIONENTRY;
723
724 typedef struct linecardentry_tag {
725 DWORD dwPermanentCardID;
726 DWORD dwCardNameSize;
727 DWORD dwCardNameOffset;
728 DWORD dwCardNumberDigits;
729 DWORD dwSameAreaRuleSize;
730 DWORD dwSameAreaRuleOffset;
731 DWORD dwLongDistanceRuleSize;
732 DWORD dwLongDistanceRuleOffset;
733 DWORD dwInternationalRuleSize;
734 DWORD dwInternationalRuleOffset;
735 DWORD dwOptions;
736 } LINECARDENTRY, *LPLINECARDENTRY;
737
738
739 typedef struct linetranslateoutput_tag {
740 DWORD dwTotalSize;
741 DWORD dwNeededSize;
742 DWORD dwUsedSize;
743 DWORD dwDialableStringSize;
744 DWORD dwDialableStringOffset;
745 DWORD dwDisplayableStringSize;
746 DWORD dwDisplayableStringOffset;
747 DWORD dwCurrentCountry;
748 DWORD dwDestCountry;
749 DWORD dwTranslateResults;
750 } LINETRANSLATEOUTPUT, *LPLINETRANSLATEOUTPUT;
751
752 typedef void (CALLBACK *LINECALLBACK)(DWORD, DWORD, DWORD, DWORD, DWORD, DWORD);
753
754 typedef struct _PHONEAPP {
755 int dummy;
756 } PHONEAPP, *LPPHONEAPP;
757
758 typedef struct _PHONE {
759 DWORD dwRingMode;
760 DWORD dwVolume;
761 } PHONE, *LPPHONE;
762
763 typedef struct phonebuttoninfo_tag {
764 DWORD dwTotalSize;
765 DWORD dwNeededSize;
766 DWORD dwUsedSize;
767 DWORD dwButtonMode;
768 DWORD dwButtonFunction;
769 DWORD dwButtonTextSize;
770 DWORD dwButtonTextOffset;
771 DWORD dwDevSpecificSize;
772 DWORD dwDevSpecificOffset;
773 DWORD dwButtonState;
774 } PHONEBUTTONINFO, *LPPHONEBUTTONINFO;
775
776 typedef struct phonecaps_tag {
777 DWORD dwTotalSize;
778 DWORD dwNeededSize;
779 DWORD dwUsedSize;
780 DWORD dwProviderInfoSize;
781 DWORD dwProviderInfoOffset;
782 DWORD dwPhoneInfoSize;
783 DWORD dwPhoneInfoOffset;
784 DWORD dwPermanentPhoneID;
785 DWORD dwPhoneNameSize;
786 DWORD dwPhoneNameOffset;
787 DWORD dwStringFormat;
788 DWORD dwPhoneStates;
789 DWORD dwHookSwitchDevs;
790 DWORD dwHandsetHookSwitchModes;
791 DWORD dwSpeakerHookSwitchModes;
792 DWORD dwHeadsetHookSwitchModes;
793 DWORD dwVolumeFlags;
794 DWORD dwGainFlags;
795 DWORD dwDisplayNumRows;
796 DWORD dwDisplayNumColumns;
797 DWORD dwNumRingModes;
798 DWORD dwNumButtonLamps;
799 DWORD dwButtonModesSize;
800 DWORD dwButtonModesOffset;
801 DWORD dwButtonFunctionsSize;
802 DWORD dwButtonFunctionsOffset;
803 DWORD dwLampModesSize;
804 DWORD dwLampModesOffset;
805 DWORD dwNumSetData;
806 DWORD dwSetDataSize;
807 DWORD dwSetDataOffset;
808 DWORD dwNumGetData;
809 DWORD dwGetDataSize;
810 DWORD dwGetDataOffset;
811 DWORD dwDevSpecificSize;
812 DWORD dwDevSpecificOffset;
813 } PHONECAPS, *LPPHONECAPS;
814
815 typedef struct phoneextensionid_tag {
816 DWORD dwExtensionID0;
817 DWORD dwExtensionID1;
818 DWORD dwExtensionID2;
819 DWORD dwExtensionID3;
820 } PHONEEXTENSIONID, *LPPHONEEXTENSIONID;
821
822 typedef struct phonestatus_tag {
823 DWORD dwTotalSize;
824 DWORD dwNeededSize;
825 DWORD dwUsedSize;
826 DWORD dwStatusFlags;
827 DWORD dwNumOwners;
828 DWORD dwRingMOde;
829 DWORD dwRingVolume;
830 DWORD dwHandsetHookSwitchMode;
831 DWORD dwHandsetVolume;
832 DWORD dwHandsetGain;
833 DWORD dwSpeakerHookSwitchMode;
834 DWORD dwSpeakerVolume;
835 DWORD dwSpeakerGain;
836 DWORD dwHeadsetHookSwitchMode;
837 DWORD dwHeadsetVolume;
838 DWORD dwHeadsetGain;
839 DWORD dwDisplaySize;
840 DWORD dwDisplayOffset;
841 DWORD dwLampModesSize;
842 DWORD dwLampModesOffset;
843 DWORD dwOwnerNameSize;
844 DWORD dwOwnerNameOffset;
845 DWORD dwDevSpecificSize;
846 DWORD dwDevSpecificOffset;
847 } PHONESTATUS, *LPPHONESTATUS;
848
849 typedef void (CALLBACK *PHONECALLBACK)(HANDLE, DWORD, DWORD, DWORD, DWORD, DWORD);
850
851 typedef struct varstring_tag {
852 DWORD dwTotalSize;
853 DWORD dwNeededSize;
854 DWORD dwUsedSize;
855 DWORD dwStringFormat;
856 DWORD dwStringSize;
857 DWORD dwStringOffset;
858 } VARSTRING, *LPVARSTRING;
859
860 /* line functions */
861 DWORD WINAPI lineAccept(HCALL,LPCSTR,DWORD);
862 DWORD WINAPI lineAddProvider(LPCSTR,HWND,LPDWORD);
863 DWORD WINAPI lineAddToConference(HCALL,HCALL);
864 DWORD WINAPI lineAnswer(HCALL,LPCSTR,DWORD);
865 DWORD WINAPI lineBlindTransfer(HCALL,LPCSTR,DWORD);
866 DWORD WINAPI lineClose(HLINE);
867 DWORD WINAPI lineCompleteCall(HCALL,LPDWORD,DWORD,DWORD);
868 DWORD WINAPI lineCompleteTransfer(HCALL,HCALL,LPHCALL,DWORD);
869 DWORD WINAPI lineConfigDialog(DWORD,HWND,LPCSTR);
870 DWORD WINAPI lineConfigDialogEdit(DWORD,HWND,LPCSTR,LPVOID const,DWORD,LPVARSTRING);
871 DWORD WINAPI lineConfigProvider(HWND,DWORD);
872 DWORD WINAPI lineDeallocateCall(HCALL);
873 DWORD WINAPI lineDevSpecific(HLINE,DWORD,HCALL,LPVOID,DWORD);
874 DWORD WINAPI lineDevSpecificFeature(HLINE,DWORD,LPVOID,DWORD);
875 DWORD WINAPI lineDial(HCALL,LPCSTR,DWORD);
876 DWORD WINAPI lineDrop(HCALL,LPCSTR,DWORD);
877 DWORD WINAPI lineForward(HLINE,DWORD,DWORD,LPLINEFORWARDLIST,DWORD,LPHCALL,LPLINECALLPARAMS);
878 DWORD WINAPI lineGatherDigits(HCALL,DWORD,LPSTR,DWORD,LPCSTR,DWORD,DWORD);
879 DWORD WINAPI lineGenerateDigits(HCALL,DWORD,LPCSTR,DWORD);
880 DWORD WINAPI lineGenerateTone(HCALL,DWORD,DWORD,DWORD,LPLINEGENERATETONE);
881 DWORD WINAPI lineGetAddressCaps(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPLINEADDRESSCAPS);
882 DWORD WINAPI lineGetAddressID(HLINE,LPDWORD,DWORD,LPCSTR,DWORD);
883 DWORD WINAPI lineGetAddressStatus(HLINE,DWORD,LPLINEADDRESSSTATUS);
884 DWORD WINAPI lineGetAppPriority(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPVARSTRING,LPDWORD);
885 DWORD WINAPI lineGetCallInfo(HCALL,LPLINECALLINFO);
886 DWORD WINAPI lineGetCallStatus(HCALL,LPLINECALLSTATUS);
887 DWORD WINAPI lineGetConfRelatedCalls(HCALL,LPLINECALLLIST);
888 DWORD WINAPI lineGetCountry(DWORD,DWORD,LPLINECOUNTRYLIST);
889 DWORD WINAPI lineGetDevCaps(HLINEAPP,DWORD,DWORD,DWORD,LPLINEDEVCAPS);
890 DWORD WINAPI lineGetDevConfig(DWORD,LPVARSTRING,LPCSTR);
891 DWORD WINAPI lineGetID(HLINE,DWORD,HCALL,DWORD,LPVARSTRING,LPCSTR);
892 DWORD WINAPI lineGetIcon(DWORD,LPCSTR,HICON *);
893 DWORD WINAPI lineGetLineDevStatus(HLINE,LPLINEDEVSTATUS);
894 DWORD WINAPI lineGetNewCalls(HLINE,DWORD,DWORD,LPLINECALLLIST);
895 DWORD WINAPI lineGetNumRings(HLINE,DWORD,LPDWORD);
896 DWORD WINAPI lineGetProviderList(DWORD dwAPIVersion,LPLINEPROVIDERLIST);
897 DWORD WINAPI lineGetRequest(HLINEAPP,DWORD,LPVOID);
898 DWORD WINAPI lineGetStatusMessages(HLINE,LPDWORD,LPDWORD);
899 DWORD WINAPI lineGetTranslateCaps(HLINEAPP,DWORD,LPLINETRANSLATECAPS);
900 DWORD WINAPI lineHandoff(HCALL,LPCSTR,DWORD);
901 DWORD WINAPI lineHold(HCALL);
902 DWORD WINAPI lineInitialize(LPHLINEAPP,HINSTANCE,LINECALLBACK,LPCSTR,LPDWORD);
903 LONG WINAPI lineInitializeExA(LPHLINEAPP,HINSTANCE,LINECALLBACK,LPCSTR,LPDWORD,LPDWORD,LPLINEINITIALIZEEXPARAMS);
904 LONG WINAPI lineInitializeExW(LPHLINEAPP,HINSTANCE,LINECALLBACK,LPCWSTR,LPDWORD,LPDWORD,LPLINEINITIALIZEEXPARAMS);
905 #define lineInitializeEx WINELIB_NAME_AW(lineInitializeEx)
906 DWORD WINAPI lineMakeCall(HLINE,LPHCALL,LPCSTR,DWORD,LPLINECALLPARAMS);
907 DWORD WINAPI lineMonitorDigits(HCALL,DWORD);
908 DWORD WINAPI lineMonitorMedia(HCALL,DWORD);
909 DWORD WINAPI lineMonitorTones(HCALL,LPLINEMONITORTONE,DWORD);
910 DWORD WINAPI lineNegotiateAPIVersion(HLINEAPP,DWORD,DWORD,DWORD,LPDWORD,LPLINEEXTENSIONID);
911 DWORD WINAPI lineNegotiateExtVersion(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPDWORD);
912 DWORD WINAPI lineOpen(HLINEAPP,DWORD,LPHLINE,DWORD,DWORD,DWORD,DWORD,DWORD,LPLINECALLPARAMS);
913 DWORD WINAPI linePark(HCALL,DWORD,LPCSTR,LPVARSTRING);
914 DWORD WINAPI linePickup(HLINE,DWORD,LPHCALL,LPCSTR,LPCSTR);
915 DWORD WINAPI linePrepareAddToConference(HCALL,LPHCALL,LPLINECALLPARAMS);
916 DWORD WINAPI lineRedirect(HCALL,LPCSTR,DWORD);
917 DWORD WINAPI lineRegisterRequestRecipient(HLINEAPP,DWORD,DWORD,DWORD);
918 DWORD WINAPI lineReleaseUserUserInfo(HCALL);
919 DWORD WINAPI lineRemoveFromConference(HCALL);
920 DWORD WINAPI lineRemoveProvider(DWORD,HWND);
921 DWORD WINAPI lineSecureCall(HCALL);
922 DWORD WINAPI lineSendUserUserInfo(HCALL,LPCSTR,DWORD);
923 DWORD WINAPI lineSetAppPriority(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPCSTR,DWORD);
924 DWORD WINAPI lineSetAppSpecific(HCALL,DWORD);
925 DWORD WINAPI lineSetCallParams(HCALL,DWORD,DWORD,DWORD,LPLINEDIALPARAMS);
926 DWORD WINAPI lineSetCallPrivilege(HCALL,DWORD);
927 DWORD WINAPI lineSetCurrentLocation(HLINEAPP,DWORD);
928 DWORD WINAPI lineSetDevConfig(DWORD,LPVOID,DWORD,LPCSTR);
929 DWORD WINAPI lineSetMediaControl(HLINE,DWORD,HCALL,DWORD,LPLINEMEDIACONTROLDIGIT,DWORD,LPLINEMEDIACONTROLMEDIA,DWORD,LPLINEMEDIACONTROLTONE,DWORD,LPLINEMEDIACONTROLCALLSTATE,DWORD);
930 DWORD WINAPI lineSetMediaMode(HCALL,DWORD);
931 DWORD WINAPI lineSetNumRings(HLINE,DWORD,DWORD);
932 DWORD WINAPI lineSetStatusMessages(HLINE,DWORD,DWORD);
933 DWORD WINAPI lineSetTerminal(HLINE,DWORD,HCALL,DWORD,DWORD,DWORD,DWORD);
934 DWORD WINAPI lineSetTollList(HLINEAPP,DWORD,LPCSTR,DWORD);
935 DWORD WINAPI lineSetupConference(HCALL,HLINE,LPHCALL,LPHCALL,DWORD,LPLINECALLPARAMS);
936 DWORD WINAPI lineSetupTransfer(HCALL,LPHCALL,LPLINECALLPARAMS);
937 DWORD WINAPI lineShutdown(HLINEAPP);
938 DWORD WINAPI lineSwapHold(HCALL,HCALL);
939 DWORD WINAPI lineTranslateAddress(HLINEAPP,DWORD,DWORD,LPCSTR,DWORD,DWORD,LPLINETRANSLATEOUTPUT);
940 DWORD WINAPI lineTranslateDialog(HLINEAPP,DWORD,DWORD,HWND,LPCSTR);
941 DWORD WINAPI lineUncompleteCall(HLINE,DWORD);
942 DWORD WINAPI lineUnHold(HCALL);
943 DWORD WINAPI lineUnpark(HLINE,DWORD,LPHCALL,LPCSTR);
944
945 DWORD WINAPI lineAddProviderA(LPCSTR,HWND,LPDWORD);
946 DWORD WINAPI lineBlindTransferA(HCALL,LPCSTR,DWORD);
947 DWORD WINAPI lineConfigDialogA(DWORD,HWND,LPCSTR);
948 DWORD WINAPI lineConfigDialogEditA(DWORD,HWND,LPCSTR,LPVOID const,DWORD,LPVARSTRING);
949 DWORD WINAPI lineDialA(HCALL,LPCSTR,DWORD);
950 DWORD WINAPI lineForwardA(HLINE,DWORD,DWORD,LPLINEFORWARDLIST,DWORD,LPHCALL,LPLINECALLPARAMS);
951 DWORD WINAPI lineGatherDigitsA(HCALL,DWORD,LPSTR,DWORD,LPCSTR,DWORD,DWORD);
952 DWORD WINAPI lineGenerateDigitsA(HCALL,DWORD,LPCSTR,DWORD);
953 DWORD WINAPI lineGetAddressCapsA(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPLINEADDRESSCAPS);
954 DWORD WINAPI lineGetAddressIDA(HLINE,LPDWORD,DWORD,LPCSTR,DWORD);
955 DWORD WINAPI lineGetAddressStatusA(HLINE,DWORD,LPLINEADDRESSSTATUS);
956 DWORD WINAPI lineGetAppPriorityA(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPVARSTRING,LPDWORD);
957 DWORD WINAPI lineGetCallInfoA(HCALL,LPLINECALLINFO);
958 DWORD WINAPI lineGetCountryA(DWORD,DWORD,LPLINECOUNTRYLIST);
959 DWORD WINAPI lineGetDevCapsA(HLINEAPP,DWORD,DWORD,DWORD,LPLINEDEVCAPS);
960 DWORD WINAPI lineGetDevConfigA(DWORD,LPVARSTRING,LPCSTR);
961 DWORD WINAPI lineGetIDA(HLINE,DWORD,HCALL,DWORD,LPVARSTRING,LPCSTR);
962 DWORD WINAPI lineGetIconA(DWORD,LPCSTR,HICON *);
963 DWORD WINAPI lineGetLineDevStatusA(HLINE,LPLINEDEVSTATUS);
964 DWORD WINAPI lineGetProviderListA(DWORD dwAPIVersion,LPLINEPROVIDERLIST);
965 DWORD WINAPI lineGetRequestA(HLINEAPP,DWORD,LPVOID);
966 DWORD WINAPI lineGetTranslateCapsA(HLINEAPP,DWORD,LPLINETRANSLATECAPS);
967 DWORD WINAPI lineHandoffA(HCALL,LPCSTR,DWORD);
968 DWORD WINAPI lineMakeCallA(HLINE,LPHCALL,LPCSTR,DWORD,LPLINECALLPARAMS);
969 DWORD WINAPI lineOpenA(HLINEAPP,DWORD,LPHLINE,DWORD,DWORD,DWORD,DWORD,DWORD,LPLINECALLPARAMS);
970 DWORD WINAPI lineParkA(HCALL,DWORD,LPCSTR,LPVARSTRING);
971 DWORD WINAPI linePickupA(HLINE,DWORD,LPHCALL,LPCSTR,LPCSTR);
972 DWORD WINAPI linePrepareAddToConferenceA(HCALL,LPHCALL,LPLINECALLPARAMS);
973 DWORD WINAPI lineRedirectA(HCALL,LPCSTR,DWORD);
974 DWORD WINAPI lineSetAppPriorityA(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPCSTR,DWORD);
975 DWORD WINAPI lineSetDevConfigA(DWORD,LPVOID,DWORD,LPCSTR);
976 DWORD WINAPI lineSetTollListA(HLINEAPP,DWORD,LPCSTR,DWORD);
977 DWORD WINAPI lineSetupConferenceA(HCALL,HLINE,LPHCALL,LPHCALL,DWORD,LPLINECALLPARAMS);
978 DWORD WINAPI lineSetupTransferA(HCALL,LPHCALL,LPLINECALLPARAMS);
979 DWORD WINAPI lineTranslateAddressA(HLINEAPP,DWORD,DWORD,LPCSTR,DWORD,DWORD,LPLINETRANSLATEOUTPUT);
980 DWORD WINAPI lineTranslateDialogA(HLINEAPP,DWORD,DWORD,HWND,LPCSTR);
981 DWORD WINAPI lineUnhold(HCALL);
982 DWORD WINAPI lineUnparkA(HLINE,DWORD,LPHCALL,LPCSTR);
983
984 /* phone functions */
985 DWORD WINAPI phoneClose(HPHONE);
986 DWORD WINAPI phoneConfigDialog(DWORD,HWND,LPCSTR);
987 DWORD WINAPI phoneDevSpecific(HPHONE,LPVOID,DWORD);
988 DWORD WINAPI phoneGetButtonInfo(HPHONE,DWORD,LPPHONEBUTTONINFO);
989 DWORD WINAPI phoneGetData(HPHONE,DWORD,LPVOID,DWORD);
990 DWORD WINAPI phoneGetDevCaps(HPHONEAPP,DWORD,DWORD,DWORD,LPPHONECAPS);
991 DWORD WINAPI phoneGetDisplay(HPHONE,LPVARSTRING);
992 DWORD WINAPI phoneGetGain(HPHONE,DWORD,LPDWORD);
993 DWORD WINAPI phoneGetHookSwitch(HPHONE,LPDWORD);
994 DWORD WINAPI phoneGetID(HPHONE,LPVARSTRING,LPCSTR);
995 DWORD WINAPI phoneGetIcon(DWORD,LPCSTR,HICON *);
996 DWORD WINAPI phoneGetLamp(HPHONE,DWORD,LPDWORD);
997 DWORD WINAPI phoneGetRing(HPHONE,LPDWORD,LPDWORD);
998 DWORD WINAPI phoneGetStatus(HPHONE,LPPHONESTATUS);
999 DWORD WINAPI phoneGetStatusMessages(HPHONE,LPDWORD,LPDWORD,LPDWORD);
1000 DWORD WINAPI phoneGetVolume(HPHONE,DWORD,LPDWORD);
1001 DWORD WINAPI phoneInitialize(LPHPHONEAPP,HINSTANCE,PHONECALLBACK,LPCSTR,LPDWORD);
1002 DWORD WINAPI phoneNegotiateAPIVersion(HPHONEAPP,DWORD,DWORD,DWORD,LPDWORD,LPPHONEEXTENSIONID);
1003 DWORD WINAPI phoneNegotiateExtVersion(HPHONEAPP,DWORD,DWORD,DWORD,DWORD,LPDWORD);
1004 DWORD WINAPI phoneOpen(HPHONEAPP,DWORD,LPHPHONE,DWORD,DWORD,DWORD,DWORD);
1005 DWORD WINAPI phoneSetButtonInfo(HPHONE,DWORD,LPPHONEBUTTONINFO);
1006 DWORD WINAPI phoneSetData(HPHONE,DWORD,LPVOID,DWORD);
1007 DWORD WINAPI phoneSetDisplay(HPHONE,DWORD,DWORD,LPCSTR,DWORD);
1008 DWORD WINAPI phoneSetGain(HPHONE,DWORD,DWORD);
1009 DWORD WINAPI phoneSetHookSwitch(HPHONE,DWORD,DWORD);
1010 DWORD WINAPI phoneSetLamp(HPHONE,DWORD,DWORD);
1011 DWORD WINAPI phoneSetRing(HPHONE,DWORD,DWORD);
1012 DWORD WINAPI phoneSetStatusMessages(HPHONE,DWORD,DWORD,DWORD);
1013 DWORD WINAPI phoneSetVolume(HPHONE,DWORD,DWORD);
1014 DWORD WINAPI phoneShutdown(HPHONEAPP);
1015
1016 DWORD WINAPI phoneConfigDialogA(DWORD,HWND,LPCSTR);
1017 DWORD WINAPI phoneGetButtonInfoA(HPHONE,DWORD,LPPHONEBUTTONINFO);
1018 DWORD WINAPI phoneGetDevCapsA(HPHONEAPP,DWORD,DWORD,DWORD,LPPHONECAPS);
1019 DWORD WINAPI phoneGetIDA(HPHONE,LPVARSTRING,LPCSTR);
1020 DWORD WINAPI phoneGetIconA(DWORD,LPCSTR,HICON *);
1021 DWORD WINAPI phoneGetStatusA(HPHONE,LPPHONESTATUS);
1022 DWORD WINAPI phoneSetButtonInfoA(HPHONE,DWORD,LPPHONEBUTTONINFO);
1023
1024 /* "assisted" functions */
1025 DWORD WINAPI tapiGetLocationInfo(LPSTR,LPSTR);
1026 DWORD WINAPI tapiRequestMakeCall(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
1027
1028 DWORD WINAPI tapiGetLocationInfoA(LPSTR,LPSTR);
1029 DWORD WINAPI tapiRequestMakeCallA(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
1030
1031 #ifdef __cplusplus
1032 } /* extern "C" */
1033 #endif /* defined(__cplusplus) */
1034
1035 #endif /* __WINE_TAPI_H */