include: Add IProvideRuntimeContext and a few annotations.
[wine] / include / wmistr.h
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 #ifndef _WMISTR_
20 #define _WMISTR_
21
22 typedef enum
23 {
24     WMI_GET_ALL_DATA = 0,
25     WMI_GET_SINGLE_INSTANCE = 1,
26     WMI_SET_SINGLE_INSTANCE = 2,
27     WMI_SET_SINGLE_ITEM = 3,
28     WMI_ENABLE_EVENTS = 4,
29     WMI_DISABLE_EVENTS = 5,
30     WMI_ENABLE_CONNECTION = 6,
31     WMI_DISABLE_CONNECTION = 7,
32     WMI_REGINFO = 8,
33     WMI_EXECUTE_METHOD = 9,
34 } WMIDPREQUESTCODE;
35
36 typedef struct _WNODE_HEADER
37 {
38     ULONG BufferSize;
39     ULONG ProvicerId;
40     union
41     {
42         ULONG64 HistoricalContext;
43         struct
44         {
45             ULONG Version;
46             ULONG Linkage;
47         } DUMMYSTRUCTNAME;
48
49     } DUMMYUNIONNAME;
50     union
51     {
52         HANDLE KernelHandle;
53         LARGE_INTEGER TimeStamp;
54     } DUMMYUNIONNAME2;
55     GUID Guid;
56     ULONG ClientContext;
57     ULONG Flags;
58 } WNODE_HEADER, *PWNODE_HEADER;
59
60 #endif /* _WMISTR_ */