]> git.proxmox.com Git - rustc.git/blame - vendor/windows/src/Windows/Win32/System/Com/Events/impl.rs
New upstream version 1.70.0+dfsg1
[rustc.git] / vendor / windows / src / Windows / Win32 / System / Com / Events / impl.rs
CommitLineData
353b0b11
FG
1#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"implement\"`*"]
2pub trait IDontSupportEventSubscription_Impl: Sized {}
3impl ::windows::core::RuntimeName for IDontSupportEventSubscription {}
4impl IDontSupportEventSubscription_Vtbl {
5 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IDontSupportEventSubscription_Impl, const OFFSET: isize>() -> IDontSupportEventSubscription_Vtbl {
6 Self { base__: ::windows::core::IUnknown_Vtbl::new::<Identity, OFFSET>() }
7 }
8 pub fn matches(iid: &windows::core::GUID) -> bool {
9 iid == &<IDontSupportEventSubscription as ::windows::core::ComInterface>::IID
10 }
11}
12#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"implement\"`*"]
13pub trait IEnumEventObject_Impl: Sized {
14 fn Clone(&self) -> ::windows::core::Result<IEnumEventObject>;
15 fn Next(&self, creqelem: u32, ppinterface: *mut ::core::option::Option<::windows::core::IUnknown>, cretelem: *mut u32) -> ::windows::core::Result<()>;
16 fn Reset(&self) -> ::windows::core::Result<()>;
17 fn Skip(&self, cskipelem: u32) -> ::windows::core::Result<()>;
18}
19impl ::windows::core::RuntimeName for IEnumEventObject {}
20impl IEnumEventObject_Vtbl {
21 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEnumEventObject_Impl, const OFFSET: isize>() -> IEnumEventObject_Vtbl {
22 unsafe extern "system" fn Clone<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEnumEventObject_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, ppinterface: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
23 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
24 let this = (*this).get_impl();
25 match this.Clone() {
26 ::core::result::Result::Ok(ok__) => {
27 ::core::ptr::write(ppinterface, ::core::mem::transmute(ok__));
28 ::windows::core::HRESULT(0)
29 }
30 ::core::result::Result::Err(err) => err.into(),
31 }
32 }
33 unsafe extern "system" fn Next<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEnumEventObject_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, creqelem: u32, ppinterface: *mut *mut ::core::ffi::c_void, cretelem: *mut u32) -> ::windows::core::HRESULT {
34 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
35 let this = (*this).get_impl();
36 this.Next(::core::mem::transmute_copy(&creqelem), ::core::mem::transmute_copy(&ppinterface), ::core::mem::transmute_copy(&cretelem)).into()
37 }
38 unsafe extern "system" fn Reset<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEnumEventObject_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
39 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
40 let this = (*this).get_impl();
41 this.Reset().into()
42 }
43 unsafe extern "system" fn Skip<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEnumEventObject_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, cskipelem: u32) -> ::windows::core::HRESULT {
44 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
45 let this = (*this).get_impl();
46 this.Skip(::core::mem::transmute_copy(&cskipelem)).into()
47 }
48 Self {
49 base__: ::windows::core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
50 Clone: Clone::<Identity, Impl, OFFSET>,
51 Next: Next::<Identity, Impl, OFFSET>,
52 Reset: Reset::<Identity, Impl, OFFSET>,
53 Skip: Skip::<Identity, Impl, OFFSET>,
54 }
55 }
56 pub fn matches(iid: &windows::core::GUID) -> bool {
57 iid == &<IEnumEventObject as ::windows::core::ComInterface>::IID
58 }
59}
60#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
61#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
62pub trait IEventClass_Impl: Sized + super::IDispatch_Impl {
63 fn EventClassID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
64 fn SetEventClassID(&self, bstreventclassid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
65 fn EventClassName(&self) -> ::windows::core::Result<::windows::core::BSTR>;
66 fn SetEventClassName(&self, bstreventclassname: &::windows::core::BSTR) -> ::windows::core::Result<()>;
67 fn OwnerSID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
68 fn SetOwnerSID(&self, bstrownersid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
69 fn FiringInterfaceID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
70 fn SetFiringInterfaceID(&self, bstrfiringinterfaceid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
71 fn Description(&self) -> ::windows::core::Result<::windows::core::BSTR>;
72 fn SetDescription(&self, bstrdescription: &::windows::core::BSTR) -> ::windows::core::Result<()>;
73 fn CustomConfigCLSID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
74 fn SetCustomConfigCLSID(&self, bstrcustomconfigclsid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
75 fn TypeLib(&self) -> ::windows::core::Result<::windows::core::BSTR>;
76 fn SetTypeLib(&self, bstrtypelib: &::windows::core::BSTR) -> ::windows::core::Result<()>;
77}
78#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
79impl ::windows::core::RuntimeName for IEventClass {}
80#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
81impl IEventClass_Vtbl {
82 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>() -> IEventClass_Vtbl {
83 unsafe extern "system" fn EventClassID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstreventclassid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
84 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
85 let this = (*this).get_impl();
86 match this.EventClassID() {
87 ::core::result::Result::Ok(ok__) => {
88 ::core::ptr::write(pbstreventclassid, ::core::mem::transmute(ok__));
89 ::windows::core::HRESULT(0)
90 }
91 ::core::result::Result::Err(err) => err.into(),
92 }
93 }
94 unsafe extern "system" fn SetEventClassID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstreventclassid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
95 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
96 let this = (*this).get_impl();
97 this.SetEventClassID(::core::mem::transmute(&bstreventclassid)).into()
98 }
99 unsafe extern "system" fn EventClassName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstreventclassname: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
100 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
101 let this = (*this).get_impl();
102 match this.EventClassName() {
103 ::core::result::Result::Ok(ok__) => {
104 ::core::ptr::write(pbstreventclassname, ::core::mem::transmute(ok__));
105 ::windows::core::HRESULT(0)
106 }
107 ::core::result::Result::Err(err) => err.into(),
108 }
109 }
110 unsafe extern "system" fn SetEventClassName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstreventclassname: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
111 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
112 let this = (*this).get_impl();
113 this.SetEventClassName(::core::mem::transmute(&bstreventclassname)).into()
114 }
115 unsafe extern "system" fn OwnerSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrownersid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
116 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
117 let this = (*this).get_impl();
118 match this.OwnerSID() {
119 ::core::result::Result::Ok(ok__) => {
120 ::core::ptr::write(pbstrownersid, ::core::mem::transmute(ok__));
121 ::windows::core::HRESULT(0)
122 }
123 ::core::result::Result::Err(err) => err.into(),
124 }
125 }
126 unsafe extern "system" fn SetOwnerSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrownersid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
127 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
128 let this = (*this).get_impl();
129 this.SetOwnerSID(::core::mem::transmute(&bstrownersid)).into()
130 }
131 unsafe extern "system" fn FiringInterfaceID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrfiringinterfaceid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
132 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
133 let this = (*this).get_impl();
134 match this.FiringInterfaceID() {
135 ::core::result::Result::Ok(ok__) => {
136 ::core::ptr::write(pbstrfiringinterfaceid, ::core::mem::transmute(ok__));
137 ::windows::core::HRESULT(0)
138 }
139 ::core::result::Result::Err(err) => err.into(),
140 }
141 }
142 unsafe extern "system" fn SetFiringInterfaceID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrfiringinterfaceid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
143 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
144 let this = (*this).get_impl();
145 this.SetFiringInterfaceID(::core::mem::transmute(&bstrfiringinterfaceid)).into()
146 }
147 unsafe extern "system" fn Description<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrdescription: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
148 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
149 let this = (*this).get_impl();
150 match this.Description() {
151 ::core::result::Result::Ok(ok__) => {
152 ::core::ptr::write(pbstrdescription, ::core::mem::transmute(ok__));
153 ::windows::core::HRESULT(0)
154 }
155 ::core::result::Result::Err(err) => err.into(),
156 }
157 }
158 unsafe extern "system" fn SetDescription<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrdescription: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
159 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
160 let this = (*this).get_impl();
161 this.SetDescription(::core::mem::transmute(&bstrdescription)).into()
162 }
163 unsafe extern "system" fn CustomConfigCLSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrcustomconfigclsid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
164 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
165 let this = (*this).get_impl();
166 match this.CustomConfigCLSID() {
167 ::core::result::Result::Ok(ok__) => {
168 ::core::ptr::write(pbstrcustomconfigclsid, ::core::mem::transmute(ok__));
169 ::windows::core::HRESULT(0)
170 }
171 ::core::result::Result::Err(err) => err.into(),
172 }
173 }
174 unsafe extern "system" fn SetCustomConfigCLSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrcustomconfigclsid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
175 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
176 let this = (*this).get_impl();
177 this.SetCustomConfigCLSID(::core::mem::transmute(&bstrcustomconfigclsid)).into()
178 }
179 unsafe extern "system" fn TypeLib<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrtypelib: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
180 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
181 let this = (*this).get_impl();
182 match this.TypeLib() {
183 ::core::result::Result::Ok(ok__) => {
184 ::core::ptr::write(pbstrtypelib, ::core::mem::transmute(ok__));
185 ::windows::core::HRESULT(0)
186 }
187 ::core::result::Result::Err(err) => err.into(),
188 }
189 }
190 unsafe extern "system" fn SetTypeLib<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrtypelib: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
191 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
192 let this = (*this).get_impl();
193 this.SetTypeLib(::core::mem::transmute(&bstrtypelib)).into()
194 }
195 Self {
196 base__: super::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(),
197 EventClassID: EventClassID::<Identity, Impl, OFFSET>,
198 SetEventClassID: SetEventClassID::<Identity, Impl, OFFSET>,
199 EventClassName: EventClassName::<Identity, Impl, OFFSET>,
200 SetEventClassName: SetEventClassName::<Identity, Impl, OFFSET>,
201 OwnerSID: OwnerSID::<Identity, Impl, OFFSET>,
202 SetOwnerSID: SetOwnerSID::<Identity, Impl, OFFSET>,
203 FiringInterfaceID: FiringInterfaceID::<Identity, Impl, OFFSET>,
204 SetFiringInterfaceID: SetFiringInterfaceID::<Identity, Impl, OFFSET>,
205 Description: Description::<Identity, Impl, OFFSET>,
206 SetDescription: SetDescription::<Identity, Impl, OFFSET>,
207 CustomConfigCLSID: CustomConfigCLSID::<Identity, Impl, OFFSET>,
208 SetCustomConfigCLSID: SetCustomConfigCLSID::<Identity, Impl, OFFSET>,
209 TypeLib: TypeLib::<Identity, Impl, OFFSET>,
210 SetTypeLib: SetTypeLib::<Identity, Impl, OFFSET>,
211 }
212 }
213 pub fn matches(iid: &windows::core::GUID) -> bool {
214 iid == &<IEventClass as ::windows::core::ComInterface>::IID || iid == &<super::IDispatch as ::windows::core::ComInterface>::IID
215 }
216}
217#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
218#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
219pub trait IEventClass2_Impl: Sized + IEventClass_Impl {
220 fn PublisherID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
221 fn SetPublisherID(&self, bstrpublisherid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
222 fn MultiInterfacePublisherFilterCLSID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
223 fn SetMultiInterfacePublisherFilterCLSID(&self, bstrpubfilclsid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
224 fn AllowInprocActivation(&self) -> ::windows::core::Result<super::super::super::Foundation::BOOL>;
225 fn SetAllowInprocActivation(&self, fallowinprocactivation: super::super::super::Foundation::BOOL) -> ::windows::core::Result<()>;
226 fn FireInParallel(&self) -> ::windows::core::Result<super::super::super::Foundation::BOOL>;
227 fn SetFireInParallel(&self, ffireinparallel: super::super::super::Foundation::BOOL) -> ::windows::core::Result<()>;
228}
229#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
230impl ::windows::core::RuntimeName for IEventClass2 {}
231#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
232impl IEventClass2_Vtbl {
233 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass2_Impl, const OFFSET: isize>() -> IEventClass2_Vtbl {
234 unsafe extern "system" fn PublisherID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrpublisherid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
235 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
236 let this = (*this).get_impl();
237 match this.PublisherID() {
238 ::core::result::Result::Ok(ok__) => {
239 ::core::ptr::write(pbstrpublisherid, ::core::mem::transmute(ok__));
240 ::windows::core::HRESULT(0)
241 }
242 ::core::result::Result::Err(err) => err.into(),
243 }
244 }
245 unsafe extern "system" fn SetPublisherID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpublisherid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
246 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
247 let this = (*this).get_impl();
248 this.SetPublisherID(::core::mem::transmute(&bstrpublisherid)).into()
249 }
250 unsafe extern "system" fn MultiInterfacePublisherFilterCLSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrpubfilclsid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
251 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
252 let this = (*this).get_impl();
253 match this.MultiInterfacePublisherFilterCLSID() {
254 ::core::result::Result::Ok(ok__) => {
255 ::core::ptr::write(pbstrpubfilclsid, ::core::mem::transmute(ok__));
256 ::windows::core::HRESULT(0)
257 }
258 ::core::result::Result::Err(err) => err.into(),
259 }
260 }
261 unsafe extern "system" fn SetMultiInterfacePublisherFilterCLSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpubfilclsid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
262 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
263 let this = (*this).get_impl();
264 this.SetMultiInterfacePublisherFilterCLSID(::core::mem::transmute(&bstrpubfilclsid)).into()
265 }
266 unsafe extern "system" fn AllowInprocActivation<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pfallowinprocactivation: *mut super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
267 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
268 let this = (*this).get_impl();
269 match this.AllowInprocActivation() {
270 ::core::result::Result::Ok(ok__) => {
271 ::core::ptr::write(pfallowinprocactivation, ::core::mem::transmute(ok__));
272 ::windows::core::HRESULT(0)
273 }
274 ::core::result::Result::Err(err) => err.into(),
275 }
276 }
277 unsafe extern "system" fn SetAllowInprocActivation<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, fallowinprocactivation: super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
278 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
279 let this = (*this).get_impl();
280 this.SetAllowInprocActivation(::core::mem::transmute_copy(&fallowinprocactivation)).into()
281 }
282 unsafe extern "system" fn FireInParallel<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pffireinparallel: *mut super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
283 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
284 let this = (*this).get_impl();
285 match this.FireInParallel() {
286 ::core::result::Result::Ok(ok__) => {
287 ::core::ptr::write(pffireinparallel, ::core::mem::transmute(ok__));
288 ::windows::core::HRESULT(0)
289 }
290 ::core::result::Result::Err(err) => err.into(),
291 }
292 }
293 unsafe extern "system" fn SetFireInParallel<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventClass2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, ffireinparallel: super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
294 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
295 let this = (*this).get_impl();
296 this.SetFireInParallel(::core::mem::transmute_copy(&ffireinparallel)).into()
297 }
298 Self {
299 base__: IEventClass_Vtbl::new::<Identity, Impl, OFFSET>(),
300 PublisherID: PublisherID::<Identity, Impl, OFFSET>,
301 SetPublisherID: SetPublisherID::<Identity, Impl, OFFSET>,
302 MultiInterfacePublisherFilterCLSID: MultiInterfacePublisherFilterCLSID::<Identity, Impl, OFFSET>,
303 SetMultiInterfacePublisherFilterCLSID: SetMultiInterfacePublisherFilterCLSID::<Identity, Impl, OFFSET>,
304 AllowInprocActivation: AllowInprocActivation::<Identity, Impl, OFFSET>,
305 SetAllowInprocActivation: SetAllowInprocActivation::<Identity, Impl, OFFSET>,
306 FireInParallel: FireInParallel::<Identity, Impl, OFFSET>,
307 SetFireInParallel: SetFireInParallel::<Identity, Impl, OFFSET>,
308 }
309 }
310 pub fn matches(iid: &windows::core::GUID) -> bool {
311 iid == &<IEventClass2 as ::windows::core::ComInterface>::IID || iid == &<super::IDispatch as ::windows::core::ComInterface>::IID || iid == &<IEventClass as ::windows::core::ComInterface>::IID
312 }
313}
314#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
315#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
316pub trait IEventControl_Impl: Sized + super::IDispatch_Impl {
317 fn SetPublisherFilter(&self, methodname: &::windows::core::BSTR, ppublisherfilter: ::core::option::Option<&IPublisherFilter>) -> ::windows::core::Result<()>;
318 fn AllowInprocActivation(&self) -> ::windows::core::Result<super::super::super::Foundation::BOOL>;
319 fn SetAllowInprocActivation(&self, fallowinprocactivation: super::super::super::Foundation::BOOL) -> ::windows::core::Result<()>;
320 fn GetSubscriptions(&self, methodname: &::windows::core::BSTR, optionalcriteria: &::windows::core::BSTR, optionalerrorindex: *const i32) -> ::windows::core::Result<IEventObjectCollection>;
321 fn SetDefaultQuery(&self, methodname: &::windows::core::BSTR, criteria: &::windows::core::BSTR) -> ::windows::core::Result<i32>;
322}
323#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
324impl ::windows::core::RuntimeName for IEventControl {}
325#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
326impl IEventControl_Vtbl {
327 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventControl_Impl, const OFFSET: isize>() -> IEventControl_Vtbl {
328 unsafe extern "system" fn SetPublisherFilter<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, methodname: ::std::mem::MaybeUninit<::windows::core::BSTR>, ppublisherfilter: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
329 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
330 let this = (*this).get_impl();
331 this.SetPublisherFilter(::core::mem::transmute(&methodname), ::windows::core::from_raw_borrowed(&ppublisherfilter)).into()
332 }
333 unsafe extern "system" fn AllowInprocActivation<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pfallowinprocactivation: *mut super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
334 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
335 let this = (*this).get_impl();
336 match this.AllowInprocActivation() {
337 ::core::result::Result::Ok(ok__) => {
338 ::core::ptr::write(pfallowinprocactivation, ::core::mem::transmute(ok__));
339 ::windows::core::HRESULT(0)
340 }
341 ::core::result::Result::Err(err) => err.into(),
342 }
343 }
344 unsafe extern "system" fn SetAllowInprocActivation<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, fallowinprocactivation: super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
345 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
346 let this = (*this).get_impl();
347 this.SetAllowInprocActivation(::core::mem::transmute_copy(&fallowinprocactivation)).into()
348 }
349 unsafe extern "system" fn GetSubscriptions<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, methodname: ::std::mem::MaybeUninit<::windows::core::BSTR>, optionalcriteria: ::std::mem::MaybeUninit<::windows::core::BSTR>, optionalerrorindex: *const i32, ppcollection: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
350 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
351 let this = (*this).get_impl();
352 match this.GetSubscriptions(::core::mem::transmute(&methodname), ::core::mem::transmute(&optionalcriteria), ::core::mem::transmute_copy(&optionalerrorindex)) {
353 ::core::result::Result::Ok(ok__) => {
354 ::core::ptr::write(ppcollection, ::core::mem::transmute(ok__));
355 ::windows::core::HRESULT(0)
356 }
357 ::core::result::Result::Err(err) => err.into(),
358 }
359 }
360 unsafe extern "system" fn SetDefaultQuery<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, methodname: ::std::mem::MaybeUninit<::windows::core::BSTR>, criteria: ::std::mem::MaybeUninit<::windows::core::BSTR>, errorindex: *mut i32) -> ::windows::core::HRESULT {
361 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
362 let this = (*this).get_impl();
363 match this.SetDefaultQuery(::core::mem::transmute(&methodname), ::core::mem::transmute(&criteria)) {
364 ::core::result::Result::Ok(ok__) => {
365 ::core::ptr::write(errorindex, ::core::mem::transmute(ok__));
366 ::windows::core::HRESULT(0)
367 }
368 ::core::result::Result::Err(err) => err.into(),
369 }
370 }
371 Self {
372 base__: super::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(),
373 SetPublisherFilter: SetPublisherFilter::<Identity, Impl, OFFSET>,
374 AllowInprocActivation: AllowInprocActivation::<Identity, Impl, OFFSET>,
375 SetAllowInprocActivation: SetAllowInprocActivation::<Identity, Impl, OFFSET>,
376 GetSubscriptions: GetSubscriptions::<Identity, Impl, OFFSET>,
377 SetDefaultQuery: SetDefaultQuery::<Identity, Impl, OFFSET>,
378 }
379 }
380 pub fn matches(iid: &windows::core::GUID) -> bool {
381 iid == &<IEventControl as ::windows::core::ComInterface>::IID || iid == &<super::IDispatch as ::windows::core::ComInterface>::IID
382 }
383}
384#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"implement\"`*"]
385pub trait IEventObjectChange_Impl: Sized {
386 fn ChangedSubscription(&self, changetype: EOC_ChangeType, bstrsubscriptionid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
387 fn ChangedEventClass(&self, changetype: EOC_ChangeType, bstreventclassid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
388 fn ChangedPublisher(&self, changetype: EOC_ChangeType, bstrpublisherid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
389}
390impl ::windows::core::RuntimeName for IEventObjectChange {}
391impl IEventObjectChange_Vtbl {
392 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectChange_Impl, const OFFSET: isize>() -> IEventObjectChange_Vtbl {
393 unsafe extern "system" fn ChangedSubscription<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectChange_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, changetype: EOC_ChangeType, bstrsubscriptionid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
394 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
395 let this = (*this).get_impl();
396 this.ChangedSubscription(::core::mem::transmute_copy(&changetype), ::core::mem::transmute(&bstrsubscriptionid)).into()
397 }
398 unsafe extern "system" fn ChangedEventClass<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectChange_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, changetype: EOC_ChangeType, bstreventclassid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
399 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
400 let this = (*this).get_impl();
401 this.ChangedEventClass(::core::mem::transmute_copy(&changetype), ::core::mem::transmute(&bstreventclassid)).into()
402 }
403 unsafe extern "system" fn ChangedPublisher<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectChange_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, changetype: EOC_ChangeType, bstrpublisherid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
404 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
405 let this = (*this).get_impl();
406 this.ChangedPublisher(::core::mem::transmute_copy(&changetype), ::core::mem::transmute(&bstrpublisherid)).into()
407 }
408 Self {
409 base__: ::windows::core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
410 ChangedSubscription: ChangedSubscription::<Identity, Impl, OFFSET>,
411 ChangedEventClass: ChangedEventClass::<Identity, Impl, OFFSET>,
412 ChangedPublisher: ChangedPublisher::<Identity, Impl, OFFSET>,
413 }
414 }
415 pub fn matches(iid: &windows::core::GUID) -> bool {
416 iid == &<IEventObjectChange as ::windows::core::ComInterface>::IID
417 }
418}
419#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"implement\"`*"]
420pub trait IEventObjectChange2_Impl: Sized {
421 fn ChangedSubscription(&self, pinfo: *const COMEVENTSYSCHANGEINFO) -> ::windows::core::Result<()>;
422 fn ChangedEventClass(&self, pinfo: *const COMEVENTSYSCHANGEINFO) -> ::windows::core::Result<()>;
423}
424impl ::windows::core::RuntimeName for IEventObjectChange2 {}
425impl IEventObjectChange2_Vtbl {
426 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectChange2_Impl, const OFFSET: isize>() -> IEventObjectChange2_Vtbl {
427 unsafe extern "system" fn ChangedSubscription<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectChange2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pinfo: *const COMEVENTSYSCHANGEINFO) -> ::windows::core::HRESULT {
428 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
429 let this = (*this).get_impl();
430 this.ChangedSubscription(::core::mem::transmute_copy(&pinfo)).into()
431 }
432 unsafe extern "system" fn ChangedEventClass<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectChange2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pinfo: *const COMEVENTSYSCHANGEINFO) -> ::windows::core::HRESULT {
433 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
434 let this = (*this).get_impl();
435 this.ChangedEventClass(::core::mem::transmute_copy(&pinfo)).into()
436 }
437 Self {
438 base__: ::windows::core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
439 ChangedSubscription: ChangedSubscription::<Identity, Impl, OFFSET>,
440 ChangedEventClass: ChangedEventClass::<Identity, Impl, OFFSET>,
441 }
442 }
443 pub fn matches(iid: &windows::core::GUID) -> bool {
444 iid == &<IEventObjectChange2 as ::windows::core::ComInterface>::IID
445 }
446}
447#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
448#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
449pub trait IEventObjectCollection_Impl: Sized + super::IDispatch_Impl {
450 fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown>;
451 fn get_Item(&self, objectid: &::windows::core::BSTR) -> ::windows::core::Result<super::VARIANT>;
452 fn NewEnum(&self) -> ::windows::core::Result<IEnumEventObject>;
453 fn Count(&self) -> ::windows::core::Result<i32>;
454 fn Add(&self, item: *const super::VARIANT, objectid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
455 fn Remove(&self, objectid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
456}
457#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
458impl ::windows::core::RuntimeName for IEventObjectCollection {}
459#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
460impl IEventObjectCollection_Vtbl {
461 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectCollection_Impl, const OFFSET: isize>() -> IEventObjectCollection_Vtbl {
462 unsafe extern "system" fn _NewEnum<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectCollection_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, ppunkenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
463 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
464 let this = (*this).get_impl();
465 match this._NewEnum() {
466 ::core::result::Result::Ok(ok__) => {
467 ::core::ptr::write(ppunkenum, ::core::mem::transmute(ok__));
468 ::windows::core::HRESULT(0)
469 }
470 ::core::result::Result::Err(err) => err.into(),
471 }
472 }
473 unsafe extern "system" fn get_Item<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectCollection_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, objectid: ::std::mem::MaybeUninit<::windows::core::BSTR>, pitem: *mut super::VARIANT) -> ::windows::core::HRESULT {
474 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
475 let this = (*this).get_impl();
476 match this.get_Item(::core::mem::transmute(&objectid)) {
477 ::core::result::Result::Ok(ok__) => {
478 ::core::ptr::write(pitem, ::core::mem::transmute(ok__));
479 ::windows::core::HRESULT(0)
480 }
481 ::core::result::Result::Err(err) => err.into(),
482 }
483 }
484 unsafe extern "system" fn NewEnum<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectCollection_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
485 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
486 let this = (*this).get_impl();
487 match this.NewEnum() {
488 ::core::result::Result::Ok(ok__) => {
489 ::core::ptr::write(ppenum, ::core::mem::transmute(ok__));
490 ::windows::core::HRESULT(0)
491 }
492 ::core::result::Result::Err(err) => err.into(),
493 }
494 }
495 unsafe extern "system" fn Count<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectCollection_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pcount: *mut i32) -> ::windows::core::HRESULT {
496 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
497 let this = (*this).get_impl();
498 match this.Count() {
499 ::core::result::Result::Ok(ok__) => {
500 ::core::ptr::write(pcount, ::core::mem::transmute(ok__));
501 ::windows::core::HRESULT(0)
502 }
503 ::core::result::Result::Err(err) => err.into(),
504 }
505 }
506 unsafe extern "system" fn Add<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectCollection_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, item: *const super::VARIANT, objectid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
507 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
508 let this = (*this).get_impl();
509 this.Add(::core::mem::transmute_copy(&item), ::core::mem::transmute(&objectid)).into()
510 }
511 unsafe extern "system" fn Remove<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventObjectCollection_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, objectid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
512 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
513 let this = (*this).get_impl();
514 this.Remove(::core::mem::transmute(&objectid)).into()
515 }
516 Self {
517 base__: super::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(),
518 _NewEnum: _NewEnum::<Identity, Impl, OFFSET>,
519 get_Item: get_Item::<Identity, Impl, OFFSET>,
520 NewEnum: NewEnum::<Identity, Impl, OFFSET>,
521 Count: Count::<Identity, Impl, OFFSET>,
522 Add: Add::<Identity, Impl, OFFSET>,
523 Remove: Remove::<Identity, Impl, OFFSET>,
524 }
525 }
526 pub fn matches(iid: &windows::core::GUID) -> bool {
527 iid == &<IEventObjectCollection as ::windows::core::ComInterface>::IID || iid == &<super::IDispatch as ::windows::core::ComInterface>::IID
528 }
529}
530#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
531#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
532pub trait IEventProperty_Impl: Sized + super::IDispatch_Impl {
533 fn Name(&self) -> ::windows::core::Result<::windows::core::BSTR>;
534 fn SetName(&self, propertyname: &::windows::core::BSTR) -> ::windows::core::Result<()>;
535 fn Value(&self) -> ::windows::core::Result<super::VARIANT>;
536 fn SetValue(&self, propertyvalue: *const super::VARIANT) -> ::windows::core::Result<()>;
537}
538#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
539impl ::windows::core::RuntimeName for IEventProperty {}
540#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
541impl IEventProperty_Vtbl {
542 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventProperty_Impl, const OFFSET: isize>() -> IEventProperty_Vtbl {
543 unsafe extern "system" fn Name<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventProperty_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, propertyname: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
544 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
545 let this = (*this).get_impl();
546 match this.Name() {
547 ::core::result::Result::Ok(ok__) => {
548 ::core::ptr::write(propertyname, ::core::mem::transmute(ok__));
549 ::windows::core::HRESULT(0)
550 }
551 ::core::result::Result::Err(err) => err.into(),
552 }
553 }
554 unsafe extern "system" fn SetName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventProperty_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, propertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
555 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
556 let this = (*this).get_impl();
557 this.SetName(::core::mem::transmute(&propertyname)).into()
558 }
559 unsafe extern "system" fn Value<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventProperty_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, propertyvalue: *mut super::VARIANT) -> ::windows::core::HRESULT {
560 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
561 let this = (*this).get_impl();
562 match this.Value() {
563 ::core::result::Result::Ok(ok__) => {
564 ::core::ptr::write(propertyvalue, ::core::mem::transmute(ok__));
565 ::windows::core::HRESULT(0)
566 }
567 ::core::result::Result::Err(err) => err.into(),
568 }
569 }
570 unsafe extern "system" fn SetValue<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventProperty_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, propertyvalue: *const super::VARIANT) -> ::windows::core::HRESULT {
571 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
572 let this = (*this).get_impl();
573 this.SetValue(::core::mem::transmute_copy(&propertyvalue)).into()
574 }
575 Self {
576 base__: super::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(),
577 Name: Name::<Identity, Impl, OFFSET>,
578 SetName: SetName::<Identity, Impl, OFFSET>,
579 Value: Value::<Identity, Impl, OFFSET>,
580 SetValue: SetValue::<Identity, Impl, OFFSET>,
581 }
582 }
583 pub fn matches(iid: &windows::core::GUID) -> bool {
584 iid == &<IEventProperty as ::windows::core::ComInterface>::IID || iid == &<super::IDispatch as ::windows::core::ComInterface>::IID
585 }
586}
587#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
588#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
589pub trait IEventPublisher_Impl: Sized + super::IDispatch_Impl {
590 fn PublisherID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
591 fn SetPublisherID(&self, bstrpublisherid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
592 fn PublisherName(&self) -> ::windows::core::Result<::windows::core::BSTR>;
593 fn SetPublisherName(&self, bstrpublishername: &::windows::core::BSTR) -> ::windows::core::Result<()>;
594 fn PublisherType(&self) -> ::windows::core::Result<::windows::core::BSTR>;
595 fn SetPublisherType(&self, bstrpublishertype: &::windows::core::BSTR) -> ::windows::core::Result<()>;
596 fn OwnerSID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
597 fn SetOwnerSID(&self, bstrownersid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
598 fn Description(&self) -> ::windows::core::Result<::windows::core::BSTR>;
599 fn SetDescription(&self, bstrdescription: &::windows::core::BSTR) -> ::windows::core::Result<()>;
600 fn GetDefaultProperty(&self, bstrpropertyname: &::windows::core::BSTR) -> ::windows::core::Result<super::VARIANT>;
601 fn PutDefaultProperty(&self, bstrpropertyname: &::windows::core::BSTR, propertyvalue: *const super::VARIANT) -> ::windows::core::Result<()>;
602 fn RemoveDefaultProperty(&self, bstrpropertyname: &::windows::core::BSTR) -> ::windows::core::Result<()>;
603 fn GetDefaultPropertyCollection(&self) -> ::windows::core::Result<IEventObjectCollection>;
604}
605#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
606impl ::windows::core::RuntimeName for IEventPublisher {}
607#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
608impl IEventPublisher_Vtbl {
609 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>() -> IEventPublisher_Vtbl {
610 unsafe extern "system" fn PublisherID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrpublisherid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
611 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
612 let this = (*this).get_impl();
613 match this.PublisherID() {
614 ::core::result::Result::Ok(ok__) => {
615 ::core::ptr::write(pbstrpublisherid, ::core::mem::transmute(ok__));
616 ::windows::core::HRESULT(0)
617 }
618 ::core::result::Result::Err(err) => err.into(),
619 }
620 }
621 unsafe extern "system" fn SetPublisherID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpublisherid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
622 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
623 let this = (*this).get_impl();
624 this.SetPublisherID(::core::mem::transmute(&bstrpublisherid)).into()
625 }
626 unsafe extern "system" fn PublisherName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrpublishername: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
627 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
628 let this = (*this).get_impl();
629 match this.PublisherName() {
630 ::core::result::Result::Ok(ok__) => {
631 ::core::ptr::write(pbstrpublishername, ::core::mem::transmute(ok__));
632 ::windows::core::HRESULT(0)
633 }
634 ::core::result::Result::Err(err) => err.into(),
635 }
636 }
637 unsafe extern "system" fn SetPublisherName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpublishername: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
638 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
639 let this = (*this).get_impl();
640 this.SetPublisherName(::core::mem::transmute(&bstrpublishername)).into()
641 }
642 unsafe extern "system" fn PublisherType<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrpublishertype: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
643 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
644 let this = (*this).get_impl();
645 match this.PublisherType() {
646 ::core::result::Result::Ok(ok__) => {
647 ::core::ptr::write(pbstrpublishertype, ::core::mem::transmute(ok__));
648 ::windows::core::HRESULT(0)
649 }
650 ::core::result::Result::Err(err) => err.into(),
651 }
652 }
653 unsafe extern "system" fn SetPublisherType<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpublishertype: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
654 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
655 let this = (*this).get_impl();
656 this.SetPublisherType(::core::mem::transmute(&bstrpublishertype)).into()
657 }
658 unsafe extern "system" fn OwnerSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrownersid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
659 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
660 let this = (*this).get_impl();
661 match this.OwnerSID() {
662 ::core::result::Result::Ok(ok__) => {
663 ::core::ptr::write(pbstrownersid, ::core::mem::transmute(ok__));
664 ::windows::core::HRESULT(0)
665 }
666 ::core::result::Result::Err(err) => err.into(),
667 }
668 }
669 unsafe extern "system" fn SetOwnerSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrownersid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
670 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
671 let this = (*this).get_impl();
672 this.SetOwnerSID(::core::mem::transmute(&bstrownersid)).into()
673 }
674 unsafe extern "system" fn Description<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrdescription: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
675 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
676 let this = (*this).get_impl();
677 match this.Description() {
678 ::core::result::Result::Ok(ok__) => {
679 ::core::ptr::write(pbstrdescription, ::core::mem::transmute(ok__));
680 ::windows::core::HRESULT(0)
681 }
682 ::core::result::Result::Err(err) => err.into(),
683 }
684 }
685 unsafe extern "system" fn SetDescription<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrdescription: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
686 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
687 let this = (*this).get_impl();
688 this.SetDescription(::core::mem::transmute(&bstrdescription)).into()
689 }
690 unsafe extern "system" fn GetDefaultProperty<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpropertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>, propertyvalue: *mut super::VARIANT) -> ::windows::core::HRESULT {
691 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
692 let this = (*this).get_impl();
693 match this.GetDefaultProperty(::core::mem::transmute(&bstrpropertyname)) {
694 ::core::result::Result::Ok(ok__) => {
695 ::core::ptr::write(propertyvalue, ::core::mem::transmute(ok__));
696 ::windows::core::HRESULT(0)
697 }
698 ::core::result::Result::Err(err) => err.into(),
699 }
700 }
701 unsafe extern "system" fn PutDefaultProperty<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpropertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>, propertyvalue: *const super::VARIANT) -> ::windows::core::HRESULT {
702 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
703 let this = (*this).get_impl();
704 this.PutDefaultProperty(::core::mem::transmute(&bstrpropertyname), ::core::mem::transmute_copy(&propertyvalue)).into()
705 }
706 unsafe extern "system" fn RemoveDefaultProperty<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpropertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
707 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
708 let this = (*this).get_impl();
709 this.RemoveDefaultProperty(::core::mem::transmute(&bstrpropertyname)).into()
710 }
711 unsafe extern "system" fn GetDefaultPropertyCollection<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventPublisher_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, collection: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
712 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
713 let this = (*this).get_impl();
714 match this.GetDefaultPropertyCollection() {
715 ::core::result::Result::Ok(ok__) => {
716 ::core::ptr::write(collection, ::core::mem::transmute(ok__));
717 ::windows::core::HRESULT(0)
718 }
719 ::core::result::Result::Err(err) => err.into(),
720 }
721 }
722 Self {
723 base__: super::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(),
724 PublisherID: PublisherID::<Identity, Impl, OFFSET>,
725 SetPublisherID: SetPublisherID::<Identity, Impl, OFFSET>,
726 PublisherName: PublisherName::<Identity, Impl, OFFSET>,
727 SetPublisherName: SetPublisherName::<Identity, Impl, OFFSET>,
728 PublisherType: PublisherType::<Identity, Impl, OFFSET>,
729 SetPublisherType: SetPublisherType::<Identity, Impl, OFFSET>,
730 OwnerSID: OwnerSID::<Identity, Impl, OFFSET>,
731 SetOwnerSID: SetOwnerSID::<Identity, Impl, OFFSET>,
732 Description: Description::<Identity, Impl, OFFSET>,
733 SetDescription: SetDescription::<Identity, Impl, OFFSET>,
734 GetDefaultProperty: GetDefaultProperty::<Identity, Impl, OFFSET>,
735 PutDefaultProperty: PutDefaultProperty::<Identity, Impl, OFFSET>,
736 RemoveDefaultProperty: RemoveDefaultProperty::<Identity, Impl, OFFSET>,
737 GetDefaultPropertyCollection: GetDefaultPropertyCollection::<Identity, Impl, OFFSET>,
738 }
739 }
740 pub fn matches(iid: &windows::core::GUID) -> bool {
741 iid == &<IEventPublisher as ::windows::core::ComInterface>::IID || iid == &<super::IDispatch as ::windows::core::ComInterface>::IID
742 }
743}
744#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
745#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
746pub trait IEventSubscription_Impl: Sized + super::IDispatch_Impl {
747 fn SubscriptionID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
748 fn SetSubscriptionID(&self, bstrsubscriptionid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
749 fn SubscriptionName(&self) -> ::windows::core::Result<::windows::core::BSTR>;
750 fn SetSubscriptionName(&self, bstrsubscriptionname: &::windows::core::BSTR) -> ::windows::core::Result<()>;
751 fn PublisherID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
752 fn SetPublisherID(&self, bstrpublisherid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
753 fn EventClassID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
754 fn SetEventClassID(&self, bstreventclassid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
755 fn MethodName(&self) -> ::windows::core::Result<::windows::core::BSTR>;
756 fn SetMethodName(&self, bstrmethodname: &::windows::core::BSTR) -> ::windows::core::Result<()>;
757 fn SubscriberCLSID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
758 fn SetSubscriberCLSID(&self, bstrsubscriberclsid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
759 fn SubscriberInterface(&self) -> ::windows::core::Result<::windows::core::IUnknown>;
760 fn SetSubscriberInterface(&self, psubscriberinterface: ::core::option::Option<&::windows::core::IUnknown>) -> ::windows::core::Result<()>;
761 fn PerUser(&self) -> ::windows::core::Result<super::super::super::Foundation::BOOL>;
762 fn SetPerUser(&self, fperuser: super::super::super::Foundation::BOOL) -> ::windows::core::Result<()>;
763 fn OwnerSID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
764 fn SetOwnerSID(&self, bstrownersid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
765 fn Enabled(&self) -> ::windows::core::Result<super::super::super::Foundation::BOOL>;
766 fn SetEnabled(&self, fenabled: super::super::super::Foundation::BOOL) -> ::windows::core::Result<()>;
767 fn Description(&self) -> ::windows::core::Result<::windows::core::BSTR>;
768 fn SetDescription(&self, bstrdescription: &::windows::core::BSTR) -> ::windows::core::Result<()>;
769 fn MachineName(&self) -> ::windows::core::Result<::windows::core::BSTR>;
770 fn SetMachineName(&self, bstrmachinename: &::windows::core::BSTR) -> ::windows::core::Result<()>;
771 fn GetPublisherProperty(&self, bstrpropertyname: &::windows::core::BSTR) -> ::windows::core::Result<super::VARIANT>;
772 fn PutPublisherProperty(&self, bstrpropertyname: &::windows::core::BSTR, propertyvalue: *const super::VARIANT) -> ::windows::core::Result<()>;
773 fn RemovePublisherProperty(&self, bstrpropertyname: &::windows::core::BSTR) -> ::windows::core::Result<()>;
774 fn GetPublisherPropertyCollection(&self) -> ::windows::core::Result<IEventObjectCollection>;
775 fn GetSubscriberProperty(&self, bstrpropertyname: &::windows::core::BSTR) -> ::windows::core::Result<super::VARIANT>;
776 fn PutSubscriberProperty(&self, bstrpropertyname: &::windows::core::BSTR, propertyvalue: *const super::VARIANT) -> ::windows::core::Result<()>;
777 fn RemoveSubscriberProperty(&self, bstrpropertyname: &::windows::core::BSTR) -> ::windows::core::Result<()>;
778 fn GetSubscriberPropertyCollection(&self) -> ::windows::core::Result<IEventObjectCollection>;
779 fn InterfaceID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
780 fn SetInterfaceID(&self, bstrinterfaceid: &::windows::core::BSTR) -> ::windows::core::Result<()>;
781}
782#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
783impl ::windows::core::RuntimeName for IEventSubscription {}
784#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
785impl IEventSubscription_Vtbl {
786 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>() -> IEventSubscription_Vtbl {
787 unsafe extern "system" fn SubscriptionID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrsubscriptionid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
788 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
789 let this = (*this).get_impl();
790 match this.SubscriptionID() {
791 ::core::result::Result::Ok(ok__) => {
792 ::core::ptr::write(pbstrsubscriptionid, ::core::mem::transmute(ok__));
793 ::windows::core::HRESULT(0)
794 }
795 ::core::result::Result::Err(err) => err.into(),
796 }
797 }
798 unsafe extern "system" fn SetSubscriptionID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrsubscriptionid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
799 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
800 let this = (*this).get_impl();
801 this.SetSubscriptionID(::core::mem::transmute(&bstrsubscriptionid)).into()
802 }
803 unsafe extern "system" fn SubscriptionName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrsubscriptionname: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
804 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
805 let this = (*this).get_impl();
806 match this.SubscriptionName() {
807 ::core::result::Result::Ok(ok__) => {
808 ::core::ptr::write(pbstrsubscriptionname, ::core::mem::transmute(ok__));
809 ::windows::core::HRESULT(0)
810 }
811 ::core::result::Result::Err(err) => err.into(),
812 }
813 }
814 unsafe extern "system" fn SetSubscriptionName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrsubscriptionname: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
815 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
816 let this = (*this).get_impl();
817 this.SetSubscriptionName(::core::mem::transmute(&bstrsubscriptionname)).into()
818 }
819 unsafe extern "system" fn PublisherID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrpublisherid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
820 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
821 let this = (*this).get_impl();
822 match this.PublisherID() {
823 ::core::result::Result::Ok(ok__) => {
824 ::core::ptr::write(pbstrpublisherid, ::core::mem::transmute(ok__));
825 ::windows::core::HRESULT(0)
826 }
827 ::core::result::Result::Err(err) => err.into(),
828 }
829 }
830 unsafe extern "system" fn SetPublisherID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpublisherid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
831 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
832 let this = (*this).get_impl();
833 this.SetPublisherID(::core::mem::transmute(&bstrpublisherid)).into()
834 }
835 unsafe extern "system" fn EventClassID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstreventclassid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
836 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
837 let this = (*this).get_impl();
838 match this.EventClassID() {
839 ::core::result::Result::Ok(ok__) => {
840 ::core::ptr::write(pbstreventclassid, ::core::mem::transmute(ok__));
841 ::windows::core::HRESULT(0)
842 }
843 ::core::result::Result::Err(err) => err.into(),
844 }
845 }
846 unsafe extern "system" fn SetEventClassID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstreventclassid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
847 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
848 let this = (*this).get_impl();
849 this.SetEventClassID(::core::mem::transmute(&bstreventclassid)).into()
850 }
851 unsafe extern "system" fn MethodName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrmethodname: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
852 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
853 let this = (*this).get_impl();
854 match this.MethodName() {
855 ::core::result::Result::Ok(ok__) => {
856 ::core::ptr::write(pbstrmethodname, ::core::mem::transmute(ok__));
857 ::windows::core::HRESULT(0)
858 }
859 ::core::result::Result::Err(err) => err.into(),
860 }
861 }
862 unsafe extern "system" fn SetMethodName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrmethodname: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
863 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
864 let this = (*this).get_impl();
865 this.SetMethodName(::core::mem::transmute(&bstrmethodname)).into()
866 }
867 unsafe extern "system" fn SubscriberCLSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrsubscriberclsid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
868 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
869 let this = (*this).get_impl();
870 match this.SubscriberCLSID() {
871 ::core::result::Result::Ok(ok__) => {
872 ::core::ptr::write(pbstrsubscriberclsid, ::core::mem::transmute(ok__));
873 ::windows::core::HRESULT(0)
874 }
875 ::core::result::Result::Err(err) => err.into(),
876 }
877 }
878 unsafe extern "system" fn SetSubscriberCLSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrsubscriberclsid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
879 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
880 let this = (*this).get_impl();
881 this.SetSubscriberCLSID(::core::mem::transmute(&bstrsubscriberclsid)).into()
882 }
883 unsafe extern "system" fn SubscriberInterface<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, ppsubscriberinterface: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
884 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
885 let this = (*this).get_impl();
886 match this.SubscriberInterface() {
887 ::core::result::Result::Ok(ok__) => {
888 ::core::ptr::write(ppsubscriberinterface, ::core::mem::transmute(ok__));
889 ::windows::core::HRESULT(0)
890 }
891 ::core::result::Result::Err(err) => err.into(),
892 }
893 }
894 unsafe extern "system" fn SetSubscriberInterface<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, psubscriberinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
895 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
896 let this = (*this).get_impl();
897 this.SetSubscriberInterface(::windows::core::from_raw_borrowed(&psubscriberinterface)).into()
898 }
899 unsafe extern "system" fn PerUser<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pfperuser: *mut super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
900 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
901 let this = (*this).get_impl();
902 match this.PerUser() {
903 ::core::result::Result::Ok(ok__) => {
904 ::core::ptr::write(pfperuser, ::core::mem::transmute(ok__));
905 ::windows::core::HRESULT(0)
906 }
907 ::core::result::Result::Err(err) => err.into(),
908 }
909 }
910 unsafe extern "system" fn SetPerUser<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, fperuser: super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
911 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
912 let this = (*this).get_impl();
913 this.SetPerUser(::core::mem::transmute_copy(&fperuser)).into()
914 }
915 unsafe extern "system" fn OwnerSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrownersid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
916 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
917 let this = (*this).get_impl();
918 match this.OwnerSID() {
919 ::core::result::Result::Ok(ok__) => {
920 ::core::ptr::write(pbstrownersid, ::core::mem::transmute(ok__));
921 ::windows::core::HRESULT(0)
922 }
923 ::core::result::Result::Err(err) => err.into(),
924 }
925 }
926 unsafe extern "system" fn SetOwnerSID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrownersid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
927 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
928 let this = (*this).get_impl();
929 this.SetOwnerSID(::core::mem::transmute(&bstrownersid)).into()
930 }
931 unsafe extern "system" fn Enabled<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pfenabled: *mut super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
932 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
933 let this = (*this).get_impl();
934 match this.Enabled() {
935 ::core::result::Result::Ok(ok__) => {
936 ::core::ptr::write(pfenabled, ::core::mem::transmute(ok__));
937 ::windows::core::HRESULT(0)
938 }
939 ::core::result::Result::Err(err) => err.into(),
940 }
941 }
942 unsafe extern "system" fn SetEnabled<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, fenabled: super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
943 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
944 let this = (*this).get_impl();
945 this.SetEnabled(::core::mem::transmute_copy(&fenabled)).into()
946 }
947 unsafe extern "system" fn Description<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrdescription: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
948 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
949 let this = (*this).get_impl();
950 match this.Description() {
951 ::core::result::Result::Ok(ok__) => {
952 ::core::ptr::write(pbstrdescription, ::core::mem::transmute(ok__));
953 ::windows::core::HRESULT(0)
954 }
955 ::core::result::Result::Err(err) => err.into(),
956 }
957 }
958 unsafe extern "system" fn SetDescription<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrdescription: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
959 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
960 let this = (*this).get_impl();
961 this.SetDescription(::core::mem::transmute(&bstrdescription)).into()
962 }
963 unsafe extern "system" fn MachineName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrmachinename: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
964 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
965 let this = (*this).get_impl();
966 match this.MachineName() {
967 ::core::result::Result::Ok(ok__) => {
968 ::core::ptr::write(pbstrmachinename, ::core::mem::transmute(ok__));
969 ::windows::core::HRESULT(0)
970 }
971 ::core::result::Result::Err(err) => err.into(),
972 }
973 }
974 unsafe extern "system" fn SetMachineName<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrmachinename: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
975 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
976 let this = (*this).get_impl();
977 this.SetMachineName(::core::mem::transmute(&bstrmachinename)).into()
978 }
979 unsafe extern "system" fn GetPublisherProperty<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpropertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>, propertyvalue: *mut super::VARIANT) -> ::windows::core::HRESULT {
980 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
981 let this = (*this).get_impl();
982 match this.GetPublisherProperty(::core::mem::transmute(&bstrpropertyname)) {
983 ::core::result::Result::Ok(ok__) => {
984 ::core::ptr::write(propertyvalue, ::core::mem::transmute(ok__));
985 ::windows::core::HRESULT(0)
986 }
987 ::core::result::Result::Err(err) => err.into(),
988 }
989 }
990 unsafe extern "system" fn PutPublisherProperty<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpropertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>, propertyvalue: *const super::VARIANT) -> ::windows::core::HRESULT {
991 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
992 let this = (*this).get_impl();
993 this.PutPublisherProperty(::core::mem::transmute(&bstrpropertyname), ::core::mem::transmute_copy(&propertyvalue)).into()
994 }
995 unsafe extern "system" fn RemovePublisherProperty<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpropertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
996 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
997 let this = (*this).get_impl();
998 this.RemovePublisherProperty(::core::mem::transmute(&bstrpropertyname)).into()
999 }
1000 unsafe extern "system" fn GetPublisherPropertyCollection<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, collection: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1001 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1002 let this = (*this).get_impl();
1003 match this.GetPublisherPropertyCollection() {
1004 ::core::result::Result::Ok(ok__) => {
1005 ::core::ptr::write(collection, ::core::mem::transmute(ok__));
1006 ::windows::core::HRESULT(0)
1007 }
1008 ::core::result::Result::Err(err) => err.into(),
1009 }
1010 }
1011 unsafe extern "system" fn GetSubscriberProperty<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpropertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>, propertyvalue: *mut super::VARIANT) -> ::windows::core::HRESULT {
1012 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1013 let this = (*this).get_impl();
1014 match this.GetSubscriberProperty(::core::mem::transmute(&bstrpropertyname)) {
1015 ::core::result::Result::Ok(ok__) => {
1016 ::core::ptr::write(propertyvalue, ::core::mem::transmute(ok__));
1017 ::windows::core::HRESULT(0)
1018 }
1019 ::core::result::Result::Err(err) => err.into(),
1020 }
1021 }
1022 unsafe extern "system" fn PutSubscriberProperty<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpropertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>, propertyvalue: *const super::VARIANT) -> ::windows::core::HRESULT {
1023 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1024 let this = (*this).get_impl();
1025 this.PutSubscriberProperty(::core::mem::transmute(&bstrpropertyname), ::core::mem::transmute_copy(&propertyvalue)).into()
1026 }
1027 unsafe extern "system" fn RemoveSubscriberProperty<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrpropertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
1028 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1029 let this = (*this).get_impl();
1030 this.RemoveSubscriberProperty(::core::mem::transmute(&bstrpropertyname)).into()
1031 }
1032 unsafe extern "system" fn GetSubscriberPropertyCollection<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, collection: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1033 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1034 let this = (*this).get_impl();
1035 match this.GetSubscriberPropertyCollection() {
1036 ::core::result::Result::Ok(ok__) => {
1037 ::core::ptr::write(collection, ::core::mem::transmute(ok__));
1038 ::windows::core::HRESULT(0)
1039 }
1040 ::core::result::Result::Err(err) => err.into(),
1041 }
1042 }
1043 unsafe extern "system" fn InterfaceID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstrinterfaceid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
1044 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1045 let this = (*this).get_impl();
1046 match this.InterfaceID() {
1047 ::core::result::Result::Ok(ok__) => {
1048 ::core::ptr::write(pbstrinterfaceid, ::core::mem::transmute(ok__));
1049 ::windows::core::HRESULT(0)
1050 }
1051 ::core::result::Result::Err(err) => err.into(),
1052 }
1053 }
1054 unsafe extern "system" fn SetInterfaceID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSubscription_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, bstrinterfaceid: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
1055 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1056 let this = (*this).get_impl();
1057 this.SetInterfaceID(::core::mem::transmute(&bstrinterfaceid)).into()
1058 }
1059 Self {
1060 base__: super::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(),
1061 SubscriptionID: SubscriptionID::<Identity, Impl, OFFSET>,
1062 SetSubscriptionID: SetSubscriptionID::<Identity, Impl, OFFSET>,
1063 SubscriptionName: SubscriptionName::<Identity, Impl, OFFSET>,
1064 SetSubscriptionName: SetSubscriptionName::<Identity, Impl, OFFSET>,
1065 PublisherID: PublisherID::<Identity, Impl, OFFSET>,
1066 SetPublisherID: SetPublisherID::<Identity, Impl, OFFSET>,
1067 EventClassID: EventClassID::<Identity, Impl, OFFSET>,
1068 SetEventClassID: SetEventClassID::<Identity, Impl, OFFSET>,
1069 MethodName: MethodName::<Identity, Impl, OFFSET>,
1070 SetMethodName: SetMethodName::<Identity, Impl, OFFSET>,
1071 SubscriberCLSID: SubscriberCLSID::<Identity, Impl, OFFSET>,
1072 SetSubscriberCLSID: SetSubscriberCLSID::<Identity, Impl, OFFSET>,
1073 SubscriberInterface: SubscriberInterface::<Identity, Impl, OFFSET>,
1074 SetSubscriberInterface: SetSubscriberInterface::<Identity, Impl, OFFSET>,
1075 PerUser: PerUser::<Identity, Impl, OFFSET>,
1076 SetPerUser: SetPerUser::<Identity, Impl, OFFSET>,
1077 OwnerSID: OwnerSID::<Identity, Impl, OFFSET>,
1078 SetOwnerSID: SetOwnerSID::<Identity, Impl, OFFSET>,
1079 Enabled: Enabled::<Identity, Impl, OFFSET>,
1080 SetEnabled: SetEnabled::<Identity, Impl, OFFSET>,
1081 Description: Description::<Identity, Impl, OFFSET>,
1082 SetDescription: SetDescription::<Identity, Impl, OFFSET>,
1083 MachineName: MachineName::<Identity, Impl, OFFSET>,
1084 SetMachineName: SetMachineName::<Identity, Impl, OFFSET>,
1085 GetPublisherProperty: GetPublisherProperty::<Identity, Impl, OFFSET>,
1086 PutPublisherProperty: PutPublisherProperty::<Identity, Impl, OFFSET>,
1087 RemovePublisherProperty: RemovePublisherProperty::<Identity, Impl, OFFSET>,
1088 GetPublisherPropertyCollection: GetPublisherPropertyCollection::<Identity, Impl, OFFSET>,
1089 GetSubscriberProperty: GetSubscriberProperty::<Identity, Impl, OFFSET>,
1090 PutSubscriberProperty: PutSubscriberProperty::<Identity, Impl, OFFSET>,
1091 RemoveSubscriberProperty: RemoveSubscriberProperty::<Identity, Impl, OFFSET>,
1092 GetSubscriberPropertyCollection: GetSubscriberPropertyCollection::<Identity, Impl, OFFSET>,
1093 InterfaceID: InterfaceID::<Identity, Impl, OFFSET>,
1094 SetInterfaceID: SetInterfaceID::<Identity, Impl, OFFSET>,
1095 }
1096 }
1097 pub fn matches(iid: &windows::core::GUID) -> bool {
1098 iid == &<IEventSubscription as ::windows::core::ComInterface>::IID || iid == &<super::IDispatch as ::windows::core::ComInterface>::IID
1099 }
1100}
1101#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
1102#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
1103pub trait IEventSystem_Impl: Sized + super::IDispatch_Impl {
1104 fn Query(&self, progid: &::windows::core::BSTR, querycriteria: &::windows::core::BSTR, errorindex: *mut i32, ppinterface: *mut ::core::option::Option<::windows::core::IUnknown>) -> ::windows::core::Result<()>;
1105 fn Store(&self, progid: &::windows::core::BSTR, pinterface: ::core::option::Option<&::windows::core::IUnknown>) -> ::windows::core::Result<()>;
1106 fn Remove(&self, progid: &::windows::core::BSTR, querycriteria: &::windows::core::BSTR) -> ::windows::core::Result<i32>;
1107 fn EventObjectChangeEventClassID(&self) -> ::windows::core::Result<::windows::core::BSTR>;
1108 fn QueryS(&self, progid: &::windows::core::BSTR, querycriteria: &::windows::core::BSTR) -> ::windows::core::Result<::windows::core::IUnknown>;
1109 fn RemoveS(&self, progid: &::windows::core::BSTR, querycriteria: &::windows::core::BSTR) -> ::windows::core::Result<()>;
1110}
1111#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
1112impl ::windows::core::RuntimeName for IEventSystem {}
1113#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
1114impl IEventSystem_Vtbl {
1115 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSystem_Impl, const OFFSET: isize>() -> IEventSystem_Vtbl {
1116 unsafe extern "system" fn Query<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSystem_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, progid: ::std::mem::MaybeUninit<::windows::core::BSTR>, querycriteria: ::std::mem::MaybeUninit<::windows::core::BSTR>, errorindex: *mut i32, ppinterface: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1117 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1118 let this = (*this).get_impl();
1119 this.Query(::core::mem::transmute(&progid), ::core::mem::transmute(&querycriteria), ::core::mem::transmute_copy(&errorindex), ::core::mem::transmute_copy(&ppinterface)).into()
1120 }
1121 unsafe extern "system" fn Store<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSystem_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, progid: ::std::mem::MaybeUninit<::windows::core::BSTR>, pinterface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1122 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1123 let this = (*this).get_impl();
1124 this.Store(::core::mem::transmute(&progid), ::windows::core::from_raw_borrowed(&pinterface)).into()
1125 }
1126 unsafe extern "system" fn Remove<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSystem_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, progid: ::std::mem::MaybeUninit<::windows::core::BSTR>, querycriteria: ::std::mem::MaybeUninit<::windows::core::BSTR>, errorindex: *mut i32) -> ::windows::core::HRESULT {
1127 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1128 let this = (*this).get_impl();
1129 match this.Remove(::core::mem::transmute(&progid), ::core::mem::transmute(&querycriteria)) {
1130 ::core::result::Result::Ok(ok__) => {
1131 ::core::ptr::write(errorindex, ::core::mem::transmute(ok__));
1132 ::windows::core::HRESULT(0)
1133 }
1134 ::core::result::Result::Err(err) => err.into(),
1135 }
1136 }
1137 unsafe extern "system" fn EventObjectChangeEventClassID<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSystem_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbstreventclassid: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
1138 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1139 let this = (*this).get_impl();
1140 match this.EventObjectChangeEventClassID() {
1141 ::core::result::Result::Ok(ok__) => {
1142 ::core::ptr::write(pbstreventclassid, ::core::mem::transmute(ok__));
1143 ::windows::core::HRESULT(0)
1144 }
1145 ::core::result::Result::Err(err) => err.into(),
1146 }
1147 }
1148 unsafe extern "system" fn QueryS<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSystem_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, progid: ::std::mem::MaybeUninit<::windows::core::BSTR>, querycriteria: ::std::mem::MaybeUninit<::windows::core::BSTR>, ppinterface: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1149 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1150 let this = (*this).get_impl();
1151 match this.QueryS(::core::mem::transmute(&progid), ::core::mem::transmute(&querycriteria)) {
1152 ::core::result::Result::Ok(ok__) => {
1153 ::core::ptr::write(ppinterface, ::core::mem::transmute(ok__));
1154 ::windows::core::HRESULT(0)
1155 }
1156 ::core::result::Result::Err(err) => err.into(),
1157 }
1158 }
1159 unsafe extern "system" fn RemoveS<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IEventSystem_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, progid: ::std::mem::MaybeUninit<::windows::core::BSTR>, querycriteria: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT {
1160 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1161 let this = (*this).get_impl();
1162 this.RemoveS(::core::mem::transmute(&progid), ::core::mem::transmute(&querycriteria)).into()
1163 }
1164 Self {
1165 base__: super::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(),
1166 Query: Query::<Identity, Impl, OFFSET>,
1167 Store: Store::<Identity, Impl, OFFSET>,
1168 Remove: Remove::<Identity, Impl, OFFSET>,
1169 EventObjectChangeEventClassID: EventObjectChangeEventClassID::<Identity, Impl, OFFSET>,
1170 QueryS: QueryS::<Identity, Impl, OFFSET>,
1171 RemoveS: RemoveS::<Identity, Impl, OFFSET>,
1172 }
1173 }
1174 pub fn matches(iid: &windows::core::GUID) -> bool {
1175 iid == &<IEventSystem as ::windows::core::ComInterface>::IID || iid == &<super::IDispatch as ::windows::core::ComInterface>::IID
1176 }
1177}
1178#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`, `\"implement\"`*"]
1179#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
1180pub trait IFiringControl_Impl: Sized + super::IDispatch_Impl {
1181 fn FireSubscription(&self, subscription: ::core::option::Option<&IEventSubscription>) -> ::windows::core::Result<()>;
1182}
1183#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
1184impl ::windows::core::RuntimeName for IFiringControl {}
1185#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))]
1186impl IFiringControl_Vtbl {
1187 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IFiringControl_Impl, const OFFSET: isize>() -> IFiringControl_Vtbl {
1188 unsafe extern "system" fn FireSubscription<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IFiringControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, subscription: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1189 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1190 let this = (*this).get_impl();
1191 this.FireSubscription(::windows::core::from_raw_borrowed(&subscription)).into()
1192 }
1193 Self { base__: super::IDispatch_Vtbl::new::<Identity, Impl, OFFSET>(), FireSubscription: FireSubscription::<Identity, Impl, OFFSET> }
1194 }
1195 pub fn matches(iid: &windows::core::GUID) -> bool {
1196 iid == &<IFiringControl as ::windows::core::ComInterface>::IID || iid == &<super::IDispatch as ::windows::core::ComInterface>::IID
1197 }
1198}
1199#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"Win32_Foundation\"`, `\"implement\"`*"]
1200#[cfg(feature = "Win32_Foundation")]
1201pub trait IMultiInterfaceEventControl_Impl: Sized {
1202 fn SetMultiInterfacePublisherFilter(&self, classfilter: ::core::option::Option<&IMultiInterfacePublisherFilter>) -> ::windows::core::Result<()>;
1203 fn GetSubscriptions(&self, eventiid: *const ::windows::core::GUID, bstrmethodname: &::windows::core::BSTR, optionalcriteria: &::windows::core::BSTR, optionalerrorindex: *const i32) -> ::windows::core::Result<IEventObjectCollection>;
1204 fn SetDefaultQuery(&self, eventiid: *const ::windows::core::GUID, bstrmethodname: &::windows::core::BSTR, bstrcriteria: &::windows::core::BSTR) -> ::windows::core::Result<i32>;
1205 fn AllowInprocActivation(&self) -> ::windows::core::Result<super::super::super::Foundation::BOOL>;
1206 fn SetAllowInprocActivation(&self, fallowinprocactivation: super::super::super::Foundation::BOOL) -> ::windows::core::Result<()>;
1207 fn FireInParallel(&self) -> ::windows::core::Result<super::super::super::Foundation::BOOL>;
1208 fn SetFireInParallel(&self, ffireinparallel: super::super::super::Foundation::BOOL) -> ::windows::core::Result<()>;
1209}
1210#[cfg(feature = "Win32_Foundation")]
1211impl ::windows::core::RuntimeName for IMultiInterfaceEventControl {}
1212#[cfg(feature = "Win32_Foundation")]
1213impl IMultiInterfaceEventControl_Vtbl {
1214 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfaceEventControl_Impl, const OFFSET: isize>() -> IMultiInterfaceEventControl_Vtbl {
1215 unsafe extern "system" fn SetMultiInterfacePublisherFilter<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfaceEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, classfilter: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1216 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1217 let this = (*this).get_impl();
1218 this.SetMultiInterfacePublisherFilter(::windows::core::from_raw_borrowed(&classfilter)).into()
1219 }
1220 unsafe extern "system" fn GetSubscriptions<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfaceEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, eventiid: *const ::windows::core::GUID, bstrmethodname: ::std::mem::MaybeUninit<::windows::core::BSTR>, optionalcriteria: ::std::mem::MaybeUninit<::windows::core::BSTR>, optionalerrorindex: *const i32, ppcollection: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1221 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1222 let this = (*this).get_impl();
1223 match this.GetSubscriptions(::core::mem::transmute_copy(&eventiid), ::core::mem::transmute(&bstrmethodname), ::core::mem::transmute(&optionalcriteria), ::core::mem::transmute_copy(&optionalerrorindex)) {
1224 ::core::result::Result::Ok(ok__) => {
1225 ::core::ptr::write(ppcollection, ::core::mem::transmute(ok__));
1226 ::windows::core::HRESULT(0)
1227 }
1228 ::core::result::Result::Err(err) => err.into(),
1229 }
1230 }
1231 unsafe extern "system" fn SetDefaultQuery<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfaceEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, eventiid: *const ::windows::core::GUID, bstrmethodname: ::std::mem::MaybeUninit<::windows::core::BSTR>, bstrcriteria: ::std::mem::MaybeUninit<::windows::core::BSTR>, errorindex: *mut i32) -> ::windows::core::HRESULT {
1232 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1233 let this = (*this).get_impl();
1234 match this.SetDefaultQuery(::core::mem::transmute_copy(&eventiid), ::core::mem::transmute(&bstrmethodname), ::core::mem::transmute(&bstrcriteria)) {
1235 ::core::result::Result::Ok(ok__) => {
1236 ::core::ptr::write(errorindex, ::core::mem::transmute(ok__));
1237 ::windows::core::HRESULT(0)
1238 }
1239 ::core::result::Result::Err(err) => err.into(),
1240 }
1241 }
1242 unsafe extern "system" fn AllowInprocActivation<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfaceEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pfallowinprocactivation: *mut super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
1243 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1244 let this = (*this).get_impl();
1245 match this.AllowInprocActivation() {
1246 ::core::result::Result::Ok(ok__) => {
1247 ::core::ptr::write(pfallowinprocactivation, ::core::mem::transmute(ok__));
1248 ::windows::core::HRESULT(0)
1249 }
1250 ::core::result::Result::Err(err) => err.into(),
1251 }
1252 }
1253 unsafe extern "system" fn SetAllowInprocActivation<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfaceEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, fallowinprocactivation: super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
1254 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1255 let this = (*this).get_impl();
1256 this.SetAllowInprocActivation(::core::mem::transmute_copy(&fallowinprocactivation)).into()
1257 }
1258 unsafe extern "system" fn FireInParallel<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfaceEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pffireinparallel: *mut super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
1259 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1260 let this = (*this).get_impl();
1261 match this.FireInParallel() {
1262 ::core::result::Result::Ok(ok__) => {
1263 ::core::ptr::write(pffireinparallel, ::core::mem::transmute(ok__));
1264 ::windows::core::HRESULT(0)
1265 }
1266 ::core::result::Result::Err(err) => err.into(),
1267 }
1268 }
1269 unsafe extern "system" fn SetFireInParallel<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfaceEventControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, ffireinparallel: super::super::super::Foundation::BOOL) -> ::windows::core::HRESULT {
1270 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1271 let this = (*this).get_impl();
1272 this.SetFireInParallel(::core::mem::transmute_copy(&ffireinparallel)).into()
1273 }
1274 Self {
1275 base__: ::windows::core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
1276 SetMultiInterfacePublisherFilter: SetMultiInterfacePublisherFilter::<Identity, Impl, OFFSET>,
1277 GetSubscriptions: GetSubscriptions::<Identity, Impl, OFFSET>,
1278 SetDefaultQuery: SetDefaultQuery::<Identity, Impl, OFFSET>,
1279 AllowInprocActivation: AllowInprocActivation::<Identity, Impl, OFFSET>,
1280 SetAllowInprocActivation: SetAllowInprocActivation::<Identity, Impl, OFFSET>,
1281 FireInParallel: FireInParallel::<Identity, Impl, OFFSET>,
1282 SetFireInParallel: SetFireInParallel::<Identity, Impl, OFFSET>,
1283 }
1284 }
1285 pub fn matches(iid: &windows::core::GUID) -> bool {
1286 iid == &<IMultiInterfaceEventControl as ::windows::core::ComInterface>::IID
1287 }
1288}
1289#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"implement\"`*"]
1290pub trait IMultiInterfacePublisherFilter_Impl: Sized {
1291 fn Initialize(&self, peic: ::core::option::Option<&IMultiInterfaceEventControl>) -> ::windows::core::Result<()>;
1292 fn PrepareToFire(&self, iid: *const ::windows::core::GUID, methodname: &::windows::core::BSTR, firingcontrol: ::core::option::Option<&IFiringControl>) -> ::windows::core::Result<()>;
1293}
1294impl ::windows::core::RuntimeName for IMultiInterfacePublisherFilter {}
1295impl IMultiInterfacePublisherFilter_Vtbl {
1296 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfacePublisherFilter_Impl, const OFFSET: isize>() -> IMultiInterfacePublisherFilter_Vtbl {
1297 unsafe extern "system" fn Initialize<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfacePublisherFilter_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, peic: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1298 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1299 let this = (*this).get_impl();
1300 this.Initialize(::windows::core::from_raw_borrowed(&peic)).into()
1301 }
1302 unsafe extern "system" fn PrepareToFire<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IMultiInterfacePublisherFilter_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, iid: *const ::windows::core::GUID, methodname: ::std::mem::MaybeUninit<::windows::core::BSTR>, firingcontrol: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1303 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1304 let this = (*this).get_impl();
1305 this.PrepareToFire(::core::mem::transmute_copy(&iid), ::core::mem::transmute(&methodname), ::windows::core::from_raw_borrowed(&firingcontrol)).into()
1306 }
1307 Self {
1308 base__: ::windows::core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
1309 Initialize: Initialize::<Identity, Impl, OFFSET>,
1310 PrepareToFire: PrepareToFire::<Identity, Impl, OFFSET>,
1311 }
1312 }
1313 pub fn matches(iid: &windows::core::GUID) -> bool {
1314 iid == &<IMultiInterfacePublisherFilter as ::windows::core::ComInterface>::IID
1315 }
1316}
1317#[doc = "*Required features: `\"Win32_System_Com_Events\"`, `\"implement\"`*"]
1318pub trait IPublisherFilter_Impl: Sized {
1319 fn Initialize(&self, methodname: &::windows::core::BSTR, dispuserdefined: ::core::option::Option<&super::IDispatch>) -> ::windows::core::Result<()>;
1320 fn PrepareToFire(&self, methodname: &::windows::core::BSTR, firingcontrol: ::core::option::Option<&IFiringControl>) -> ::windows::core::Result<()>;
1321}
1322impl ::windows::core::RuntimeName for IPublisherFilter {}
1323impl IPublisherFilter_Vtbl {
1324 pub const fn new<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IPublisherFilter_Impl, const OFFSET: isize>() -> IPublisherFilter_Vtbl {
1325 unsafe extern "system" fn Initialize<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IPublisherFilter_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, methodname: ::std::mem::MaybeUninit<::windows::core::BSTR>, dispuserdefined: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1326 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1327 let this = (*this).get_impl();
1328 this.Initialize(::core::mem::transmute(&methodname), ::windows::core::from_raw_borrowed(&dispuserdefined)).into()
1329 }
1330 unsafe extern "system" fn PrepareToFire<Identity: ::windows::core::IUnknownImpl<Impl = Impl>, Impl: IPublisherFilter_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, methodname: ::std::mem::MaybeUninit<::windows::core::BSTR>, firingcontrol: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT {
1331 let this = (this as *const *const ()).offset(OFFSET) as *const Identity;
1332 let this = (*this).get_impl();
1333 this.PrepareToFire(::core::mem::transmute(&methodname), ::windows::core::from_raw_borrowed(&firingcontrol)).into()
1334 }
1335 Self {
1336 base__: ::windows::core::IUnknown_Vtbl::new::<Identity, OFFSET>(),
1337 Initialize: Initialize::<Identity, Impl, OFFSET>,
1338 PrepareToFire: PrepareToFire::<Identity, Impl, OFFSET>,
1339 }
1340 }
1341 pub fn matches(iid: &windows::core::GUID) -> bool {
1342 iid == &<IPublisherFilter as ::windows::core::ComInterface>::IID
1343 }
1344}