Add some more Windows Terminal Server API definitions.
[wine] / include / sensevts.idl
1 /*
2  * Copyright (C) 2005 Mike McCormack
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17  */
18
19 import "oaidl.idl";
20
21 typedef struct SENS_QOCINFO
22 {
23     DWORD dwSize;
24     DWORD dwFlags;
25     DWORD dwOutSpeed;
26     DWORD dwInSpeed;
27 } SENS_QOCINFO, *LPSENS_QOCINFO;
28
29 [
30   object,
31   pointer_default(unique)
32 ]
33 interface ISensNetwork : IDispatch
34 {
35     HRESULT ConnectionMade(
36         [in] BSTR bstrConnection,
37         [in] ULONG ulType,
38         [in] LPSENS_QOCINFO lpQOCInfo );
39     HRESULT ConnectionMadeNoQOCInfo(
40         [in] BSTR bstrConnection,
41         [in] ULONG ulType );
42     HRESULT ConnectionLost(
43         [in] BSTR bstrConnection,
44         [in] ULONG ulType );
45     HRESULT DestinationReachable(
46         [in] BSTR bstrDestination,
47         [in] BSTR bstrConnection,
48         [in] ULONG ulType,
49         [in] LPSENS_QOCINFO lpQOCInfo );
50     HRESULT DestinationReachableNoQOCInfo(
51         [in] BSTR bstrDestination,
52         [in] BSTR bstrConnection,
53         [in] ULONG ulType );
54 }
55
56 [
57   object,
58   pointer_default(unique)
59 ]
60 interface ISensOnNow : IDispatch
61 {
62     HRESULT OnAcPower( void );
63     HRESULT OnBatteryPower(
64         [in] DWORD dwBatteryLifePercent );
65     HRESULT BatteryLow(
66         [in] DWORD dwBatteryLifePercent );
67 }
68
69 [
70   object,
71   pointer_default(unique)
72 ]
73 interface ISensLogon : IDispatch
74 {
75     HRESULT Logon(
76         [in] BSTR bstrUserName );
77     HRESULT Logoff(
78         [in] BSTR bstrUserName );
79     HRESULT StartShell(
80         [in] BSTR bstrUserName );
81     HRESULT DisplayLock(
82         [in] BSTR bstrUserName );
83     HRESULT DisplayUnlock(
84         [in] BSTR bstrUserName );
85     HRESULT StartScreenSaver(
86         [in] BSTR bstrUserName );
87     HRESULT StopScreenSaver(
88         [in] BSTR bstrUserName );
89 }
90
91 [
92   object,
93   pointer_default(unique)
94 ]
95 interface ISensLogon2 : IDispatch
96 {
97     HRESULT Logon(
98         [in] BSTR bstrUserName,
99         [in] DWORD dwSessionId );
100     HRESULT Logoff(
101         [in] BSTR bstrUserName,
102         [in] DWORD dwSessionId );
103     HRESULT SessionDisconnect(
104         [in] BSTR bstrUserName,
105         [in] DWORD dwSessionId );
106     HRESULT SessionReconnect(
107         [in] BSTR bstrUserName,
108         [in] DWORD dwSessionId );
109     HRESULT PostShell(
110         [in] BSTR bstrUserName,
111         [in] DWORD dwSessionId );
112 }