1 /**
2  * Windows API header module
3  *
4  * Translated from MinGW Windows headers
5  *
6  * Authors: Stewart Gordon
7  * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
8  * Source: $(DRUNTIMESRC core/sys/windows/_mcx.d)
9  */
10 module core.sys.windows.mcx;
11 version (Windows):
12 
13 import core.sys.windows.windef;
14 
15 enum DWORD
16     DIALOPTION_BILLING  =  64,
17     DIALOPTION_QUIET    = 128,
18     DIALOPTION_DIALTONE = 256;
19 
20 enum DWORD
21     MDMVOLFLAG_LOW    = 1,
22     MDMVOLFLAG_MEDIUM = 2,
23     MDMVOLFLAG_HIGH   = 4;
24 
25 enum : DWORD {
26     MDMVOL_LOW    = 0,
27     MDMVOL_MEDIUM = 1,
28     MDMVOL_HIGH   = 2
29 }
30 
31 enum DWORD
32     MDMSPKRFLAG_OFF       = 1,
33     MDMSPKRFLAG_DIAL      = 2,
34     MDMSPKRFLAG_ON        = 4,
35     MDMSPKRFLAG_CALLSETUP = 8;
36 
37 enum : DWORD {
38     MDMSPKR_OFF,
39     MDMSPKR_DIAL,
40     MDMSPKR_ON,
41     MDMSPKR_CALLSETUP
42 }
43 
44 enum DWORD
45     MDM_COMPRESSION      = 0x0001,
46     MDM_ERROR_CONTROL    = 0x0002,
47     MDM_FORCED_EC        = 0x0004,
48     MDM_CELLULAR         = 0x0008,
49     MDM_FLOWCONTROL_HARD = 0x0010,
50     MDM_FLOWCONTROL_SOFT = 0x0020,
51     MDM_CCITT_OVERRIDE   = 0x0040,
52     MDM_SPEED_ADJUST     = 0x0080,
53     MDM_TONE_DIAL        = 0x0100,
54     MDM_BLIND_DIAL       = 0x0200,
55     MDM_V23_OVERRIDE     = 0x0400;
56 
57 struct MODEMDEVCAPS {
58     DWORD dwActualSize;
59     DWORD dwRequiredSize;
60     DWORD dwDevSpecificOffset;
61     DWORD dwDevSpecificSize;
62     DWORD dwModemProviderVersion;
63     DWORD dwModemManufacturerOffset;
64     DWORD dwModemManufacturerSize;
65     DWORD dwModemModelOffset;
66     DWORD dwModemModelSize;
67     DWORD dwModemVersionOffset;
68     DWORD dwModemVersionSize;
69     DWORD dwDialOptions;
70     DWORD dwCallSetupFailTimer;
71     DWORD dwInactivityTimeout;
72     DWORD dwSpeakerVolume;
73     DWORD dwSpeakerMode;
74     DWORD dwModemOptions;
75     DWORD dwMaxDTERate;
76     DWORD dwMaxDCERate;
77     BYTE  _abVariablePortion;
78 
79     BYTE* abVariablePortion() return { return &_abVariablePortion; }
80 }
81 alias MODEMDEVCAPS* PMODEMDEVCAPS, LPMODEMDEVCAPS;
82 
83 struct MODEMSETTINGS {
84     DWORD dwActualSize;
85     DWORD dwRequiredSize;
86     DWORD dwDevSpecificOffset;
87     DWORD dwDevSpecificSize;
88     DWORD dwCallSetupFailTimer;
89     DWORD dwInactivityTimeout;
90     DWORD dwSpeakerVolume;
91     DWORD dwSpeakerMode;
92     DWORD dwPreferredModemOptions;
93     DWORD dwNegotiatedModemOptions;
94     DWORD dwNegotiatedDCERate;
95     BYTE  _abVariablePortion;
96 
97     BYTE* abVariablePortion() return { return &_abVariablePortion; }
98 }
99 alias MODEMSETTINGS* PMODEMSETTINGS, LPMODEMSETTINGS;