Sync with trunk (r48545)
[reactos.git] / include / psdk / 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, 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 uuid(d597bab1-5b9f-11d1-8dd2-00aa004abd5e),
32 pointer_default(unique)
33 ]
34 interface ISensNetwork : IDispatch
35 {
36 HRESULT ConnectionMade(
37 [in] BSTR bstrConnection,
38 [in] ULONG ulType,
39 [in] LPSENS_QOCINFO lpQOCInfo );
40 HRESULT ConnectionMadeNoQOCInfo(
41 [in] BSTR bstrConnection,
42 [in] ULONG ulType );
43 HRESULT ConnectionLost(
44 [in] BSTR bstrConnection,
45 [in] ULONG ulType );
46 HRESULT DestinationReachable(
47 [in] BSTR bstrDestination,
48 [in] BSTR bstrConnection,
49 [in] ULONG ulType,
50 [in] LPSENS_QOCINFO lpQOCInfo );
51 HRESULT DestinationReachableNoQOCInfo(
52 [in] BSTR bstrDestination,
53 [in] BSTR bstrConnection,
54 [in] ULONG ulType );
55 }
56
57 [
58 object,
59 uuid(d597bab2-5b9f-11d1-8dd2-00aa004abd5e),
60 pointer_default(unique)
61 ]
62 interface ISensOnNow : IDispatch
63 {
64 HRESULT OnAcPower( void );
65 HRESULT OnBatteryPower(
66 [in] DWORD dwBatteryLifePercent );
67 HRESULT BatteryLow(
68 [in] DWORD dwBatteryLifePercent );
69 }
70
71 [
72 object,
73 uuid(d597bab3-5b9f-11d1-8dd2-00aa004abd5e),
74 pointer_default(unique)
75 ]
76 interface ISensLogon : IDispatch
77 {
78 HRESULT Logon(
79 [in] BSTR bstrUserName );
80 HRESULT Logoff(
81 [in] BSTR bstrUserName );
82 HRESULT StartShell(
83 [in] BSTR bstrUserName );
84 HRESULT DisplayLock(
85 [in] BSTR bstrUserName );
86 HRESULT DisplayUnlock(
87 [in] BSTR bstrUserName );
88 HRESULT StartScreenSaver(
89 [in] BSTR bstrUserName );
90 HRESULT StopScreenSaver(
91 [in] BSTR bstrUserName );
92 }
93
94 [
95 object,
96 uuid(d597bab4-5b9f-11d1-8dd2-00aa004abd5e),
97 pointer_default(unique)
98 ]
99 interface ISensLogon2 : IDispatch
100 {
101 HRESULT Logon(
102 [in] BSTR bstrUserName,
103 [in] DWORD dwSessionId );
104 HRESULT Logoff(
105 [in] BSTR bstrUserName,
106 [in] DWORD dwSessionId );
107 HRESULT SessionDisconnect(
108 [in] BSTR bstrUserName,
109 [in] DWORD dwSessionId );
110 HRESULT SessionReconnect(
111 [in] BSTR bstrUserName,
112 [in] DWORD dwSessionId );
113 HRESULT PostShell(
114 [in] BSTR bstrUserName,
115 [in] DWORD dwSessionId );
116 }