ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/inspectable.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 4903 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

# Content
1 /*** Autogenerated by WIDL 6.4 from include/inspectable.idl - Do not edit ***/
2
3 #ifdef _WIN32
4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
6 #endif
7 #include <rpc.h>
8 #include <rpcndr.h>
9 #endif
10
11 #ifndef COM_NO_WINDOWS_H
12 #include <windows.h>
13 #include <ole2.h>
14 #endif
15
16 #ifndef __inspectable_h__
17 #define __inspectable_h__
18
19 /* Forward declarations */
20
21 #ifndef __IInspectable_FWD_DEFINED__
22 #define __IInspectable_FWD_DEFINED__
23 typedef interface IInspectable IInspectable;
24 #ifdef __cplusplus
25 interface IInspectable;
26 #endif /* __cplusplus */
27 #endif
28
29 /* Headers for imported files */
30
31 #include <wtypes.h>
32 #include <hstring.h>
33 #include <unknwn.h>
34
35 #ifdef __cplusplus
36 extern "C" {
37 #endif
38
39 typedef enum TrustLevel {
40 BaseTrust = 0,
41 PartialTrust = 1,
42 FullTrust = 2
43 } TrustLevel;
44 /*****************************************************************************
45 * IInspectable interface
46 */
47 #ifndef __IInspectable_INTERFACE_DEFINED__
48 #define __IInspectable_INTERFACE_DEFINED__
49
50 DEFINE_GUID(IID_IInspectable, 0xaf86e2e0, 0xb12d, 0x4c6a, 0x9c,0x5a, 0xd7,0xaa,0x65,0x10,0x1e,0x90);
51 #if defined(__cplusplus) && !defined(CINTERFACE)
52 MIDL_INTERFACE("af86e2e0-b12d-4c6a-9c5a-d7aa65101e90")
53 IInspectable : public IUnknown
54 {
55 virtual HRESULT STDMETHODCALLTYPE GetIids(
56 ULONG *iidCount,
57 IID **iids) = 0;
58
59 virtual HRESULT STDMETHODCALLTYPE GetRuntimeClassName(
60 HSTRING *className) = 0;
61
62 virtual HRESULT STDMETHODCALLTYPE GetTrustLevel(
63 TrustLevel *trustLevel) = 0;
64
65 };
66 #ifdef __CRT_UUID_DECL
67 __CRT_UUID_DECL(IInspectable, 0xaf86e2e0, 0xb12d, 0x4c6a, 0x9c,0x5a, 0xd7,0xaa,0x65,0x10,0x1e,0x90)
68 #endif
69 #else
70 typedef struct IInspectableVtbl {
71 BEGIN_INTERFACE
72
73 /*** IUnknown methods ***/
74 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
75 IInspectable *This,
76 REFIID riid,
77 void **ppvObject);
78
79 ULONG (STDMETHODCALLTYPE *AddRef)(
80 IInspectable *This);
81
82 ULONG (STDMETHODCALLTYPE *Release)(
83 IInspectable *This);
84
85 /*** IInspectable methods ***/
86 HRESULT (STDMETHODCALLTYPE *GetIids)(
87 IInspectable *This,
88 ULONG *iidCount,
89 IID **iids);
90
91 HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
92 IInspectable *This,
93 HSTRING *className);
94
95 HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
96 IInspectable *This,
97 TrustLevel *trustLevel);
98
99 END_INTERFACE
100 } IInspectableVtbl;
101
102 interface IInspectable {
103 CONST_VTBL IInspectableVtbl* lpVtbl;
104 };
105
106 #ifdef COBJMACROS
107 #ifndef WIDL_C_INLINE_WRAPPERS
108 /*** IUnknown methods ***/
109 #define IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
110 #define IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
111 #define IInspectable_Release(This) (This)->lpVtbl->Release(This)
112 /*** IInspectable methods ***/
113 #define IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
114 #define IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
115 #define IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
116 #else
117 /*** IUnknown methods ***/
118 static FORCEINLINE HRESULT IInspectable_QueryInterface(IInspectable* This,REFIID riid,void **ppvObject) {
119 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
120 }
121 static FORCEINLINE ULONG IInspectable_AddRef(IInspectable* This) {
122 return This->lpVtbl->AddRef(This);
123 }
124 static FORCEINLINE ULONG IInspectable_Release(IInspectable* This) {
125 return This->lpVtbl->Release(This);
126 }
127 /*** IInspectable methods ***/
128 static FORCEINLINE HRESULT IInspectable_GetIids(IInspectable* This,ULONG *iidCount,IID **iids) {
129 return This->lpVtbl->GetIids(This,iidCount,iids);
130 }
131 static FORCEINLINE HRESULT IInspectable_GetRuntimeClassName(IInspectable* This,HSTRING *className) {
132 return This->lpVtbl->GetRuntimeClassName(This,className);
133 }
134 static FORCEINLINE HRESULT IInspectable_GetTrustLevel(IInspectable* This,TrustLevel *trustLevel) {
135 return This->lpVtbl->GetTrustLevel(This,trustLevel);
136 }
137 #endif
138 #endif
139
140 #endif
141
142
143 #endif /* __IInspectable_INTERFACE_DEFINED__ */
144
145
146 #if !defined (CINTERFACE) && defined (__cplusplus)
147 extern "C++" {
148 template<typename T> void **IID_INS_ARGS_internal (T **p) {
149 static_cast<IInspectable *> (*p);
150 return reinterpret_cast<void **> (p);
151 }
152 }
153
154 #define IID_INS_ARGS(P) __uuidof(**(P)), IID_INS_ARGS_internal(P)
155 #endif
156 /* Begin additional prototypes for all interfaces */
157
158 ULONG __RPC_USER HSTRING_UserSize (ULONG *, ULONG, HSTRING *);
159 unsigned char * __RPC_USER HSTRING_UserMarshal (ULONG *, unsigned char *, HSTRING *);
160 unsigned char * __RPC_USER HSTRING_UserUnmarshal(ULONG *, unsigned char *, HSTRING *);
161 void __RPC_USER HSTRING_UserFree (ULONG *, HSTRING *);
162
163 /* End additional prototypes */
164
165 #ifdef __cplusplus
166 }
167 #endif
168
169 #endif /* __inspectable_h__ */