1 /*** Autogenerated by WIDL 1.6 from include/fsrmquota.idl - Do not edit ***/
2 
3 #ifndef __REQUIRED_RPCNDR_H_VERSION__
4 #define __REQUIRED_RPCNDR_H_VERSION__ 475
5 #endif
6 
7 #include <rpc.h>
8 #include <rpcndr.h>
9 
10 #ifndef COM_NO_WINDOWS_H
11 #include <windows.h>
12 #include <ole2.h>
13 #endif
14 
15 #ifndef __fsrmquota_h__
16 #define __fsrmquota_h__
17 
18 /* Forward declarations */
19 
20 #ifndef __IFsrmQuotaManager_FWD_DEFINED__
21 #define __IFsrmQuotaManager_FWD_DEFINED__
22 typedef interface IFsrmQuotaManager IFsrmQuotaManager;
23 #endif
24 
25 #ifndef __IFsrmQuotaTemplateManager_FWD_DEFINED__
26 #define __IFsrmQuotaTemplateManager_FWD_DEFINED__
27 typedef interface IFsrmQuotaTemplateManager IFsrmQuotaTemplateManager;
28 #endif
29 
30 #ifndef __IFsrmQuotaBase_FWD_DEFINED__
31 #define __IFsrmQuotaBase_FWD_DEFINED__
32 typedef interface IFsrmQuotaBase IFsrmQuotaBase;
33 #endif
34 
35 #ifndef __IFsrmQuotaObject_FWD_DEFINED__
36 #define __IFsrmQuotaObject_FWD_DEFINED__
37 typedef interface IFsrmQuotaObject IFsrmQuotaObject;
38 #endif
39 
40 #ifndef __IFsrmQuotaTemplate_FWD_DEFINED__
41 #define __IFsrmQuotaTemplate_FWD_DEFINED__
42 typedef interface IFsrmQuotaTemplate IFsrmQuotaTemplate;
43 #endif
44 
45 #ifndef __IFsrmQuota_FWD_DEFINED__
46 #define __IFsrmQuota_FWD_DEFINED__
47 typedef interface IFsrmQuota IFsrmQuota;
48 #endif
49 
50 #ifndef __IFsrmAutoApplyQuota_FWD_DEFINED__
51 #define __IFsrmAutoApplyQuota_FWD_DEFINED__
52 typedef interface IFsrmAutoApplyQuota IFsrmAutoApplyQuota;
53 #endif
54 
55 #ifndef __IFsrmQuotaManagerEx_FWD_DEFINED__
56 #define __IFsrmQuotaManagerEx_FWD_DEFINED__
57 typedef interface IFsrmQuotaManagerEx IFsrmQuotaManagerEx;
58 #endif
59 
60 #ifndef __IFsrmQuotaTemplateImported_FWD_DEFINED__
61 #define __IFsrmQuotaTemplateImported_FWD_DEFINED__
62 typedef interface IFsrmQuotaTemplateImported IFsrmQuotaTemplateImported;
63 #endif
64 
65 /* Headers for imported files */
66 
67 #include <oaidl.h>
68 #include <fsrmenums.h>
69 #include <fsrm.h>
70 
71 #ifdef __cplusplus
72 extern "C" {
73 #endif
74 
75 #include <winapifamily.h>
76 
77 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
78 #ifndef __IFsrmAutoApplyQuota_FWD_DEFINED__
79 #define __IFsrmAutoApplyQuota_FWD_DEFINED__
80 typedef interface IFsrmAutoApplyQuota IFsrmAutoApplyQuota;
81 #endif
82 
83 #ifndef __IFsrmQuota_FWD_DEFINED__
84 #define __IFsrmQuota_FWD_DEFINED__
85 typedef interface IFsrmQuota IFsrmQuota;
86 #endif
87 
88 #ifndef __IFsrmQuotaBase_FWD_DEFINED__
89 #define __IFsrmQuotaBase_FWD_DEFINED__
90 typedef interface IFsrmQuotaBase IFsrmQuotaBase;
91 #endif
92 
93 #ifndef __IFsrmQuotaObject_FWD_DEFINED__
94 #define __IFsrmQuotaObject_FWD_DEFINED__
95 typedef interface IFsrmQuotaObject IFsrmQuotaObject;
96 #endif
97 
98 #ifndef __IFsrmQuotaManager_FWD_DEFINED__
99 #define __IFsrmQuotaManager_FWD_DEFINED__
100 typedef interface IFsrmQuotaManager IFsrmQuotaManager;
101 #endif
102 
103 #ifndef __IFsrmQuotaTemplate_FWD_DEFINED__
104 #define __IFsrmQuotaTemplate_FWD_DEFINED__
105 typedef interface IFsrmQuotaTemplate IFsrmQuotaTemplate;
106 #endif
107 
108 #ifndef __IFsrmQuotaTemplateImported_FWD_DEFINED__
109 #define __IFsrmQuotaTemplateImported_FWD_DEFINED__
110 typedef interface IFsrmQuotaTemplateImported IFsrmQuotaTemplateImported;
111 #endif
112 
113 #ifndef __IFsrmQuotaTemplateManager_FWD_DEFINED__
114 #define __IFsrmQuotaTemplateManager_FWD_DEFINED__
115 typedef interface IFsrmQuotaTemplateManager IFsrmQuotaTemplateManager;
116 #endif
117 
118 typedef LONG FSRM_QUOTA_THRESHOLD;
119 #define FSRM_DISPID_QUOTA_BASE (FSRM_DISPID_FEATURE_QUOTA | 0x100000)
120 
121 #define FSRM_DISPID_QUOTA_OBJECT (FSRM_DISPID_QUOTA_BASE | 0x10000)
122 
123 #define FSRM_DISPID_QUOTA (FSRM_DISPID_QUOTA_OBJECT | 0x1000)
124 
125 #define FSRM_DISPID_AUTOAPPLYQUOTA (FSRM_DISPID_QUOTA_OBJECT | 0x2000)
126 
127 #define FSRM_DISPID_QUOTA_TEMPLATE (FSRM_DISPID_QUOTA_BASE | 0x20000)
128 
129 #define FSRM_DISPID_QUOTA_TEMPLATE_IMPORTED (FSRM_DISPID_QUOTA_TEMPLATE | 0x1000)
130 
131 #define FSRM_DISPID_QUOTA_MANAGER (FSRM_DISPID_FEATURE_QUOTA | 0x200000)
132 
133 #define FSRM_DISPID_QUOTA_TEMPLATE_MANAGER (FSRM_DISPID_FEATURE_QUOTA | 0x300000)
134 
135 #define FSRM_DISPID_QUOTA_MANAGER_EX (FSRM_DISPID_FEATURE_QUOTA | 0x400000)
136 
137 #define FsrmMaxNumberThresholds (16)
138 
139 #define FsrmMinThresholdValue (1)
140 
141 #define FsrmMaxThresholdValue (250)
142 
143 #define FsrmMinQuotaLimit (1024)
144 
145 #define FsrmMaxExcludeFolders (32)
146 
147 /*****************************************************************************
148  * IFsrmQuotaManager interface
149  */
150 #ifndef __IFsrmQuotaManager_INTERFACE_DEFINED__
151 #define __IFsrmQuotaManager_INTERFACE_DEFINED__
152 
153 DEFINE_GUID(IID_IFsrmQuotaManager, 0x8bb68c7d, 0x19d8, 0x4ffb, 0x80,0x9e, 0xbe,0x4f,0xc1,0x73,0x40,0x14);
154 #if defined(__cplusplus) && !defined(CINTERFACE)
155 MIDL_INTERFACE("8bb68c7d-19d8-4ffb-809e-be4fc1734014")
156 IFsrmQuotaManager : public IDispatch
157 {
158     virtual HRESULT STDMETHODCALLTYPE get_ActionVariables(
159         SAFEARRAY **variables) = 0;
160 
161     virtual HRESULT STDMETHODCALLTYPE get_ActionVariableDescriptions(
162         SAFEARRAY **descriptions) = 0;
163 
164     virtual HRESULT STDMETHODCALLTYPE CreateQuota(
165         BSTR path,
166         IFsrmQuota **quota) = 0;
167 
168     virtual HRESULT STDMETHODCALLTYPE CreateAutoApplyQuota(
169         BSTR quotaTemplateName,
170         BSTR path,
171         IFsrmAutoApplyQuota **quota) = 0;
172 
173     virtual HRESULT STDMETHODCALLTYPE GetQuota(
174         BSTR path,
175         IFsrmQuota **quota) = 0;
176 
177     virtual HRESULT STDMETHODCALLTYPE GetAutoApplyQuota(
178         BSTR path,
179         IFsrmAutoApplyQuota **quota) = 0;
180 
181     virtual HRESULT STDMETHODCALLTYPE GetRestrictiveQuota(
182         BSTR path,
183         IFsrmQuota **quota) = 0;
184 
185     virtual HRESULT STDMETHODCALLTYPE EnumQuotas(
186         BSTR path,
187         FsrmEnumOptions options,
188         IFsrmCommittableCollection **quotas) = 0;
189 
190     virtual HRESULT STDMETHODCALLTYPE EnumAutoApplyQuotas(
191         BSTR path,
192         FsrmEnumOptions options,
193         IFsrmCommittableCollection **quotas) = 0;
194 
195     virtual HRESULT STDMETHODCALLTYPE EnumEffectiveQuotas(
196         BSTR path,
197         FsrmEnumOptions options,
198         IFsrmCommittableCollection **quotas) = 0;
199 
200     virtual HRESULT STDMETHODCALLTYPE Scan(
201         BSTR strPath) = 0;
202 
203     virtual HRESULT STDMETHODCALLTYPE CreateQuotaCollection(
204         IFsrmCommittableCollection **collection) = 0;
205 
206 };
207 #ifdef __CRT_UUID_DECL
208 __CRT_UUID_DECL(IFsrmQuotaManager, 0x8bb68c7d, 0x19d8, 0x4ffb, 0x80,0x9e, 0xbe,0x4f,0xc1,0x73,0x40,0x14)
209 #endif
210 #else
211 typedef struct IFsrmQuotaManagerVtbl {
212     BEGIN_INTERFACE
213 
214     /*** IUnknown methods ***/
215     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
216         IFsrmQuotaManager* This,
217         REFIID riid,
218         void **ppvObject);
219 
220     ULONG (STDMETHODCALLTYPE *AddRef)(
221         IFsrmQuotaManager* This);
222 
223     ULONG (STDMETHODCALLTYPE *Release)(
224         IFsrmQuotaManager* This);
225 
226     /*** IDispatch methods ***/
227     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
228         IFsrmQuotaManager* This,
229         UINT *pctinfo);
230 
231     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
232         IFsrmQuotaManager* This,
233         UINT iTInfo,
234         LCID lcid,
235         ITypeInfo **ppTInfo);
236 
237     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
238         IFsrmQuotaManager* This,
239         REFIID riid,
240         LPOLESTR *rgszNames,
241         UINT cNames,
242         LCID lcid,
243         DISPID *rgDispId);
244 
245     HRESULT (STDMETHODCALLTYPE *Invoke)(
246         IFsrmQuotaManager* This,
247         DISPID dispIdMember,
248         REFIID riid,
249         LCID lcid,
250         WORD wFlags,
251         DISPPARAMS *pDispParams,
252         VARIANT *pVarResult,
253         EXCEPINFO *pExcepInfo,
254         UINT *puArgErr);
255 
256     /*** IFsrmQuotaManager methods ***/
257     HRESULT (STDMETHODCALLTYPE *get_ActionVariables)(
258         IFsrmQuotaManager* This,
259         SAFEARRAY **variables);
260 
261     HRESULT (STDMETHODCALLTYPE *get_ActionVariableDescriptions)(
262         IFsrmQuotaManager* This,
263         SAFEARRAY **descriptions);
264 
265     HRESULT (STDMETHODCALLTYPE *CreateQuota)(
266         IFsrmQuotaManager* This,
267         BSTR path,
268         IFsrmQuota **quota);
269 
270     HRESULT (STDMETHODCALLTYPE *CreateAutoApplyQuota)(
271         IFsrmQuotaManager* This,
272         BSTR quotaTemplateName,
273         BSTR path,
274         IFsrmAutoApplyQuota **quota);
275 
276     HRESULT (STDMETHODCALLTYPE *GetQuota)(
277         IFsrmQuotaManager* This,
278         BSTR path,
279         IFsrmQuota **quota);
280 
281     HRESULT (STDMETHODCALLTYPE *GetAutoApplyQuota)(
282         IFsrmQuotaManager* This,
283         BSTR path,
284         IFsrmAutoApplyQuota **quota);
285 
286     HRESULT (STDMETHODCALLTYPE *GetRestrictiveQuota)(
287         IFsrmQuotaManager* This,
288         BSTR path,
289         IFsrmQuota **quota);
290 
291     HRESULT (STDMETHODCALLTYPE *EnumQuotas)(
292         IFsrmQuotaManager* This,
293         BSTR path,
294         FsrmEnumOptions options,
295         IFsrmCommittableCollection **quotas);
296 
297     HRESULT (STDMETHODCALLTYPE *EnumAutoApplyQuotas)(
298         IFsrmQuotaManager* This,
299         BSTR path,
300         FsrmEnumOptions options,
301         IFsrmCommittableCollection **quotas);
302 
303     HRESULT (STDMETHODCALLTYPE *EnumEffectiveQuotas)(
304         IFsrmQuotaManager* This,
305         BSTR path,
306         FsrmEnumOptions options,
307         IFsrmCommittableCollection **quotas);
308 
309     HRESULT (STDMETHODCALLTYPE *Scan)(
310         IFsrmQuotaManager* This,
311         BSTR strPath);
312 
313     HRESULT (STDMETHODCALLTYPE *CreateQuotaCollection)(
314         IFsrmQuotaManager* This,
315         IFsrmCommittableCollection **collection);
316 
317     END_INTERFACE
318 } IFsrmQuotaManagerVtbl;
319 interface IFsrmQuotaManager {
320     CONST_VTBL IFsrmQuotaManagerVtbl* lpVtbl;
321 };
322 
323 #ifdef COBJMACROS
324 #ifndef WIDL_C_INLINE_WRAPPERS
325 /*** IUnknown methods ***/
326 #define IFsrmQuotaManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
327 #define IFsrmQuotaManager_AddRef(This) (This)->lpVtbl->AddRef(This)
328 #define IFsrmQuotaManager_Release(This) (This)->lpVtbl->Release(This)
329 /*** IDispatch methods ***/
330 #define IFsrmQuotaManager_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
331 #define IFsrmQuotaManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
332 #define IFsrmQuotaManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
333 #define IFsrmQuotaManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
334 /*** IFsrmQuotaManager methods ***/
335 #define IFsrmQuotaManager_get_ActionVariables(This,variables) (This)->lpVtbl->get_ActionVariables(This,variables)
336 #define IFsrmQuotaManager_get_ActionVariableDescriptions(This,descriptions) (This)->lpVtbl->get_ActionVariableDescriptions(This,descriptions)
337 #define IFsrmQuotaManager_CreateQuota(This,path,quota) (This)->lpVtbl->CreateQuota(This,path,quota)
338 #define IFsrmQuotaManager_CreateAutoApplyQuota(This,quotaTemplateName,path,quota) (This)->lpVtbl->CreateAutoApplyQuota(This,quotaTemplateName,path,quota)
339 #define IFsrmQuotaManager_GetQuota(This,path,quota) (This)->lpVtbl->GetQuota(This,path,quota)
340 #define IFsrmQuotaManager_GetAutoApplyQuota(This,path,quota) (This)->lpVtbl->GetAutoApplyQuota(This,path,quota)
341 #define IFsrmQuotaManager_GetRestrictiveQuota(This,path,quota) (This)->lpVtbl->GetRestrictiveQuota(This,path,quota)
342 #define IFsrmQuotaManager_EnumQuotas(This,path,options,quotas) (This)->lpVtbl->EnumQuotas(This,path,options,quotas)
343 #define IFsrmQuotaManager_EnumAutoApplyQuotas(This,path,options,quotas) (This)->lpVtbl->EnumAutoApplyQuotas(This,path,options,quotas)
344 #define IFsrmQuotaManager_EnumEffectiveQuotas(This,path,options,quotas) (This)->lpVtbl->EnumEffectiveQuotas(This,path,options,quotas)
345 #define IFsrmQuotaManager_Scan(This,strPath) (This)->lpVtbl->Scan(This,strPath)
346 #define IFsrmQuotaManager_CreateQuotaCollection(This,collection) (This)->lpVtbl->CreateQuotaCollection(This,collection)
347 #else
348 /*** IUnknown methods ***/
349 static FORCEINLINE HRESULT IFsrmQuotaManager_QueryInterface(IFsrmQuotaManager* This,REFIID riid,void **ppvObject) {
350     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
351 }
352 static FORCEINLINE ULONG IFsrmQuotaManager_AddRef(IFsrmQuotaManager* This) {
353     return This->lpVtbl->AddRef(This);
354 }
355 static FORCEINLINE ULONG IFsrmQuotaManager_Release(IFsrmQuotaManager* This) {
356     return This->lpVtbl->Release(This);
357 }
358 /*** IDispatch methods ***/
359 static FORCEINLINE HRESULT IFsrmQuotaManager_GetTypeInfoCount(IFsrmQuotaManager* This,UINT *pctinfo) {
360     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
361 }
362 static FORCEINLINE HRESULT IFsrmQuotaManager_GetTypeInfo(IFsrmQuotaManager* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
363     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
364 }
365 static FORCEINLINE HRESULT IFsrmQuotaManager_GetIDsOfNames(IFsrmQuotaManager* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
366     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
367 }
368 static FORCEINLINE HRESULT IFsrmQuotaManager_Invoke(IFsrmQuotaManager* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
369     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
370 }
371 /*** IFsrmQuotaManager methods ***/
372 static FORCEINLINE HRESULT IFsrmQuotaManager_get_ActionVariables(IFsrmQuotaManager* This,SAFEARRAY **variables) {
373     return This->lpVtbl->get_ActionVariables(This,variables);
374 }
375 static FORCEINLINE HRESULT IFsrmQuotaManager_get_ActionVariableDescriptions(IFsrmQuotaManager* This,SAFEARRAY **descriptions) {
376     return This->lpVtbl->get_ActionVariableDescriptions(This,descriptions);
377 }
378 static FORCEINLINE HRESULT IFsrmQuotaManager_CreateQuota(IFsrmQuotaManager* This,BSTR path,IFsrmQuota **quota) {
379     return This->lpVtbl->CreateQuota(This,path,quota);
380 }
381 static FORCEINLINE HRESULT IFsrmQuotaManager_CreateAutoApplyQuota(IFsrmQuotaManager* This,BSTR quotaTemplateName,BSTR path,IFsrmAutoApplyQuota **quota) {
382     return This->lpVtbl->CreateAutoApplyQuota(This,quotaTemplateName,path,quota);
383 }
384 static FORCEINLINE HRESULT IFsrmQuotaManager_GetQuota(IFsrmQuotaManager* This,BSTR path,IFsrmQuota **quota) {
385     return This->lpVtbl->GetQuota(This,path,quota);
386 }
387 static FORCEINLINE HRESULT IFsrmQuotaManager_GetAutoApplyQuota(IFsrmQuotaManager* This,BSTR path,IFsrmAutoApplyQuota **quota) {
388     return This->lpVtbl->GetAutoApplyQuota(This,path,quota);
389 }
390 static FORCEINLINE HRESULT IFsrmQuotaManager_GetRestrictiveQuota(IFsrmQuotaManager* This,BSTR path,IFsrmQuota **quota) {
391     return This->lpVtbl->GetRestrictiveQuota(This,path,quota);
392 }
393 static FORCEINLINE HRESULT IFsrmQuotaManager_EnumQuotas(IFsrmQuotaManager* This,BSTR path,FsrmEnumOptions options,IFsrmCommittableCollection **quotas) {
394     return This->lpVtbl->EnumQuotas(This,path,options,quotas);
395 }
396 static FORCEINLINE HRESULT IFsrmQuotaManager_EnumAutoApplyQuotas(IFsrmQuotaManager* This,BSTR path,FsrmEnumOptions options,IFsrmCommittableCollection **quotas) {
397     return This->lpVtbl->EnumAutoApplyQuotas(This,path,options,quotas);
398 }
399 static FORCEINLINE HRESULT IFsrmQuotaManager_EnumEffectiveQuotas(IFsrmQuotaManager* This,BSTR path,FsrmEnumOptions options,IFsrmCommittableCollection **quotas) {
400     return This->lpVtbl->EnumEffectiveQuotas(This,path,options,quotas);
401 }
402 static FORCEINLINE HRESULT IFsrmQuotaManager_Scan(IFsrmQuotaManager* This,BSTR strPath) {
403     return This->lpVtbl->Scan(This,strPath);
404 }
405 static FORCEINLINE HRESULT IFsrmQuotaManager_CreateQuotaCollection(IFsrmQuotaManager* This,IFsrmCommittableCollection **collection) {
406     return This->lpVtbl->CreateQuotaCollection(This,collection);
407 }
408 #endif
409 #endif
410 
411 #endif
412 
413 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_get_ActionVariables_Proxy(
414     IFsrmQuotaManager* This,
415     SAFEARRAY **variables);
416 void __RPC_STUB IFsrmQuotaManager_get_ActionVariables_Stub(
417     IRpcStubBuffer* This,
418     IRpcChannelBuffer* pRpcChannelBuffer,
419     PRPC_MESSAGE pRpcMessage,
420     DWORD* pdwStubPhase);
421 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_get_ActionVariableDescriptions_Proxy(
422     IFsrmQuotaManager* This,
423     SAFEARRAY **descriptions);
424 void __RPC_STUB IFsrmQuotaManager_get_ActionVariableDescriptions_Stub(
425     IRpcStubBuffer* This,
426     IRpcChannelBuffer* pRpcChannelBuffer,
427     PRPC_MESSAGE pRpcMessage,
428     DWORD* pdwStubPhase);
429 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_CreateQuota_Proxy(
430     IFsrmQuotaManager* This,
431     BSTR path,
432     IFsrmQuota **quota);
433 void __RPC_STUB IFsrmQuotaManager_CreateQuota_Stub(
434     IRpcStubBuffer* This,
435     IRpcChannelBuffer* pRpcChannelBuffer,
436     PRPC_MESSAGE pRpcMessage,
437     DWORD* pdwStubPhase);
438 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_CreateAutoApplyQuota_Proxy(
439     IFsrmQuotaManager* This,
440     BSTR quotaTemplateName,
441     BSTR path,
442     IFsrmAutoApplyQuota **quota);
443 void __RPC_STUB IFsrmQuotaManager_CreateAutoApplyQuota_Stub(
444     IRpcStubBuffer* This,
445     IRpcChannelBuffer* pRpcChannelBuffer,
446     PRPC_MESSAGE pRpcMessage,
447     DWORD* pdwStubPhase);
448 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_GetQuota_Proxy(
449     IFsrmQuotaManager* This,
450     BSTR path,
451     IFsrmQuota **quota);
452 void __RPC_STUB IFsrmQuotaManager_GetQuota_Stub(
453     IRpcStubBuffer* This,
454     IRpcChannelBuffer* pRpcChannelBuffer,
455     PRPC_MESSAGE pRpcMessage,
456     DWORD* pdwStubPhase);
457 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_GetAutoApplyQuota_Proxy(
458     IFsrmQuotaManager* This,
459     BSTR path,
460     IFsrmAutoApplyQuota **quota);
461 void __RPC_STUB IFsrmQuotaManager_GetAutoApplyQuota_Stub(
462     IRpcStubBuffer* This,
463     IRpcChannelBuffer* pRpcChannelBuffer,
464     PRPC_MESSAGE pRpcMessage,
465     DWORD* pdwStubPhase);
466 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_GetRestrictiveQuota_Proxy(
467     IFsrmQuotaManager* This,
468     BSTR path,
469     IFsrmQuota **quota);
470 void __RPC_STUB IFsrmQuotaManager_GetRestrictiveQuota_Stub(
471     IRpcStubBuffer* This,
472     IRpcChannelBuffer* pRpcChannelBuffer,
473     PRPC_MESSAGE pRpcMessage,
474     DWORD* pdwStubPhase);
475 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_EnumQuotas_Proxy(
476     IFsrmQuotaManager* This,
477     BSTR path,
478     FsrmEnumOptions options,
479     IFsrmCommittableCollection **quotas);
480 void __RPC_STUB IFsrmQuotaManager_EnumQuotas_Stub(
481     IRpcStubBuffer* This,
482     IRpcChannelBuffer* pRpcChannelBuffer,
483     PRPC_MESSAGE pRpcMessage,
484     DWORD* pdwStubPhase);
485 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_EnumAutoApplyQuotas_Proxy(
486     IFsrmQuotaManager* This,
487     BSTR path,
488     FsrmEnumOptions options,
489     IFsrmCommittableCollection **quotas);
490 void __RPC_STUB IFsrmQuotaManager_EnumAutoApplyQuotas_Stub(
491     IRpcStubBuffer* This,
492     IRpcChannelBuffer* pRpcChannelBuffer,
493     PRPC_MESSAGE pRpcMessage,
494     DWORD* pdwStubPhase);
495 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_EnumEffectiveQuotas_Proxy(
496     IFsrmQuotaManager* This,
497     BSTR path,
498     FsrmEnumOptions options,
499     IFsrmCommittableCollection **quotas);
500 void __RPC_STUB IFsrmQuotaManager_EnumEffectiveQuotas_Stub(
501     IRpcStubBuffer* This,
502     IRpcChannelBuffer* pRpcChannelBuffer,
503     PRPC_MESSAGE pRpcMessage,
504     DWORD* pdwStubPhase);
505 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_Scan_Proxy(
506     IFsrmQuotaManager* This,
507     BSTR strPath);
508 void __RPC_STUB IFsrmQuotaManager_Scan_Stub(
509     IRpcStubBuffer* This,
510     IRpcChannelBuffer* pRpcChannelBuffer,
511     PRPC_MESSAGE pRpcMessage,
512     DWORD* pdwStubPhase);
513 HRESULT STDMETHODCALLTYPE IFsrmQuotaManager_CreateQuotaCollection_Proxy(
514     IFsrmQuotaManager* This,
515     IFsrmCommittableCollection **collection);
516 void __RPC_STUB IFsrmQuotaManager_CreateQuotaCollection_Stub(
517     IRpcStubBuffer* This,
518     IRpcChannelBuffer* pRpcChannelBuffer,
519     PRPC_MESSAGE pRpcMessage,
520     DWORD* pdwStubPhase);
521 
522 #endif  /* __IFsrmQuotaManager_INTERFACE_DEFINED__ */
523 
524 /*****************************************************************************
525  * IFsrmQuotaTemplateManager interface
526  */
527 #ifndef __IFsrmQuotaTemplateManager_INTERFACE_DEFINED__
528 #define __IFsrmQuotaTemplateManager_INTERFACE_DEFINED__
529 
530 DEFINE_GUID(IID_IFsrmQuotaTemplateManager, 0x4173ac41, 0x172d, 0x4d52, 0x96,0x3c, 0xfd,0xc7,0xe4,0x15,0xf7,0x17);
531 #if defined(__cplusplus) && !defined(CINTERFACE)
532 MIDL_INTERFACE("4173ac41-172d-4d52-963c-fdc7e415f717")
533 IFsrmQuotaTemplateManager : public IDispatch
534 {
535     virtual HRESULT STDMETHODCALLTYPE CreateTemplate(
536         IFsrmQuotaTemplate **quotaTemplate) = 0;
537 
538     virtual HRESULT STDMETHODCALLTYPE GetTemplate(
539         BSTR name,
540         IFsrmQuotaTemplate **quotaTemplate) = 0;
541 
542     virtual HRESULT STDMETHODCALLTYPE EnumTemplates(
543         FsrmEnumOptions options,
544         IFsrmCommittableCollection **quotaTemplates) = 0;
545 
546     virtual HRESULT STDMETHODCALLTYPE ExportTemplates(
547         VARIANT *quotaTemplateNamesArray,
548         BSTR *serializedQuotaTemplates) = 0;
549 
550     virtual HRESULT STDMETHODCALLTYPE ImportTemplates(
551         BSTR serializedQuotaTemplates,
552         VARIANT *quotaTemplateNamesArray,
553         IFsrmCommittableCollection **quotaTemplates) = 0;
554 
555 };
556 #ifdef __CRT_UUID_DECL
557 __CRT_UUID_DECL(IFsrmQuotaTemplateManager, 0x4173ac41, 0x172d, 0x4d52, 0x96,0x3c, 0xfd,0xc7,0xe4,0x15,0xf7,0x17)
558 #endif
559 #else
560 typedef struct IFsrmQuotaTemplateManagerVtbl {
561     BEGIN_INTERFACE
562 
563     /*** IUnknown methods ***/
564     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
565         IFsrmQuotaTemplateManager* This,
566         REFIID riid,
567         void **ppvObject);
568 
569     ULONG (STDMETHODCALLTYPE *AddRef)(
570         IFsrmQuotaTemplateManager* This);
571 
572     ULONG (STDMETHODCALLTYPE *Release)(
573         IFsrmQuotaTemplateManager* This);
574 
575     /*** IDispatch methods ***/
576     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
577         IFsrmQuotaTemplateManager* This,
578         UINT *pctinfo);
579 
580     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
581         IFsrmQuotaTemplateManager* This,
582         UINT iTInfo,
583         LCID lcid,
584         ITypeInfo **ppTInfo);
585 
586     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
587         IFsrmQuotaTemplateManager* This,
588         REFIID riid,
589         LPOLESTR *rgszNames,
590         UINT cNames,
591         LCID lcid,
592         DISPID *rgDispId);
593 
594     HRESULT (STDMETHODCALLTYPE *Invoke)(
595         IFsrmQuotaTemplateManager* This,
596         DISPID dispIdMember,
597         REFIID riid,
598         LCID lcid,
599         WORD wFlags,
600         DISPPARAMS *pDispParams,
601         VARIANT *pVarResult,
602         EXCEPINFO *pExcepInfo,
603         UINT *puArgErr);
604 
605     /*** IFsrmQuotaTemplateManager methods ***/
606     HRESULT (STDMETHODCALLTYPE *CreateTemplate)(
607         IFsrmQuotaTemplateManager* This,
608         IFsrmQuotaTemplate **quotaTemplate);
609 
610     HRESULT (STDMETHODCALLTYPE *GetTemplate)(
611         IFsrmQuotaTemplateManager* This,
612         BSTR name,
613         IFsrmQuotaTemplate **quotaTemplate);
614 
615     HRESULT (STDMETHODCALLTYPE *EnumTemplates)(
616         IFsrmQuotaTemplateManager* This,
617         FsrmEnumOptions options,
618         IFsrmCommittableCollection **quotaTemplates);
619 
620     HRESULT (STDMETHODCALLTYPE *ExportTemplates)(
621         IFsrmQuotaTemplateManager* This,
622         VARIANT *quotaTemplateNamesArray,
623         BSTR *serializedQuotaTemplates);
624 
625     HRESULT (STDMETHODCALLTYPE *ImportTemplates)(
626         IFsrmQuotaTemplateManager* This,
627         BSTR serializedQuotaTemplates,
628         VARIANT *quotaTemplateNamesArray,
629         IFsrmCommittableCollection **quotaTemplates);
630 
631     END_INTERFACE
632 } IFsrmQuotaTemplateManagerVtbl;
633 interface IFsrmQuotaTemplateManager {
634     CONST_VTBL IFsrmQuotaTemplateManagerVtbl* lpVtbl;
635 };
636 
637 #ifdef COBJMACROS
638 #ifndef WIDL_C_INLINE_WRAPPERS
639 /*** IUnknown methods ***/
640 #define IFsrmQuotaTemplateManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
641 #define IFsrmQuotaTemplateManager_AddRef(This) (This)->lpVtbl->AddRef(This)
642 #define IFsrmQuotaTemplateManager_Release(This) (This)->lpVtbl->Release(This)
643 /*** IDispatch methods ***/
644 #define IFsrmQuotaTemplateManager_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
645 #define IFsrmQuotaTemplateManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
646 #define IFsrmQuotaTemplateManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
647 #define IFsrmQuotaTemplateManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
648 /*** IFsrmQuotaTemplateManager methods ***/
649 #define IFsrmQuotaTemplateManager_CreateTemplate(This,quotaTemplate) (This)->lpVtbl->CreateTemplate(This,quotaTemplate)
650 #define IFsrmQuotaTemplateManager_GetTemplate(This,name,quotaTemplate) (This)->lpVtbl->GetTemplate(This,name,quotaTemplate)
651 #define IFsrmQuotaTemplateManager_EnumTemplates(This,options,quotaTemplates) (This)->lpVtbl->EnumTemplates(This,options,quotaTemplates)
652 #define IFsrmQuotaTemplateManager_ExportTemplates(This,quotaTemplateNamesArray,serializedQuotaTemplates) (This)->lpVtbl->ExportTemplates(This,quotaTemplateNamesArray,serializedQuotaTemplates)
653 #define IFsrmQuotaTemplateManager_ImportTemplates(This,serializedQuotaTemplates,quotaTemplateNamesArray,quotaTemplates) (This)->lpVtbl->ImportTemplates(This,serializedQuotaTemplates,quotaTemplateNamesArray,quotaTemplates)
654 #else
655 /*** IUnknown methods ***/
656 static FORCEINLINE HRESULT IFsrmQuotaTemplateManager_QueryInterface(IFsrmQuotaTemplateManager* This,REFIID riid,void **ppvObject) {
657     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
658 }
659 static FORCEINLINE ULONG IFsrmQuotaTemplateManager_AddRef(IFsrmQuotaTemplateManager* This) {
660     return This->lpVtbl->AddRef(This);
661 }
662 static FORCEINLINE ULONG IFsrmQuotaTemplateManager_Release(IFsrmQuotaTemplateManager* This) {
663     return This->lpVtbl->Release(This);
664 }
665 /*** IDispatch methods ***/
666 static FORCEINLINE HRESULT IFsrmQuotaTemplateManager_GetTypeInfoCount(IFsrmQuotaTemplateManager* This,UINT *pctinfo) {
667     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
668 }
669 static FORCEINLINE HRESULT IFsrmQuotaTemplateManager_GetTypeInfo(IFsrmQuotaTemplateManager* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
670     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
671 }
672 static FORCEINLINE HRESULT IFsrmQuotaTemplateManager_GetIDsOfNames(IFsrmQuotaTemplateManager* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
673     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
674 }
675 static FORCEINLINE HRESULT IFsrmQuotaTemplateManager_Invoke(IFsrmQuotaTemplateManager* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
676     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
677 }
678 /*** IFsrmQuotaTemplateManager methods ***/
679 static FORCEINLINE HRESULT IFsrmQuotaTemplateManager_CreateTemplate(IFsrmQuotaTemplateManager* This,IFsrmQuotaTemplate **quotaTemplate) {
680     return This->lpVtbl->CreateTemplate(This,quotaTemplate);
681 }
682 static FORCEINLINE HRESULT IFsrmQuotaTemplateManager_GetTemplate(IFsrmQuotaTemplateManager* This,BSTR name,IFsrmQuotaTemplate **quotaTemplate) {
683     return This->lpVtbl->GetTemplate(This,name,quotaTemplate);
684 }
685 static FORCEINLINE HRESULT IFsrmQuotaTemplateManager_EnumTemplates(IFsrmQuotaTemplateManager* This,FsrmEnumOptions options,IFsrmCommittableCollection **quotaTemplates) {
686     return This->lpVtbl->EnumTemplates(This,options,quotaTemplates);
687 }
688 static FORCEINLINE HRESULT IFsrmQuotaTemplateManager_ExportTemplates(IFsrmQuotaTemplateManager* This,VARIANT *quotaTemplateNamesArray,BSTR *serializedQuotaTemplates) {
689     return This->lpVtbl->ExportTemplates(This,quotaTemplateNamesArray,serializedQuotaTemplates);
690 }
691 static FORCEINLINE HRESULT IFsrmQuotaTemplateManager_ImportTemplates(IFsrmQuotaTemplateManager* This,BSTR serializedQuotaTemplates,VARIANT *quotaTemplateNamesArray,IFsrmCommittableCollection **quotaTemplates) {
692     return This->lpVtbl->ImportTemplates(This,serializedQuotaTemplates,quotaTemplateNamesArray,quotaTemplates);
693 }
694 #endif
695 #endif
696 
697 #endif
698 
699 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplateManager_CreateTemplate_Proxy(
700     IFsrmQuotaTemplateManager* This,
701     IFsrmQuotaTemplate **quotaTemplate);
702 void __RPC_STUB IFsrmQuotaTemplateManager_CreateTemplate_Stub(
703     IRpcStubBuffer* This,
704     IRpcChannelBuffer* pRpcChannelBuffer,
705     PRPC_MESSAGE pRpcMessage,
706     DWORD* pdwStubPhase);
707 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplateManager_GetTemplate_Proxy(
708     IFsrmQuotaTemplateManager* This,
709     BSTR name,
710     IFsrmQuotaTemplate **quotaTemplate);
711 void __RPC_STUB IFsrmQuotaTemplateManager_GetTemplate_Stub(
712     IRpcStubBuffer* This,
713     IRpcChannelBuffer* pRpcChannelBuffer,
714     PRPC_MESSAGE pRpcMessage,
715     DWORD* pdwStubPhase);
716 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplateManager_EnumTemplates_Proxy(
717     IFsrmQuotaTemplateManager* This,
718     FsrmEnumOptions options,
719     IFsrmCommittableCollection **quotaTemplates);
720 void __RPC_STUB IFsrmQuotaTemplateManager_EnumTemplates_Stub(
721     IRpcStubBuffer* This,
722     IRpcChannelBuffer* pRpcChannelBuffer,
723     PRPC_MESSAGE pRpcMessage,
724     DWORD* pdwStubPhase);
725 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplateManager_ExportTemplates_Proxy(
726     IFsrmQuotaTemplateManager* This,
727     VARIANT *quotaTemplateNamesArray,
728     BSTR *serializedQuotaTemplates);
729 void __RPC_STUB IFsrmQuotaTemplateManager_ExportTemplates_Stub(
730     IRpcStubBuffer* This,
731     IRpcChannelBuffer* pRpcChannelBuffer,
732     PRPC_MESSAGE pRpcMessage,
733     DWORD* pdwStubPhase);
734 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplateManager_ImportTemplates_Proxy(
735     IFsrmQuotaTemplateManager* This,
736     BSTR serializedQuotaTemplates,
737     VARIANT *quotaTemplateNamesArray,
738     IFsrmCommittableCollection **quotaTemplates);
739 void __RPC_STUB IFsrmQuotaTemplateManager_ImportTemplates_Stub(
740     IRpcStubBuffer* This,
741     IRpcChannelBuffer* pRpcChannelBuffer,
742     PRPC_MESSAGE pRpcMessage,
743     DWORD* pdwStubPhase);
744 
745 #endif  /* __IFsrmQuotaTemplateManager_INTERFACE_DEFINED__ */
746 
747 /*****************************************************************************
748  * IFsrmQuotaBase interface
749  */
750 #ifndef __IFsrmQuotaBase_INTERFACE_DEFINED__
751 #define __IFsrmQuotaBase_INTERFACE_DEFINED__
752 
753 DEFINE_GUID(IID_IFsrmQuotaBase, 0x1568a795, 0x3924, 0x4118, 0xb7,0x4b, 0x68,0xd8,0xf0,0xfa,0x5d,0xaf);
754 #if defined(__cplusplus) && !defined(CINTERFACE)
755 MIDL_INTERFACE("1568a795-3924-4118-b74b-68d8f0fa5daf")
756 IFsrmQuotaBase : public IFsrmObject
757 {
758     virtual HRESULT STDMETHODCALLTYPE get_QuotaLimit(
759         VARIANT *quotaLimit) = 0;
760 
761     virtual HRESULT STDMETHODCALLTYPE put_QuotaLimit(
762         VARIANT quotaLimit) = 0;
763 
764     virtual HRESULT STDMETHODCALLTYPE get_QuotaFlags(
765         LONG *quotaFlags) = 0;
766 
767     virtual HRESULT STDMETHODCALLTYPE put_QuotaFlags(
768         LONG quotaFlags) = 0;
769 
770     virtual HRESULT STDMETHODCALLTYPE get_Thresholds(
771         SAFEARRAY **thresholds) = 0;
772 
773     virtual HRESULT STDMETHODCALLTYPE AddThreshold(
774         FSRM_QUOTA_THRESHOLD threshold) = 0;
775 
776     virtual HRESULT STDMETHODCALLTYPE DeleteThreshold(
777         FSRM_QUOTA_THRESHOLD threshold) = 0;
778 
779     virtual HRESULT STDMETHODCALLTYPE ModifyThreshold(
780         FSRM_QUOTA_THRESHOLD threshold,
781         FSRM_QUOTA_THRESHOLD newThreshold) = 0;
782 
783     virtual HRESULT STDMETHODCALLTYPE CreateThresholdAction(
784         FSRM_QUOTA_THRESHOLD threshold,
785         FsrmActionType actionType,
786         IFsrmAction **action) = 0;
787 
788     virtual HRESULT STDMETHODCALLTYPE EnumThresholdActions(
789         FSRM_QUOTA_THRESHOLD threshold,
790         IFsrmCollection **actions) = 0;
791 
792 };
793 #ifdef __CRT_UUID_DECL
794 __CRT_UUID_DECL(IFsrmQuotaBase, 0x1568a795, 0x3924, 0x4118, 0xb7,0x4b, 0x68,0xd8,0xf0,0xfa,0x5d,0xaf)
795 #endif
796 #else
797 typedef struct IFsrmQuotaBaseVtbl {
798     BEGIN_INTERFACE
799 
800     /*** IUnknown methods ***/
801     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
802         IFsrmQuotaBase* This,
803         REFIID riid,
804         void **ppvObject);
805 
806     ULONG (STDMETHODCALLTYPE *AddRef)(
807         IFsrmQuotaBase* This);
808 
809     ULONG (STDMETHODCALLTYPE *Release)(
810         IFsrmQuotaBase* This);
811 
812     /*** IDispatch methods ***/
813     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
814         IFsrmQuotaBase* This,
815         UINT *pctinfo);
816 
817     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
818         IFsrmQuotaBase* This,
819         UINT iTInfo,
820         LCID lcid,
821         ITypeInfo **ppTInfo);
822 
823     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
824         IFsrmQuotaBase* This,
825         REFIID riid,
826         LPOLESTR *rgszNames,
827         UINT cNames,
828         LCID lcid,
829         DISPID *rgDispId);
830 
831     HRESULT (STDMETHODCALLTYPE *Invoke)(
832         IFsrmQuotaBase* This,
833         DISPID dispIdMember,
834         REFIID riid,
835         LCID lcid,
836         WORD wFlags,
837         DISPPARAMS *pDispParams,
838         VARIANT *pVarResult,
839         EXCEPINFO *pExcepInfo,
840         UINT *puArgErr);
841 
842     /*** IFsrmObject methods ***/
843     HRESULT (STDMETHODCALLTYPE *get_Id)(
844         IFsrmQuotaBase* This,
845         FSRM_OBJECT_ID *id);
846 
847     HRESULT (STDMETHODCALLTYPE *get_Description)(
848         IFsrmQuotaBase* This,
849         BSTR *description);
850 
851     HRESULT (STDMETHODCALLTYPE *put_Description)(
852         IFsrmQuotaBase* This,
853         BSTR description);
854 
855     HRESULT (STDMETHODCALLTYPE *Delete)(
856         IFsrmQuotaBase* This);
857 
858     HRESULT (STDMETHODCALLTYPE *Commit)(
859         IFsrmQuotaBase* This);
860 
861     /*** IFsrmQuotaBase methods ***/
862     HRESULT (STDMETHODCALLTYPE *get_QuotaLimit)(
863         IFsrmQuotaBase* This,
864         VARIANT *quotaLimit);
865 
866     HRESULT (STDMETHODCALLTYPE *put_QuotaLimit)(
867         IFsrmQuotaBase* This,
868         VARIANT quotaLimit);
869 
870     HRESULT (STDMETHODCALLTYPE *get_QuotaFlags)(
871         IFsrmQuotaBase* This,
872         LONG *quotaFlags);
873 
874     HRESULT (STDMETHODCALLTYPE *put_QuotaFlags)(
875         IFsrmQuotaBase* This,
876         LONG quotaFlags);
877 
878     HRESULT (STDMETHODCALLTYPE *get_Thresholds)(
879         IFsrmQuotaBase* This,
880         SAFEARRAY **thresholds);
881 
882     HRESULT (STDMETHODCALLTYPE *AddThreshold)(
883         IFsrmQuotaBase* This,
884         FSRM_QUOTA_THRESHOLD threshold);
885 
886     HRESULT (STDMETHODCALLTYPE *DeleteThreshold)(
887         IFsrmQuotaBase* This,
888         FSRM_QUOTA_THRESHOLD threshold);
889 
890     HRESULT (STDMETHODCALLTYPE *ModifyThreshold)(
891         IFsrmQuotaBase* This,
892         FSRM_QUOTA_THRESHOLD threshold,
893         FSRM_QUOTA_THRESHOLD newThreshold);
894 
895     HRESULT (STDMETHODCALLTYPE *CreateThresholdAction)(
896         IFsrmQuotaBase* This,
897         FSRM_QUOTA_THRESHOLD threshold,
898         FsrmActionType actionType,
899         IFsrmAction **action);
900 
901     HRESULT (STDMETHODCALLTYPE *EnumThresholdActions)(
902         IFsrmQuotaBase* This,
903         FSRM_QUOTA_THRESHOLD threshold,
904         IFsrmCollection **actions);
905 
906     END_INTERFACE
907 } IFsrmQuotaBaseVtbl;
908 interface IFsrmQuotaBase {
909     CONST_VTBL IFsrmQuotaBaseVtbl* lpVtbl;
910 };
911 
912 #ifdef COBJMACROS
913 #ifndef WIDL_C_INLINE_WRAPPERS
914 /*** IUnknown methods ***/
915 #define IFsrmQuotaBase_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
916 #define IFsrmQuotaBase_AddRef(This) (This)->lpVtbl->AddRef(This)
917 #define IFsrmQuotaBase_Release(This) (This)->lpVtbl->Release(This)
918 /*** IDispatch methods ***/
919 #define IFsrmQuotaBase_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
920 #define IFsrmQuotaBase_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
921 #define IFsrmQuotaBase_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
922 #define IFsrmQuotaBase_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
923 /*** IFsrmObject methods ***/
924 #define IFsrmQuotaBase_get_Id(This,id) (This)->lpVtbl->get_Id(This,id)
925 #define IFsrmQuotaBase_get_Description(This,description) (This)->lpVtbl->get_Description(This,description)
926 #define IFsrmQuotaBase_put_Description(This,description) (This)->lpVtbl->put_Description(This,description)
927 #define IFsrmQuotaBase_Delete(This) (This)->lpVtbl->Delete(This)
928 #define IFsrmQuotaBase_Commit(This) (This)->lpVtbl->Commit(This)
929 /*** IFsrmQuotaBase methods ***/
930 #define IFsrmQuotaBase_get_QuotaLimit(This,quotaLimit) (This)->lpVtbl->get_QuotaLimit(This,quotaLimit)
931 #define IFsrmQuotaBase_put_QuotaLimit(This,quotaLimit) (This)->lpVtbl->put_QuotaLimit(This,quotaLimit)
932 #define IFsrmQuotaBase_get_QuotaFlags(This,quotaFlags) (This)->lpVtbl->get_QuotaFlags(This,quotaFlags)
933 #define IFsrmQuotaBase_put_QuotaFlags(This,quotaFlags) (This)->lpVtbl->put_QuotaFlags(This,quotaFlags)
934 #define IFsrmQuotaBase_get_Thresholds(This,thresholds) (This)->lpVtbl->get_Thresholds(This,thresholds)
935 #define IFsrmQuotaBase_AddThreshold(This,threshold) (This)->lpVtbl->AddThreshold(This,threshold)
936 #define IFsrmQuotaBase_DeleteThreshold(This,threshold) (This)->lpVtbl->DeleteThreshold(This,threshold)
937 #define IFsrmQuotaBase_ModifyThreshold(This,threshold,newThreshold) (This)->lpVtbl->ModifyThreshold(This,threshold,newThreshold)
938 #define IFsrmQuotaBase_CreateThresholdAction(This,threshold,actionType,action) (This)->lpVtbl->CreateThresholdAction(This,threshold,actionType,action)
939 #define IFsrmQuotaBase_EnumThresholdActions(This,threshold,actions) (This)->lpVtbl->EnumThresholdActions(This,threshold,actions)
940 #else
941 /*** IUnknown methods ***/
942 static FORCEINLINE HRESULT IFsrmQuotaBase_QueryInterface(IFsrmQuotaBase* This,REFIID riid,void **ppvObject) {
943     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
944 }
945 static FORCEINLINE ULONG IFsrmQuotaBase_AddRef(IFsrmQuotaBase* This) {
946     return This->lpVtbl->AddRef(This);
947 }
948 static FORCEINLINE ULONG IFsrmQuotaBase_Release(IFsrmQuotaBase* This) {
949     return This->lpVtbl->Release(This);
950 }
951 /*** IDispatch methods ***/
952 static FORCEINLINE HRESULT IFsrmQuotaBase_GetTypeInfoCount(IFsrmQuotaBase* This,UINT *pctinfo) {
953     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
954 }
955 static FORCEINLINE HRESULT IFsrmQuotaBase_GetTypeInfo(IFsrmQuotaBase* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
956     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
957 }
958 static FORCEINLINE HRESULT IFsrmQuotaBase_GetIDsOfNames(IFsrmQuotaBase* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
959     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
960 }
961 static FORCEINLINE HRESULT IFsrmQuotaBase_Invoke(IFsrmQuotaBase* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
962     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
963 }
964 /*** IFsrmObject methods ***/
965 static FORCEINLINE HRESULT IFsrmQuotaBase_get_Id(IFsrmQuotaBase* This,FSRM_OBJECT_ID *id) {
966     return This->lpVtbl->get_Id(This,id);
967 }
968 static FORCEINLINE HRESULT IFsrmQuotaBase_get_Description(IFsrmQuotaBase* This,BSTR *description) {
969     return This->lpVtbl->get_Description(This,description);
970 }
971 static FORCEINLINE HRESULT IFsrmQuotaBase_put_Description(IFsrmQuotaBase* This,BSTR description) {
972     return This->lpVtbl->put_Description(This,description);
973 }
974 static FORCEINLINE HRESULT IFsrmQuotaBase_Delete(IFsrmQuotaBase* This) {
975     return This->lpVtbl->Delete(This);
976 }
977 static FORCEINLINE HRESULT IFsrmQuotaBase_Commit(IFsrmQuotaBase* This) {
978     return This->lpVtbl->Commit(This);
979 }
980 /*** IFsrmQuotaBase methods ***/
981 static FORCEINLINE HRESULT IFsrmQuotaBase_get_QuotaLimit(IFsrmQuotaBase* This,VARIANT *quotaLimit) {
982     return This->lpVtbl->get_QuotaLimit(This,quotaLimit);
983 }
984 static FORCEINLINE HRESULT IFsrmQuotaBase_put_QuotaLimit(IFsrmQuotaBase* This,VARIANT quotaLimit) {
985     return This->lpVtbl->put_QuotaLimit(This,quotaLimit);
986 }
987 static FORCEINLINE HRESULT IFsrmQuotaBase_get_QuotaFlags(IFsrmQuotaBase* This,LONG *quotaFlags) {
988     return This->lpVtbl->get_QuotaFlags(This,quotaFlags);
989 }
990 static FORCEINLINE HRESULT IFsrmQuotaBase_put_QuotaFlags(IFsrmQuotaBase* This,LONG quotaFlags) {
991     return This->lpVtbl->put_QuotaFlags(This,quotaFlags);
992 }
993 static FORCEINLINE HRESULT IFsrmQuotaBase_get_Thresholds(IFsrmQuotaBase* This,SAFEARRAY **thresholds) {
994     return This->lpVtbl->get_Thresholds(This,thresholds);
995 }
996 static FORCEINLINE HRESULT IFsrmQuotaBase_AddThreshold(IFsrmQuotaBase* This,FSRM_QUOTA_THRESHOLD threshold) {
997     return This->lpVtbl->AddThreshold(This,threshold);
998 }
999 static FORCEINLINE HRESULT IFsrmQuotaBase_DeleteThreshold(IFsrmQuotaBase* This,FSRM_QUOTA_THRESHOLD threshold) {
1000     return This->lpVtbl->DeleteThreshold(This,threshold);
1001 }
1002 static FORCEINLINE HRESULT IFsrmQuotaBase_ModifyThreshold(IFsrmQuotaBase* This,FSRM_QUOTA_THRESHOLD threshold,FSRM_QUOTA_THRESHOLD newThreshold) {
1003     return This->lpVtbl->ModifyThreshold(This,threshold,newThreshold);
1004 }
1005 static FORCEINLINE HRESULT IFsrmQuotaBase_CreateThresholdAction(IFsrmQuotaBase* This,FSRM_QUOTA_THRESHOLD threshold,FsrmActionType actionType,IFsrmAction **action) {
1006     return This->lpVtbl->CreateThresholdAction(This,threshold,actionType,action);
1007 }
1008 static FORCEINLINE HRESULT IFsrmQuotaBase_EnumThresholdActions(IFsrmQuotaBase* This,FSRM_QUOTA_THRESHOLD threshold,IFsrmCollection **actions) {
1009     return This->lpVtbl->EnumThresholdActions(This,threshold,actions);
1010 }
1011 #endif
1012 #endif
1013 
1014 #endif
1015 
1016 HRESULT STDMETHODCALLTYPE IFsrmQuotaBase_get_QuotaLimit_Proxy(
1017     IFsrmQuotaBase* This,
1018     VARIANT *quotaLimit);
1019 void __RPC_STUB IFsrmQuotaBase_get_QuotaLimit_Stub(
1020     IRpcStubBuffer* This,
1021     IRpcChannelBuffer* pRpcChannelBuffer,
1022     PRPC_MESSAGE pRpcMessage,
1023     DWORD* pdwStubPhase);
1024 HRESULT STDMETHODCALLTYPE IFsrmQuotaBase_put_QuotaLimit_Proxy(
1025     IFsrmQuotaBase* This,
1026     VARIANT quotaLimit);
1027 void __RPC_STUB IFsrmQuotaBase_put_QuotaLimit_Stub(
1028     IRpcStubBuffer* This,
1029     IRpcChannelBuffer* pRpcChannelBuffer,
1030     PRPC_MESSAGE pRpcMessage,
1031     DWORD* pdwStubPhase);
1032 HRESULT STDMETHODCALLTYPE IFsrmQuotaBase_get_QuotaFlags_Proxy(
1033     IFsrmQuotaBase* This,
1034     LONG *quotaFlags);
1035 void __RPC_STUB IFsrmQuotaBase_get_QuotaFlags_Stub(
1036     IRpcStubBuffer* This,
1037     IRpcChannelBuffer* pRpcChannelBuffer,
1038     PRPC_MESSAGE pRpcMessage,
1039     DWORD* pdwStubPhase);
1040 HRESULT STDMETHODCALLTYPE IFsrmQuotaBase_put_QuotaFlags_Proxy(
1041     IFsrmQuotaBase* This,
1042     LONG quotaFlags);
1043 void __RPC_STUB IFsrmQuotaBase_put_QuotaFlags_Stub(
1044     IRpcStubBuffer* This,
1045     IRpcChannelBuffer* pRpcChannelBuffer,
1046     PRPC_MESSAGE pRpcMessage,
1047     DWORD* pdwStubPhase);
1048 HRESULT STDMETHODCALLTYPE IFsrmQuotaBase_get_Thresholds_Proxy(
1049     IFsrmQuotaBase* This,
1050     SAFEARRAY **thresholds);
1051 void __RPC_STUB IFsrmQuotaBase_get_Thresholds_Stub(
1052     IRpcStubBuffer* This,
1053     IRpcChannelBuffer* pRpcChannelBuffer,
1054     PRPC_MESSAGE pRpcMessage,
1055     DWORD* pdwStubPhase);
1056 HRESULT STDMETHODCALLTYPE IFsrmQuotaBase_AddThreshold_Proxy(
1057     IFsrmQuotaBase* This,
1058     FSRM_QUOTA_THRESHOLD threshold);
1059 void __RPC_STUB IFsrmQuotaBase_AddThreshold_Stub(
1060     IRpcStubBuffer* This,
1061     IRpcChannelBuffer* pRpcChannelBuffer,
1062     PRPC_MESSAGE pRpcMessage,
1063     DWORD* pdwStubPhase);
1064 HRESULT STDMETHODCALLTYPE IFsrmQuotaBase_DeleteThreshold_Proxy(
1065     IFsrmQuotaBase* This,
1066     FSRM_QUOTA_THRESHOLD threshold);
1067 void __RPC_STUB IFsrmQuotaBase_DeleteThreshold_Stub(
1068     IRpcStubBuffer* This,
1069     IRpcChannelBuffer* pRpcChannelBuffer,
1070     PRPC_MESSAGE pRpcMessage,
1071     DWORD* pdwStubPhase);
1072 HRESULT STDMETHODCALLTYPE IFsrmQuotaBase_ModifyThreshold_Proxy(
1073     IFsrmQuotaBase* This,
1074     FSRM_QUOTA_THRESHOLD threshold,
1075     FSRM_QUOTA_THRESHOLD newThreshold);
1076 void __RPC_STUB IFsrmQuotaBase_ModifyThreshold_Stub(
1077     IRpcStubBuffer* This,
1078     IRpcChannelBuffer* pRpcChannelBuffer,
1079     PRPC_MESSAGE pRpcMessage,
1080     DWORD* pdwStubPhase);
1081 HRESULT STDMETHODCALLTYPE IFsrmQuotaBase_CreateThresholdAction_Proxy(
1082     IFsrmQuotaBase* This,
1083     FSRM_QUOTA_THRESHOLD threshold,
1084     FsrmActionType actionType,
1085     IFsrmAction **action);
1086 void __RPC_STUB IFsrmQuotaBase_CreateThresholdAction_Stub(
1087     IRpcStubBuffer* This,
1088     IRpcChannelBuffer* pRpcChannelBuffer,
1089     PRPC_MESSAGE pRpcMessage,
1090     DWORD* pdwStubPhase);
1091 HRESULT STDMETHODCALLTYPE IFsrmQuotaBase_EnumThresholdActions_Proxy(
1092     IFsrmQuotaBase* This,
1093     FSRM_QUOTA_THRESHOLD threshold,
1094     IFsrmCollection **actions);
1095 void __RPC_STUB IFsrmQuotaBase_EnumThresholdActions_Stub(
1096     IRpcStubBuffer* This,
1097     IRpcChannelBuffer* pRpcChannelBuffer,
1098     PRPC_MESSAGE pRpcMessage,
1099     DWORD* pdwStubPhase);
1100 
1101 #endif  /* __IFsrmQuotaBase_INTERFACE_DEFINED__ */
1102 
1103 /*****************************************************************************
1104  * IFsrmQuotaObject interface
1105  */
1106 #ifndef __IFsrmQuotaObject_INTERFACE_DEFINED__
1107 #define __IFsrmQuotaObject_INTERFACE_DEFINED__
1108 
1109 DEFINE_GUID(IID_IFsrmQuotaObject, 0x42dc3511, 0x61d5, 0x48ae, 0xb6,0xdc, 0x59,0xfc,0x00,0xc0,0xa8,0xd6);
1110 #if defined(__cplusplus) && !defined(CINTERFACE)
1111 MIDL_INTERFACE("42dc3511-61d5-48ae-b6dc-59fc00c0a8d6")
1112 IFsrmQuotaObject : public IFsrmQuotaBase
1113 {
1114     virtual HRESULT STDMETHODCALLTYPE get_Path(
1115         BSTR *path) = 0;
1116 
1117     virtual HRESULT STDMETHODCALLTYPE get_UserSid(
1118         BSTR *userSid) = 0;
1119 
1120     virtual HRESULT STDMETHODCALLTYPE get_UserAccount(
1121         BSTR *userAccount) = 0;
1122 
1123     virtual HRESULT STDMETHODCALLTYPE get_SourceTemplateName(
1124         BSTR *quotaTemplateName) = 0;
1125 
1126     virtual HRESULT STDMETHODCALLTYPE get_MatchesSourceTemplate(
1127         VARIANT_BOOL *matches) = 0;
1128 
1129     virtual HRESULT STDMETHODCALLTYPE ApplyTemplate(
1130         BSTR quotaTemplateName) = 0;
1131 
1132 };
1133 #ifdef __CRT_UUID_DECL
1134 __CRT_UUID_DECL(IFsrmQuotaObject, 0x42dc3511, 0x61d5, 0x48ae, 0xb6,0xdc, 0x59,0xfc,0x00,0xc0,0xa8,0xd6)
1135 #endif
1136 #else
1137 typedef struct IFsrmQuotaObjectVtbl {
1138     BEGIN_INTERFACE
1139 
1140     /*** IUnknown methods ***/
1141     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1142         IFsrmQuotaObject* This,
1143         REFIID riid,
1144         void **ppvObject);
1145 
1146     ULONG (STDMETHODCALLTYPE *AddRef)(
1147         IFsrmQuotaObject* This);
1148 
1149     ULONG (STDMETHODCALLTYPE *Release)(
1150         IFsrmQuotaObject* This);
1151 
1152     /*** IDispatch methods ***/
1153     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1154         IFsrmQuotaObject* This,
1155         UINT *pctinfo);
1156 
1157     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1158         IFsrmQuotaObject* This,
1159         UINT iTInfo,
1160         LCID lcid,
1161         ITypeInfo **ppTInfo);
1162 
1163     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1164         IFsrmQuotaObject* This,
1165         REFIID riid,
1166         LPOLESTR *rgszNames,
1167         UINT cNames,
1168         LCID lcid,
1169         DISPID *rgDispId);
1170 
1171     HRESULT (STDMETHODCALLTYPE *Invoke)(
1172         IFsrmQuotaObject* This,
1173         DISPID dispIdMember,
1174         REFIID riid,
1175         LCID lcid,
1176         WORD wFlags,
1177         DISPPARAMS *pDispParams,
1178         VARIANT *pVarResult,
1179         EXCEPINFO *pExcepInfo,
1180         UINT *puArgErr);
1181 
1182     /*** IFsrmObject methods ***/
1183     HRESULT (STDMETHODCALLTYPE *get_Id)(
1184         IFsrmQuotaObject* This,
1185         FSRM_OBJECT_ID *id);
1186 
1187     HRESULT (STDMETHODCALLTYPE *get_Description)(
1188         IFsrmQuotaObject* This,
1189         BSTR *description);
1190 
1191     HRESULT (STDMETHODCALLTYPE *put_Description)(
1192         IFsrmQuotaObject* This,
1193         BSTR description);
1194 
1195     HRESULT (STDMETHODCALLTYPE *Delete)(
1196         IFsrmQuotaObject* This);
1197 
1198     HRESULT (STDMETHODCALLTYPE *Commit)(
1199         IFsrmQuotaObject* This);
1200 
1201     /*** IFsrmQuotaBase methods ***/
1202     HRESULT (STDMETHODCALLTYPE *get_QuotaLimit)(
1203         IFsrmQuotaObject* This,
1204         VARIANT *quotaLimit);
1205 
1206     HRESULT (STDMETHODCALLTYPE *put_QuotaLimit)(
1207         IFsrmQuotaObject* This,
1208         VARIANT quotaLimit);
1209 
1210     HRESULT (STDMETHODCALLTYPE *get_QuotaFlags)(
1211         IFsrmQuotaObject* This,
1212         LONG *quotaFlags);
1213 
1214     HRESULT (STDMETHODCALLTYPE *put_QuotaFlags)(
1215         IFsrmQuotaObject* This,
1216         LONG quotaFlags);
1217 
1218     HRESULT (STDMETHODCALLTYPE *get_Thresholds)(
1219         IFsrmQuotaObject* This,
1220         SAFEARRAY **thresholds);
1221 
1222     HRESULT (STDMETHODCALLTYPE *AddThreshold)(
1223         IFsrmQuotaObject* This,
1224         FSRM_QUOTA_THRESHOLD threshold);
1225 
1226     HRESULT (STDMETHODCALLTYPE *DeleteThreshold)(
1227         IFsrmQuotaObject* This,
1228         FSRM_QUOTA_THRESHOLD threshold);
1229 
1230     HRESULT (STDMETHODCALLTYPE *ModifyThreshold)(
1231         IFsrmQuotaObject* This,
1232         FSRM_QUOTA_THRESHOLD threshold,
1233         FSRM_QUOTA_THRESHOLD newThreshold);
1234 
1235     HRESULT (STDMETHODCALLTYPE *CreateThresholdAction)(
1236         IFsrmQuotaObject* This,
1237         FSRM_QUOTA_THRESHOLD threshold,
1238         FsrmActionType actionType,
1239         IFsrmAction **action);
1240 
1241     HRESULT (STDMETHODCALLTYPE *EnumThresholdActions)(
1242         IFsrmQuotaObject* This,
1243         FSRM_QUOTA_THRESHOLD threshold,
1244         IFsrmCollection **actions);
1245 
1246     /*** IFsrmQuotaObject methods ***/
1247     HRESULT (STDMETHODCALLTYPE *get_Path)(
1248         IFsrmQuotaObject* This,
1249         BSTR *path);
1250 
1251     HRESULT (STDMETHODCALLTYPE *get_UserSid)(
1252         IFsrmQuotaObject* This,
1253         BSTR *userSid);
1254 
1255     HRESULT (STDMETHODCALLTYPE *get_UserAccount)(
1256         IFsrmQuotaObject* This,
1257         BSTR *userAccount);
1258 
1259     HRESULT (STDMETHODCALLTYPE *get_SourceTemplateName)(
1260         IFsrmQuotaObject* This,
1261         BSTR *quotaTemplateName);
1262 
1263     HRESULT (STDMETHODCALLTYPE *get_MatchesSourceTemplate)(
1264         IFsrmQuotaObject* This,
1265         VARIANT_BOOL *matches);
1266 
1267     HRESULT (STDMETHODCALLTYPE *ApplyTemplate)(
1268         IFsrmQuotaObject* This,
1269         BSTR quotaTemplateName);
1270 
1271     END_INTERFACE
1272 } IFsrmQuotaObjectVtbl;
1273 interface IFsrmQuotaObject {
1274     CONST_VTBL IFsrmQuotaObjectVtbl* lpVtbl;
1275 };
1276 
1277 #ifdef COBJMACROS
1278 #ifndef WIDL_C_INLINE_WRAPPERS
1279 /*** IUnknown methods ***/
1280 #define IFsrmQuotaObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1281 #define IFsrmQuotaObject_AddRef(This) (This)->lpVtbl->AddRef(This)
1282 #define IFsrmQuotaObject_Release(This) (This)->lpVtbl->Release(This)
1283 /*** IDispatch methods ***/
1284 #define IFsrmQuotaObject_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1285 #define IFsrmQuotaObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1286 #define IFsrmQuotaObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1287 #define IFsrmQuotaObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1288 /*** IFsrmObject methods ***/
1289 #define IFsrmQuotaObject_get_Id(This,id) (This)->lpVtbl->get_Id(This,id)
1290 #define IFsrmQuotaObject_get_Description(This,description) (This)->lpVtbl->get_Description(This,description)
1291 #define IFsrmQuotaObject_put_Description(This,description) (This)->lpVtbl->put_Description(This,description)
1292 #define IFsrmQuotaObject_Delete(This) (This)->lpVtbl->Delete(This)
1293 #define IFsrmQuotaObject_Commit(This) (This)->lpVtbl->Commit(This)
1294 /*** IFsrmQuotaBase methods ***/
1295 #define IFsrmQuotaObject_get_QuotaLimit(This,quotaLimit) (This)->lpVtbl->get_QuotaLimit(This,quotaLimit)
1296 #define IFsrmQuotaObject_put_QuotaLimit(This,quotaLimit) (This)->lpVtbl->put_QuotaLimit(This,quotaLimit)
1297 #define IFsrmQuotaObject_get_QuotaFlags(This,quotaFlags) (This)->lpVtbl->get_QuotaFlags(This,quotaFlags)
1298 #define IFsrmQuotaObject_put_QuotaFlags(This,quotaFlags) (This)->lpVtbl->put_QuotaFlags(This,quotaFlags)
1299 #define IFsrmQuotaObject_get_Thresholds(This,thresholds) (This)->lpVtbl->get_Thresholds(This,thresholds)
1300 #define IFsrmQuotaObject_AddThreshold(This,threshold) (This)->lpVtbl->AddThreshold(This,threshold)
1301 #define IFsrmQuotaObject_DeleteThreshold(This,threshold) (This)->lpVtbl->DeleteThreshold(This,threshold)
1302 #define IFsrmQuotaObject_ModifyThreshold(This,threshold,newThreshold) (This)->lpVtbl->ModifyThreshold(This,threshold,newThreshold)
1303 #define IFsrmQuotaObject_CreateThresholdAction(This,threshold,actionType,action) (This)->lpVtbl->CreateThresholdAction(This,threshold,actionType,action)
1304 #define IFsrmQuotaObject_EnumThresholdActions(This,threshold,actions) (This)->lpVtbl->EnumThresholdActions(This,threshold,actions)
1305 /*** IFsrmQuotaObject methods ***/
1306 #define IFsrmQuotaObject_get_Path(This,path) (This)->lpVtbl->get_Path(This,path)
1307 #define IFsrmQuotaObject_get_UserSid(This,userSid) (This)->lpVtbl->get_UserSid(This,userSid)
1308 #define IFsrmQuotaObject_get_UserAccount(This,userAccount) (This)->lpVtbl->get_UserAccount(This,userAccount)
1309 #define IFsrmQuotaObject_get_SourceTemplateName(This,quotaTemplateName) (This)->lpVtbl->get_SourceTemplateName(This,quotaTemplateName)
1310 #define IFsrmQuotaObject_get_MatchesSourceTemplate(This,matches) (This)->lpVtbl->get_MatchesSourceTemplate(This,matches)
1311 #define IFsrmQuotaObject_ApplyTemplate(This,quotaTemplateName) (This)->lpVtbl->ApplyTemplate(This,quotaTemplateName)
1312 #else
1313 /*** IUnknown methods ***/
1314 static FORCEINLINE HRESULT IFsrmQuotaObject_QueryInterface(IFsrmQuotaObject* This,REFIID riid,void **ppvObject) {
1315     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1316 }
1317 static FORCEINLINE ULONG IFsrmQuotaObject_AddRef(IFsrmQuotaObject* This) {
1318     return This->lpVtbl->AddRef(This);
1319 }
1320 static FORCEINLINE ULONG IFsrmQuotaObject_Release(IFsrmQuotaObject* This) {
1321     return This->lpVtbl->Release(This);
1322 }
1323 /*** IDispatch methods ***/
1324 static FORCEINLINE HRESULT IFsrmQuotaObject_GetTypeInfoCount(IFsrmQuotaObject* This,UINT *pctinfo) {
1325     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1326 }
1327 static FORCEINLINE HRESULT IFsrmQuotaObject_GetTypeInfo(IFsrmQuotaObject* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1328     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1329 }
1330 static FORCEINLINE HRESULT IFsrmQuotaObject_GetIDsOfNames(IFsrmQuotaObject* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1331     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1332 }
1333 static FORCEINLINE HRESULT IFsrmQuotaObject_Invoke(IFsrmQuotaObject* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1334     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1335 }
1336 /*** IFsrmObject methods ***/
1337 static FORCEINLINE HRESULT IFsrmQuotaObject_get_Id(IFsrmQuotaObject* This,FSRM_OBJECT_ID *id) {
1338     return This->lpVtbl->get_Id(This,id);
1339 }
1340 static FORCEINLINE HRESULT IFsrmQuotaObject_get_Description(IFsrmQuotaObject* This,BSTR *description) {
1341     return This->lpVtbl->get_Description(This,description);
1342 }
1343 static FORCEINLINE HRESULT IFsrmQuotaObject_put_Description(IFsrmQuotaObject* This,BSTR description) {
1344     return This->lpVtbl->put_Description(This,description);
1345 }
1346 static FORCEINLINE HRESULT IFsrmQuotaObject_Delete(IFsrmQuotaObject* This) {
1347     return This->lpVtbl->Delete(This);
1348 }
1349 static FORCEINLINE HRESULT IFsrmQuotaObject_Commit(IFsrmQuotaObject* This) {
1350     return This->lpVtbl->Commit(This);
1351 }
1352 /*** IFsrmQuotaBase methods ***/
1353 static FORCEINLINE HRESULT IFsrmQuotaObject_get_QuotaLimit(IFsrmQuotaObject* This,VARIANT *quotaLimit) {
1354     return This->lpVtbl->get_QuotaLimit(This,quotaLimit);
1355 }
1356 static FORCEINLINE HRESULT IFsrmQuotaObject_put_QuotaLimit(IFsrmQuotaObject* This,VARIANT quotaLimit) {
1357     return This->lpVtbl->put_QuotaLimit(This,quotaLimit);
1358 }
1359 static FORCEINLINE HRESULT IFsrmQuotaObject_get_QuotaFlags(IFsrmQuotaObject* This,LONG *quotaFlags) {
1360     return This->lpVtbl->get_QuotaFlags(This,quotaFlags);
1361 }
1362 static FORCEINLINE HRESULT IFsrmQuotaObject_put_QuotaFlags(IFsrmQuotaObject* This,LONG quotaFlags) {
1363     return This->lpVtbl->put_QuotaFlags(This,quotaFlags);
1364 }
1365 static FORCEINLINE HRESULT IFsrmQuotaObject_get_Thresholds(IFsrmQuotaObject* This,SAFEARRAY **thresholds) {
1366     return This->lpVtbl->get_Thresholds(This,thresholds);
1367 }
1368 static FORCEINLINE HRESULT IFsrmQuotaObject_AddThreshold(IFsrmQuotaObject* This,FSRM_QUOTA_THRESHOLD threshold) {
1369     return This->lpVtbl->AddThreshold(This,threshold);
1370 }
1371 static FORCEINLINE HRESULT IFsrmQuotaObject_DeleteThreshold(IFsrmQuotaObject* This,FSRM_QUOTA_THRESHOLD threshold) {
1372     return This->lpVtbl->DeleteThreshold(This,threshold);
1373 }
1374 static FORCEINLINE HRESULT IFsrmQuotaObject_ModifyThreshold(IFsrmQuotaObject* This,FSRM_QUOTA_THRESHOLD threshold,FSRM_QUOTA_THRESHOLD newThreshold) {
1375     return This->lpVtbl->ModifyThreshold(This,threshold,newThreshold);
1376 }
1377 static FORCEINLINE HRESULT IFsrmQuotaObject_CreateThresholdAction(IFsrmQuotaObject* This,FSRM_QUOTA_THRESHOLD threshold,FsrmActionType actionType,IFsrmAction **action) {
1378     return This->lpVtbl->CreateThresholdAction(This,threshold,actionType,action);
1379 }
1380 static FORCEINLINE HRESULT IFsrmQuotaObject_EnumThresholdActions(IFsrmQuotaObject* This,FSRM_QUOTA_THRESHOLD threshold,IFsrmCollection **actions) {
1381     return This->lpVtbl->EnumThresholdActions(This,threshold,actions);
1382 }
1383 /*** IFsrmQuotaObject methods ***/
1384 static FORCEINLINE HRESULT IFsrmQuotaObject_get_Path(IFsrmQuotaObject* This,BSTR *path) {
1385     return This->lpVtbl->get_Path(This,path);
1386 }
1387 static FORCEINLINE HRESULT IFsrmQuotaObject_get_UserSid(IFsrmQuotaObject* This,BSTR *userSid) {
1388     return This->lpVtbl->get_UserSid(This,userSid);
1389 }
1390 static FORCEINLINE HRESULT IFsrmQuotaObject_get_UserAccount(IFsrmQuotaObject* This,BSTR *userAccount) {
1391     return This->lpVtbl->get_UserAccount(This,userAccount);
1392 }
1393 static FORCEINLINE HRESULT IFsrmQuotaObject_get_SourceTemplateName(IFsrmQuotaObject* This,BSTR *quotaTemplateName) {
1394     return This->lpVtbl->get_SourceTemplateName(This,quotaTemplateName);
1395 }
1396 static FORCEINLINE HRESULT IFsrmQuotaObject_get_MatchesSourceTemplate(IFsrmQuotaObject* This,VARIANT_BOOL *matches) {
1397     return This->lpVtbl->get_MatchesSourceTemplate(This,matches);
1398 }
1399 static FORCEINLINE HRESULT IFsrmQuotaObject_ApplyTemplate(IFsrmQuotaObject* This,BSTR quotaTemplateName) {
1400     return This->lpVtbl->ApplyTemplate(This,quotaTemplateName);
1401 }
1402 #endif
1403 #endif
1404 
1405 #endif
1406 
1407 HRESULT STDMETHODCALLTYPE IFsrmQuotaObject_get_Path_Proxy(
1408     IFsrmQuotaObject* This,
1409     BSTR *path);
1410 void __RPC_STUB IFsrmQuotaObject_get_Path_Stub(
1411     IRpcStubBuffer* This,
1412     IRpcChannelBuffer* pRpcChannelBuffer,
1413     PRPC_MESSAGE pRpcMessage,
1414     DWORD* pdwStubPhase);
1415 HRESULT STDMETHODCALLTYPE IFsrmQuotaObject_get_UserSid_Proxy(
1416     IFsrmQuotaObject* This,
1417     BSTR *userSid);
1418 void __RPC_STUB IFsrmQuotaObject_get_UserSid_Stub(
1419     IRpcStubBuffer* This,
1420     IRpcChannelBuffer* pRpcChannelBuffer,
1421     PRPC_MESSAGE pRpcMessage,
1422     DWORD* pdwStubPhase);
1423 HRESULT STDMETHODCALLTYPE IFsrmQuotaObject_get_UserAccount_Proxy(
1424     IFsrmQuotaObject* This,
1425     BSTR *userAccount);
1426 void __RPC_STUB IFsrmQuotaObject_get_UserAccount_Stub(
1427     IRpcStubBuffer* This,
1428     IRpcChannelBuffer* pRpcChannelBuffer,
1429     PRPC_MESSAGE pRpcMessage,
1430     DWORD* pdwStubPhase);
1431 HRESULT STDMETHODCALLTYPE IFsrmQuotaObject_get_SourceTemplateName_Proxy(
1432     IFsrmQuotaObject* This,
1433     BSTR *quotaTemplateName);
1434 void __RPC_STUB IFsrmQuotaObject_get_SourceTemplateName_Stub(
1435     IRpcStubBuffer* This,
1436     IRpcChannelBuffer* pRpcChannelBuffer,
1437     PRPC_MESSAGE pRpcMessage,
1438     DWORD* pdwStubPhase);
1439 HRESULT STDMETHODCALLTYPE IFsrmQuotaObject_get_MatchesSourceTemplate_Proxy(
1440     IFsrmQuotaObject* This,
1441     VARIANT_BOOL *matches);
1442 void __RPC_STUB IFsrmQuotaObject_get_MatchesSourceTemplate_Stub(
1443     IRpcStubBuffer* This,
1444     IRpcChannelBuffer* pRpcChannelBuffer,
1445     PRPC_MESSAGE pRpcMessage,
1446     DWORD* pdwStubPhase);
1447 HRESULT STDMETHODCALLTYPE IFsrmQuotaObject_ApplyTemplate_Proxy(
1448     IFsrmQuotaObject* This,
1449     BSTR quotaTemplateName);
1450 void __RPC_STUB IFsrmQuotaObject_ApplyTemplate_Stub(
1451     IRpcStubBuffer* This,
1452     IRpcChannelBuffer* pRpcChannelBuffer,
1453     PRPC_MESSAGE pRpcMessage,
1454     DWORD* pdwStubPhase);
1455 
1456 #endif  /* __IFsrmQuotaObject_INTERFACE_DEFINED__ */
1457 
1458 /*****************************************************************************
1459  * IFsrmQuotaTemplate interface
1460  */
1461 #ifndef __IFsrmQuotaTemplate_INTERFACE_DEFINED__
1462 #define __IFsrmQuotaTemplate_INTERFACE_DEFINED__
1463 
1464 DEFINE_GUID(IID_IFsrmQuotaTemplate, 0xa2efab31, 0x295e, 0x46bb, 0xb9,0x76, 0xe8,0x6d,0x58,0xb5,0x2e,0x8b);
1465 #if defined(__cplusplus) && !defined(CINTERFACE)
1466 MIDL_INTERFACE("a2efab31-295e-46bb-b976-e86d58b52e8b")
1467 IFsrmQuotaTemplate : public IFsrmQuotaBase
1468 {
1469     virtual HRESULT STDMETHODCALLTYPE get_Name(
1470         BSTR *name) = 0;
1471 
1472     virtual HRESULT STDMETHODCALLTYPE put_Name(
1473         BSTR name) = 0;
1474 
1475     virtual HRESULT STDMETHODCALLTYPE CopyTemplate(
1476         BSTR quotaTemplateName) = 0;
1477 
1478     virtual HRESULT STDMETHODCALLTYPE CommitAndUpdateDerived(
1479         FsrmCommitOptions commitOptions,
1480         FsrmTemplateApplyOptions applyOptions,
1481         IFsrmDerivedObjectsResult **derivedObjectsResult) = 0;
1482 
1483 };
1484 #ifdef __CRT_UUID_DECL
1485 __CRT_UUID_DECL(IFsrmQuotaTemplate, 0xa2efab31, 0x295e, 0x46bb, 0xb9,0x76, 0xe8,0x6d,0x58,0xb5,0x2e,0x8b)
1486 #endif
1487 #else
1488 typedef struct IFsrmQuotaTemplateVtbl {
1489     BEGIN_INTERFACE
1490 
1491     /*** IUnknown methods ***/
1492     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1493         IFsrmQuotaTemplate* This,
1494         REFIID riid,
1495         void **ppvObject);
1496 
1497     ULONG (STDMETHODCALLTYPE *AddRef)(
1498         IFsrmQuotaTemplate* This);
1499 
1500     ULONG (STDMETHODCALLTYPE *Release)(
1501         IFsrmQuotaTemplate* This);
1502 
1503     /*** IDispatch methods ***/
1504     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1505         IFsrmQuotaTemplate* This,
1506         UINT *pctinfo);
1507 
1508     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1509         IFsrmQuotaTemplate* This,
1510         UINT iTInfo,
1511         LCID lcid,
1512         ITypeInfo **ppTInfo);
1513 
1514     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1515         IFsrmQuotaTemplate* This,
1516         REFIID riid,
1517         LPOLESTR *rgszNames,
1518         UINT cNames,
1519         LCID lcid,
1520         DISPID *rgDispId);
1521 
1522     HRESULT (STDMETHODCALLTYPE *Invoke)(
1523         IFsrmQuotaTemplate* This,
1524         DISPID dispIdMember,
1525         REFIID riid,
1526         LCID lcid,
1527         WORD wFlags,
1528         DISPPARAMS *pDispParams,
1529         VARIANT *pVarResult,
1530         EXCEPINFO *pExcepInfo,
1531         UINT *puArgErr);
1532 
1533     /*** IFsrmObject methods ***/
1534     HRESULT (STDMETHODCALLTYPE *get_Id)(
1535         IFsrmQuotaTemplate* This,
1536         FSRM_OBJECT_ID *id);
1537 
1538     HRESULT (STDMETHODCALLTYPE *get_Description)(
1539         IFsrmQuotaTemplate* This,
1540         BSTR *description);
1541 
1542     HRESULT (STDMETHODCALLTYPE *put_Description)(
1543         IFsrmQuotaTemplate* This,
1544         BSTR description);
1545 
1546     HRESULT (STDMETHODCALLTYPE *Delete)(
1547         IFsrmQuotaTemplate* This);
1548 
1549     HRESULT (STDMETHODCALLTYPE *Commit)(
1550         IFsrmQuotaTemplate* This);
1551 
1552     /*** IFsrmQuotaBase methods ***/
1553     HRESULT (STDMETHODCALLTYPE *get_QuotaLimit)(
1554         IFsrmQuotaTemplate* This,
1555         VARIANT *quotaLimit);
1556 
1557     HRESULT (STDMETHODCALLTYPE *put_QuotaLimit)(
1558         IFsrmQuotaTemplate* This,
1559         VARIANT quotaLimit);
1560 
1561     HRESULT (STDMETHODCALLTYPE *get_QuotaFlags)(
1562         IFsrmQuotaTemplate* This,
1563         LONG *quotaFlags);
1564 
1565     HRESULT (STDMETHODCALLTYPE *put_QuotaFlags)(
1566         IFsrmQuotaTemplate* This,
1567         LONG quotaFlags);
1568 
1569     HRESULT (STDMETHODCALLTYPE *get_Thresholds)(
1570         IFsrmQuotaTemplate* This,
1571         SAFEARRAY **thresholds);
1572 
1573     HRESULT (STDMETHODCALLTYPE *AddThreshold)(
1574         IFsrmQuotaTemplate* This,
1575         FSRM_QUOTA_THRESHOLD threshold);
1576 
1577     HRESULT (STDMETHODCALLTYPE *DeleteThreshold)(
1578         IFsrmQuotaTemplate* This,
1579         FSRM_QUOTA_THRESHOLD threshold);
1580 
1581     HRESULT (STDMETHODCALLTYPE *ModifyThreshold)(
1582         IFsrmQuotaTemplate* This,
1583         FSRM_QUOTA_THRESHOLD threshold,
1584         FSRM_QUOTA_THRESHOLD newThreshold);
1585 
1586     HRESULT (STDMETHODCALLTYPE *CreateThresholdAction)(
1587         IFsrmQuotaTemplate* This,
1588         FSRM_QUOTA_THRESHOLD threshold,
1589         FsrmActionType actionType,
1590         IFsrmAction **action);
1591 
1592     HRESULT (STDMETHODCALLTYPE *EnumThresholdActions)(
1593         IFsrmQuotaTemplate* This,
1594         FSRM_QUOTA_THRESHOLD threshold,
1595         IFsrmCollection **actions);
1596 
1597     /*** IFsrmQuotaTemplate methods ***/
1598     HRESULT (STDMETHODCALLTYPE *get_Name)(
1599         IFsrmQuotaTemplate* This,
1600         BSTR *name);
1601 
1602     HRESULT (STDMETHODCALLTYPE *put_Name)(
1603         IFsrmQuotaTemplate* This,
1604         BSTR name);
1605 
1606     HRESULT (STDMETHODCALLTYPE *CopyTemplate)(
1607         IFsrmQuotaTemplate* This,
1608         BSTR quotaTemplateName);
1609 
1610     HRESULT (STDMETHODCALLTYPE *CommitAndUpdateDerived)(
1611         IFsrmQuotaTemplate* This,
1612         FsrmCommitOptions commitOptions,
1613         FsrmTemplateApplyOptions applyOptions,
1614         IFsrmDerivedObjectsResult **derivedObjectsResult);
1615 
1616     END_INTERFACE
1617 } IFsrmQuotaTemplateVtbl;
1618 interface IFsrmQuotaTemplate {
1619     CONST_VTBL IFsrmQuotaTemplateVtbl* lpVtbl;
1620 };
1621 
1622 #ifdef COBJMACROS
1623 #ifndef WIDL_C_INLINE_WRAPPERS
1624 /*** IUnknown methods ***/
1625 #define IFsrmQuotaTemplate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1626 #define IFsrmQuotaTemplate_AddRef(This) (This)->lpVtbl->AddRef(This)
1627 #define IFsrmQuotaTemplate_Release(This) (This)->lpVtbl->Release(This)
1628 /*** IDispatch methods ***/
1629 #define IFsrmQuotaTemplate_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1630 #define IFsrmQuotaTemplate_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1631 #define IFsrmQuotaTemplate_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1632 #define IFsrmQuotaTemplate_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1633 /*** IFsrmObject methods ***/
1634 #define IFsrmQuotaTemplate_get_Id(This,id) (This)->lpVtbl->get_Id(This,id)
1635 #define IFsrmQuotaTemplate_get_Description(This,description) (This)->lpVtbl->get_Description(This,description)
1636 #define IFsrmQuotaTemplate_put_Description(This,description) (This)->lpVtbl->put_Description(This,description)
1637 #define IFsrmQuotaTemplate_Delete(This) (This)->lpVtbl->Delete(This)
1638 #define IFsrmQuotaTemplate_Commit(This) (This)->lpVtbl->Commit(This)
1639 /*** IFsrmQuotaBase methods ***/
1640 #define IFsrmQuotaTemplate_get_QuotaLimit(This,quotaLimit) (This)->lpVtbl->get_QuotaLimit(This,quotaLimit)
1641 #define IFsrmQuotaTemplate_put_QuotaLimit(This,quotaLimit) (This)->lpVtbl->put_QuotaLimit(This,quotaLimit)
1642 #define IFsrmQuotaTemplate_get_QuotaFlags(This,quotaFlags) (This)->lpVtbl->get_QuotaFlags(This,quotaFlags)
1643 #define IFsrmQuotaTemplate_put_QuotaFlags(This,quotaFlags) (This)->lpVtbl->put_QuotaFlags(This,quotaFlags)
1644 #define IFsrmQuotaTemplate_get_Thresholds(This,thresholds) (This)->lpVtbl->get_Thresholds(This,thresholds)
1645 #define IFsrmQuotaTemplate_AddThreshold(This,threshold) (This)->lpVtbl->AddThreshold(This,threshold)
1646 #define IFsrmQuotaTemplate_DeleteThreshold(This,threshold) (This)->lpVtbl->DeleteThreshold(This,threshold)
1647 #define IFsrmQuotaTemplate_ModifyThreshold(This,threshold,newThreshold) (This)->lpVtbl->ModifyThreshold(This,threshold,newThreshold)
1648 #define IFsrmQuotaTemplate_CreateThresholdAction(This,threshold,actionType,action) (This)->lpVtbl->CreateThresholdAction(This,threshold,actionType,action)
1649 #define IFsrmQuotaTemplate_EnumThresholdActions(This,threshold,actions) (This)->lpVtbl->EnumThresholdActions(This,threshold,actions)
1650 /*** IFsrmQuotaTemplate methods ***/
1651 #define IFsrmQuotaTemplate_get_Name(This,name) (This)->lpVtbl->get_Name(This,name)
1652 #define IFsrmQuotaTemplate_put_Name(This,name) (This)->lpVtbl->put_Name(This,name)
1653 #define IFsrmQuotaTemplate_CopyTemplate(This,quotaTemplateName) (This)->lpVtbl->CopyTemplate(This,quotaTemplateName)
1654 #define IFsrmQuotaTemplate_CommitAndUpdateDerived(This,commitOptions,applyOptions,derivedObjectsResult) (This)->lpVtbl->CommitAndUpdateDerived(This,commitOptions,applyOptions,derivedObjectsResult)
1655 #else
1656 /*** IUnknown methods ***/
1657 static FORCEINLINE HRESULT IFsrmQuotaTemplate_QueryInterface(IFsrmQuotaTemplate* This,REFIID riid,void **ppvObject) {
1658     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1659 }
1660 static FORCEINLINE ULONG IFsrmQuotaTemplate_AddRef(IFsrmQuotaTemplate* This) {
1661     return This->lpVtbl->AddRef(This);
1662 }
1663 static FORCEINLINE ULONG IFsrmQuotaTemplate_Release(IFsrmQuotaTemplate* This) {
1664     return This->lpVtbl->Release(This);
1665 }
1666 /*** IDispatch methods ***/
1667 static FORCEINLINE HRESULT IFsrmQuotaTemplate_GetTypeInfoCount(IFsrmQuotaTemplate* This,UINT *pctinfo) {
1668     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1669 }
1670 static FORCEINLINE HRESULT IFsrmQuotaTemplate_GetTypeInfo(IFsrmQuotaTemplate* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1671     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1672 }
1673 static FORCEINLINE HRESULT IFsrmQuotaTemplate_GetIDsOfNames(IFsrmQuotaTemplate* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1674     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1675 }
1676 static FORCEINLINE HRESULT IFsrmQuotaTemplate_Invoke(IFsrmQuotaTemplate* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1677     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1678 }
1679 /*** IFsrmObject methods ***/
1680 static FORCEINLINE HRESULT IFsrmQuotaTemplate_get_Id(IFsrmQuotaTemplate* This,FSRM_OBJECT_ID *id) {
1681     return This->lpVtbl->get_Id(This,id);
1682 }
1683 static FORCEINLINE HRESULT IFsrmQuotaTemplate_get_Description(IFsrmQuotaTemplate* This,BSTR *description) {
1684     return This->lpVtbl->get_Description(This,description);
1685 }
1686 static FORCEINLINE HRESULT IFsrmQuotaTemplate_put_Description(IFsrmQuotaTemplate* This,BSTR description) {
1687     return This->lpVtbl->put_Description(This,description);
1688 }
1689 static FORCEINLINE HRESULT IFsrmQuotaTemplate_Delete(IFsrmQuotaTemplate* This) {
1690     return This->lpVtbl->Delete(This);
1691 }
1692 static FORCEINLINE HRESULT IFsrmQuotaTemplate_Commit(IFsrmQuotaTemplate* This) {
1693     return This->lpVtbl->Commit(This);
1694 }
1695 /*** IFsrmQuotaBase methods ***/
1696 static FORCEINLINE HRESULT IFsrmQuotaTemplate_get_QuotaLimit(IFsrmQuotaTemplate* This,VARIANT *quotaLimit) {
1697     return This->lpVtbl->get_QuotaLimit(This,quotaLimit);
1698 }
1699 static FORCEINLINE HRESULT IFsrmQuotaTemplate_put_QuotaLimit(IFsrmQuotaTemplate* This,VARIANT quotaLimit) {
1700     return This->lpVtbl->put_QuotaLimit(This,quotaLimit);
1701 }
1702 static FORCEINLINE HRESULT IFsrmQuotaTemplate_get_QuotaFlags(IFsrmQuotaTemplate* This,LONG *quotaFlags) {
1703     return This->lpVtbl->get_QuotaFlags(This,quotaFlags);
1704 }
1705 static FORCEINLINE HRESULT IFsrmQuotaTemplate_put_QuotaFlags(IFsrmQuotaTemplate* This,LONG quotaFlags) {
1706     return This->lpVtbl->put_QuotaFlags(This,quotaFlags);
1707 }
1708 static FORCEINLINE HRESULT IFsrmQuotaTemplate_get_Thresholds(IFsrmQuotaTemplate* This,SAFEARRAY **thresholds) {
1709     return This->lpVtbl->get_Thresholds(This,thresholds);
1710 }
1711 static FORCEINLINE HRESULT IFsrmQuotaTemplate_AddThreshold(IFsrmQuotaTemplate* This,FSRM_QUOTA_THRESHOLD threshold) {
1712     return This->lpVtbl->AddThreshold(This,threshold);
1713 }
1714 static FORCEINLINE HRESULT IFsrmQuotaTemplate_DeleteThreshold(IFsrmQuotaTemplate* This,FSRM_QUOTA_THRESHOLD threshold) {
1715     return This->lpVtbl->DeleteThreshold(This,threshold);
1716 }
1717 static FORCEINLINE HRESULT IFsrmQuotaTemplate_ModifyThreshold(IFsrmQuotaTemplate* This,FSRM_QUOTA_THRESHOLD threshold,FSRM_QUOTA_THRESHOLD newThreshold) {
1718     return This->lpVtbl->ModifyThreshold(This,threshold,newThreshold);
1719 }
1720 static FORCEINLINE HRESULT IFsrmQuotaTemplate_CreateThresholdAction(IFsrmQuotaTemplate* This,FSRM_QUOTA_THRESHOLD threshold,FsrmActionType actionType,IFsrmAction **action) {
1721     return This->lpVtbl->CreateThresholdAction(This,threshold,actionType,action);
1722 }
1723 static FORCEINLINE HRESULT IFsrmQuotaTemplate_EnumThresholdActions(IFsrmQuotaTemplate* This,FSRM_QUOTA_THRESHOLD threshold,IFsrmCollection **actions) {
1724     return This->lpVtbl->EnumThresholdActions(This,threshold,actions);
1725 }
1726 /*** IFsrmQuotaTemplate methods ***/
1727 static FORCEINLINE HRESULT IFsrmQuotaTemplate_get_Name(IFsrmQuotaTemplate* This,BSTR *name) {
1728     return This->lpVtbl->get_Name(This,name);
1729 }
1730 static FORCEINLINE HRESULT IFsrmQuotaTemplate_put_Name(IFsrmQuotaTemplate* This,BSTR name) {
1731     return This->lpVtbl->put_Name(This,name);
1732 }
1733 static FORCEINLINE HRESULT IFsrmQuotaTemplate_CopyTemplate(IFsrmQuotaTemplate* This,BSTR quotaTemplateName) {
1734     return This->lpVtbl->CopyTemplate(This,quotaTemplateName);
1735 }
1736 static FORCEINLINE HRESULT IFsrmQuotaTemplate_CommitAndUpdateDerived(IFsrmQuotaTemplate* This,FsrmCommitOptions commitOptions,FsrmTemplateApplyOptions applyOptions,IFsrmDerivedObjectsResult **derivedObjectsResult) {
1737     return This->lpVtbl->CommitAndUpdateDerived(This,commitOptions,applyOptions,derivedObjectsResult);
1738 }
1739 #endif
1740 #endif
1741 
1742 #endif
1743 
1744 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplate_get_Name_Proxy(
1745     IFsrmQuotaTemplate* This,
1746     BSTR *name);
1747 void __RPC_STUB IFsrmQuotaTemplate_get_Name_Stub(
1748     IRpcStubBuffer* This,
1749     IRpcChannelBuffer* pRpcChannelBuffer,
1750     PRPC_MESSAGE pRpcMessage,
1751     DWORD* pdwStubPhase);
1752 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplate_put_Name_Proxy(
1753     IFsrmQuotaTemplate* This,
1754     BSTR name);
1755 void __RPC_STUB IFsrmQuotaTemplate_put_Name_Stub(
1756     IRpcStubBuffer* This,
1757     IRpcChannelBuffer* pRpcChannelBuffer,
1758     PRPC_MESSAGE pRpcMessage,
1759     DWORD* pdwStubPhase);
1760 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplate_CopyTemplate_Proxy(
1761     IFsrmQuotaTemplate* This,
1762     BSTR quotaTemplateName);
1763 void __RPC_STUB IFsrmQuotaTemplate_CopyTemplate_Stub(
1764     IRpcStubBuffer* This,
1765     IRpcChannelBuffer* pRpcChannelBuffer,
1766     PRPC_MESSAGE pRpcMessage,
1767     DWORD* pdwStubPhase);
1768 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplate_CommitAndUpdateDerived_Proxy(
1769     IFsrmQuotaTemplate* This,
1770     FsrmCommitOptions commitOptions,
1771     FsrmTemplateApplyOptions applyOptions,
1772     IFsrmDerivedObjectsResult **derivedObjectsResult);
1773 void __RPC_STUB IFsrmQuotaTemplate_CommitAndUpdateDerived_Stub(
1774     IRpcStubBuffer* This,
1775     IRpcChannelBuffer* pRpcChannelBuffer,
1776     PRPC_MESSAGE pRpcMessage,
1777     DWORD* pdwStubPhase);
1778 
1779 #endif  /* __IFsrmQuotaTemplate_INTERFACE_DEFINED__ */
1780 
1781 /*****************************************************************************
1782  * IFsrmQuota interface
1783  */
1784 #ifndef __IFsrmQuota_INTERFACE_DEFINED__
1785 #define __IFsrmQuota_INTERFACE_DEFINED__
1786 
1787 DEFINE_GUID(IID_IFsrmQuota, 0x377f739d, 0x9647, 0x4b8e, 0x97,0xd2, 0x5f,0xfc,0xe6,0xd7,0x59,0xcd);
1788 #if defined(__cplusplus) && !defined(CINTERFACE)
1789 MIDL_INTERFACE("377f739d-9647-4b8e-97d2-5ffce6d759cd")
1790 IFsrmQuota : public IFsrmQuotaObject
1791 {
1792     virtual HRESULT STDMETHODCALLTYPE get_QuotaUsed(
1793         VARIANT *used) = 0;
1794 
1795     virtual HRESULT STDMETHODCALLTYPE get_QuotaPeakUsage(
1796         VARIANT *peakUsage) = 0;
1797 
1798     virtual HRESULT STDMETHODCALLTYPE get_QuotaPeakUsageTime(
1799         DATE *peakUsageDateTime) = 0;
1800 
1801     virtual HRESULT STDMETHODCALLTYPE ResetPeakUsage(
1802         ) = 0;
1803 
1804     virtual HRESULT STDMETHODCALLTYPE RefreshUsageProperties(
1805         ) = 0;
1806 
1807 };
1808 #ifdef __CRT_UUID_DECL
1809 __CRT_UUID_DECL(IFsrmQuota, 0x377f739d, 0x9647, 0x4b8e, 0x97,0xd2, 0x5f,0xfc,0xe6,0xd7,0x59,0xcd)
1810 #endif
1811 #else
1812 typedef struct IFsrmQuotaVtbl {
1813     BEGIN_INTERFACE
1814 
1815     /*** IUnknown methods ***/
1816     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1817         IFsrmQuota* This,
1818         REFIID riid,
1819         void **ppvObject);
1820 
1821     ULONG (STDMETHODCALLTYPE *AddRef)(
1822         IFsrmQuota* This);
1823 
1824     ULONG (STDMETHODCALLTYPE *Release)(
1825         IFsrmQuota* This);
1826 
1827     /*** IDispatch methods ***/
1828     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1829         IFsrmQuota* This,
1830         UINT *pctinfo);
1831 
1832     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1833         IFsrmQuota* This,
1834         UINT iTInfo,
1835         LCID lcid,
1836         ITypeInfo **ppTInfo);
1837 
1838     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1839         IFsrmQuota* This,
1840         REFIID riid,
1841         LPOLESTR *rgszNames,
1842         UINT cNames,
1843         LCID lcid,
1844         DISPID *rgDispId);
1845 
1846     HRESULT (STDMETHODCALLTYPE *Invoke)(
1847         IFsrmQuota* This,
1848         DISPID dispIdMember,
1849         REFIID riid,
1850         LCID lcid,
1851         WORD wFlags,
1852         DISPPARAMS *pDispParams,
1853         VARIANT *pVarResult,
1854         EXCEPINFO *pExcepInfo,
1855         UINT *puArgErr);
1856 
1857     /*** IFsrmObject methods ***/
1858     HRESULT (STDMETHODCALLTYPE *get_Id)(
1859         IFsrmQuota* This,
1860         FSRM_OBJECT_ID *id);
1861 
1862     HRESULT (STDMETHODCALLTYPE *get_Description)(
1863         IFsrmQuota* This,
1864         BSTR *description);
1865 
1866     HRESULT (STDMETHODCALLTYPE *put_Description)(
1867         IFsrmQuota* This,
1868         BSTR description);
1869 
1870     HRESULT (STDMETHODCALLTYPE *Delete)(
1871         IFsrmQuota* This);
1872 
1873     HRESULT (STDMETHODCALLTYPE *Commit)(
1874         IFsrmQuota* This);
1875 
1876     /*** IFsrmQuotaBase methods ***/
1877     HRESULT (STDMETHODCALLTYPE *get_QuotaLimit)(
1878         IFsrmQuota* This,
1879         VARIANT *quotaLimit);
1880 
1881     HRESULT (STDMETHODCALLTYPE *put_QuotaLimit)(
1882         IFsrmQuota* This,
1883         VARIANT quotaLimit);
1884 
1885     HRESULT (STDMETHODCALLTYPE *get_QuotaFlags)(
1886         IFsrmQuota* This,
1887         LONG *quotaFlags);
1888 
1889     HRESULT (STDMETHODCALLTYPE *put_QuotaFlags)(
1890         IFsrmQuota* This,
1891         LONG quotaFlags);
1892 
1893     HRESULT (STDMETHODCALLTYPE *get_Thresholds)(
1894         IFsrmQuota* This,
1895         SAFEARRAY **thresholds);
1896 
1897     HRESULT (STDMETHODCALLTYPE *AddThreshold)(
1898         IFsrmQuota* This,
1899         FSRM_QUOTA_THRESHOLD threshold);
1900 
1901     HRESULT (STDMETHODCALLTYPE *DeleteThreshold)(
1902         IFsrmQuota* This,
1903         FSRM_QUOTA_THRESHOLD threshold);
1904 
1905     HRESULT (STDMETHODCALLTYPE *ModifyThreshold)(
1906         IFsrmQuota* This,
1907         FSRM_QUOTA_THRESHOLD threshold,
1908         FSRM_QUOTA_THRESHOLD newThreshold);
1909 
1910     HRESULT (STDMETHODCALLTYPE *CreateThresholdAction)(
1911         IFsrmQuota* This,
1912         FSRM_QUOTA_THRESHOLD threshold,
1913         FsrmActionType actionType,
1914         IFsrmAction **action);
1915 
1916     HRESULT (STDMETHODCALLTYPE *EnumThresholdActions)(
1917         IFsrmQuota* This,
1918         FSRM_QUOTA_THRESHOLD threshold,
1919         IFsrmCollection **actions);
1920 
1921     /*** IFsrmQuotaObject methods ***/
1922     HRESULT (STDMETHODCALLTYPE *get_Path)(
1923         IFsrmQuota* This,
1924         BSTR *path);
1925 
1926     HRESULT (STDMETHODCALLTYPE *get_UserSid)(
1927         IFsrmQuota* This,
1928         BSTR *userSid);
1929 
1930     HRESULT (STDMETHODCALLTYPE *get_UserAccount)(
1931         IFsrmQuota* This,
1932         BSTR *userAccount);
1933 
1934     HRESULT (STDMETHODCALLTYPE *get_SourceTemplateName)(
1935         IFsrmQuota* This,
1936         BSTR *quotaTemplateName);
1937 
1938     HRESULT (STDMETHODCALLTYPE *get_MatchesSourceTemplate)(
1939         IFsrmQuota* This,
1940         VARIANT_BOOL *matches);
1941 
1942     HRESULT (STDMETHODCALLTYPE *ApplyTemplate)(
1943         IFsrmQuota* This,
1944         BSTR quotaTemplateName);
1945 
1946     /*** IFsrmQuota methods ***/
1947     HRESULT (STDMETHODCALLTYPE *get_QuotaUsed)(
1948         IFsrmQuota* This,
1949         VARIANT *used);
1950 
1951     HRESULT (STDMETHODCALLTYPE *get_QuotaPeakUsage)(
1952         IFsrmQuota* This,
1953         VARIANT *peakUsage);
1954 
1955     HRESULT (STDMETHODCALLTYPE *get_QuotaPeakUsageTime)(
1956         IFsrmQuota* This,
1957         DATE *peakUsageDateTime);
1958 
1959     HRESULT (STDMETHODCALLTYPE *ResetPeakUsage)(
1960         IFsrmQuota* This);
1961 
1962     HRESULT (STDMETHODCALLTYPE *RefreshUsageProperties)(
1963         IFsrmQuota* This);
1964 
1965     END_INTERFACE
1966 } IFsrmQuotaVtbl;
1967 interface IFsrmQuota {
1968     CONST_VTBL IFsrmQuotaVtbl* lpVtbl;
1969 };
1970 
1971 #ifdef COBJMACROS
1972 #ifndef WIDL_C_INLINE_WRAPPERS
1973 /*** IUnknown methods ***/
1974 #define IFsrmQuota_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1975 #define IFsrmQuota_AddRef(This) (This)->lpVtbl->AddRef(This)
1976 #define IFsrmQuota_Release(This) (This)->lpVtbl->Release(This)
1977 /*** IDispatch methods ***/
1978 #define IFsrmQuota_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1979 #define IFsrmQuota_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1980 #define IFsrmQuota_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1981 #define IFsrmQuota_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1982 /*** IFsrmObject methods ***/
1983 #define IFsrmQuota_get_Id(This,id) (This)->lpVtbl->get_Id(This,id)
1984 #define IFsrmQuota_get_Description(This,description) (This)->lpVtbl->get_Description(This,description)
1985 #define IFsrmQuota_put_Description(This,description) (This)->lpVtbl->put_Description(This,description)
1986 #define IFsrmQuota_Delete(This) (This)->lpVtbl->Delete(This)
1987 #define IFsrmQuota_Commit(This) (This)->lpVtbl->Commit(This)
1988 /*** IFsrmQuotaBase methods ***/
1989 #define IFsrmQuota_get_QuotaLimit(This,quotaLimit) (This)->lpVtbl->get_QuotaLimit(This,quotaLimit)
1990 #define IFsrmQuota_put_QuotaLimit(This,quotaLimit) (This)->lpVtbl->put_QuotaLimit(This,quotaLimit)
1991 #define IFsrmQuota_get_QuotaFlags(This,quotaFlags) (This)->lpVtbl->get_QuotaFlags(This,quotaFlags)
1992 #define IFsrmQuota_put_QuotaFlags(This,quotaFlags) (This)->lpVtbl->put_QuotaFlags(This,quotaFlags)
1993 #define IFsrmQuota_get_Thresholds(This,thresholds) (This)->lpVtbl->get_Thresholds(This,thresholds)
1994 #define IFsrmQuota_AddThreshold(This,threshold) (This)->lpVtbl->AddThreshold(This,threshold)
1995 #define IFsrmQuota_DeleteThreshold(This,threshold) (This)->lpVtbl->DeleteThreshold(This,threshold)
1996 #define IFsrmQuota_ModifyThreshold(This,threshold,newThreshold) (This)->lpVtbl->ModifyThreshold(This,threshold,newThreshold)
1997 #define IFsrmQuota_CreateThresholdAction(This,threshold,actionType,action) (This)->lpVtbl->CreateThresholdAction(This,threshold,actionType,action)
1998 #define IFsrmQuota_EnumThresholdActions(This,threshold,actions) (This)->lpVtbl->EnumThresholdActions(This,threshold,actions)
1999 /*** IFsrmQuotaObject methods ***/
2000 #define IFsrmQuota_get_Path(This,path) (This)->lpVtbl->get_Path(This,path)
2001 #define IFsrmQuota_get_UserSid(This,userSid) (This)->lpVtbl->get_UserSid(This,userSid)
2002 #define IFsrmQuota_get_UserAccount(This,userAccount) (This)->lpVtbl->get_UserAccount(This,userAccount)
2003 #define IFsrmQuota_get_SourceTemplateName(This,quotaTemplateName) (This)->lpVtbl->get_SourceTemplateName(This,quotaTemplateName)
2004 #define IFsrmQuota_get_MatchesSourceTemplate(This,matches) (This)->lpVtbl->get_MatchesSourceTemplate(This,matches)
2005 #define IFsrmQuota_ApplyTemplate(This,quotaTemplateName) (This)->lpVtbl->ApplyTemplate(This,quotaTemplateName)
2006 /*** IFsrmQuota methods ***/
2007 #define IFsrmQuota_get_QuotaUsed(This,used) (This)->lpVtbl->get_QuotaUsed(This,used)
2008 #define IFsrmQuota_get_QuotaPeakUsage(This,peakUsage) (This)->lpVtbl->get_QuotaPeakUsage(This,peakUsage)
2009 #define IFsrmQuota_get_QuotaPeakUsageTime(This,peakUsageDateTime) (This)->lpVtbl->get_QuotaPeakUsageTime(This,peakUsageDateTime)
2010 #define IFsrmQuota_ResetPeakUsage(This) (This)->lpVtbl->ResetPeakUsage(This)
2011 #define IFsrmQuota_RefreshUsageProperties(This) (This)->lpVtbl->RefreshUsageProperties(This)
2012 #else
2013 /*** IUnknown methods ***/
2014 static FORCEINLINE HRESULT IFsrmQuota_QueryInterface(IFsrmQuota* This,REFIID riid,void **ppvObject) {
2015     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2016 }
2017 static FORCEINLINE ULONG IFsrmQuota_AddRef(IFsrmQuota* This) {
2018     return This->lpVtbl->AddRef(This);
2019 }
2020 static FORCEINLINE ULONG IFsrmQuota_Release(IFsrmQuota* This) {
2021     return This->lpVtbl->Release(This);
2022 }
2023 /*** IDispatch methods ***/
2024 static FORCEINLINE HRESULT IFsrmQuota_GetTypeInfoCount(IFsrmQuota* This,UINT *pctinfo) {
2025     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2026 }
2027 static FORCEINLINE HRESULT IFsrmQuota_GetTypeInfo(IFsrmQuota* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2028     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2029 }
2030 static FORCEINLINE HRESULT IFsrmQuota_GetIDsOfNames(IFsrmQuota* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2031     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2032 }
2033 static FORCEINLINE HRESULT IFsrmQuota_Invoke(IFsrmQuota* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2034     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2035 }
2036 /*** IFsrmObject methods ***/
2037 static FORCEINLINE HRESULT IFsrmQuota_get_Id(IFsrmQuota* This,FSRM_OBJECT_ID *id) {
2038     return This->lpVtbl->get_Id(This,id);
2039 }
2040 static FORCEINLINE HRESULT IFsrmQuota_get_Description(IFsrmQuota* This,BSTR *description) {
2041     return This->lpVtbl->get_Description(This,description);
2042 }
2043 static FORCEINLINE HRESULT IFsrmQuota_put_Description(IFsrmQuota* This,BSTR description) {
2044     return This->lpVtbl->put_Description(This,description);
2045 }
2046 static FORCEINLINE HRESULT IFsrmQuota_Delete(IFsrmQuota* This) {
2047     return This->lpVtbl->Delete(This);
2048 }
2049 static FORCEINLINE HRESULT IFsrmQuota_Commit(IFsrmQuota* This) {
2050     return This->lpVtbl->Commit(This);
2051 }
2052 /*** IFsrmQuotaBase methods ***/
2053 static FORCEINLINE HRESULT IFsrmQuota_get_QuotaLimit(IFsrmQuota* This,VARIANT *quotaLimit) {
2054     return This->lpVtbl->get_QuotaLimit(This,quotaLimit);
2055 }
2056 static FORCEINLINE HRESULT IFsrmQuota_put_QuotaLimit(IFsrmQuota* This,VARIANT quotaLimit) {
2057     return This->lpVtbl->put_QuotaLimit(This,quotaLimit);
2058 }
2059 static FORCEINLINE HRESULT IFsrmQuota_get_QuotaFlags(IFsrmQuota* This,LONG *quotaFlags) {
2060     return This->lpVtbl->get_QuotaFlags(This,quotaFlags);
2061 }
2062 static FORCEINLINE HRESULT IFsrmQuota_put_QuotaFlags(IFsrmQuota* This,LONG quotaFlags) {
2063     return This->lpVtbl->put_QuotaFlags(This,quotaFlags);
2064 }
2065 static FORCEINLINE HRESULT IFsrmQuota_get_Thresholds(IFsrmQuota* This,SAFEARRAY **thresholds) {
2066     return This->lpVtbl->get_Thresholds(This,thresholds);
2067 }
2068 static FORCEINLINE HRESULT IFsrmQuota_AddThreshold(IFsrmQuota* This,FSRM_QUOTA_THRESHOLD threshold) {
2069     return This->lpVtbl->AddThreshold(This,threshold);
2070 }
2071 static FORCEINLINE HRESULT IFsrmQuota_DeleteThreshold(IFsrmQuota* This,FSRM_QUOTA_THRESHOLD threshold) {
2072     return This->lpVtbl->DeleteThreshold(This,threshold);
2073 }
2074 static FORCEINLINE HRESULT IFsrmQuota_ModifyThreshold(IFsrmQuota* This,FSRM_QUOTA_THRESHOLD threshold,FSRM_QUOTA_THRESHOLD newThreshold) {
2075     return This->lpVtbl->ModifyThreshold(This,threshold,newThreshold);
2076 }
2077 static FORCEINLINE HRESULT IFsrmQuota_CreateThresholdAction(IFsrmQuota* This,FSRM_QUOTA_THRESHOLD threshold,FsrmActionType actionType,IFsrmAction **action) {
2078     return This->lpVtbl->CreateThresholdAction(This,threshold,actionType,action);
2079 }
2080 static FORCEINLINE HRESULT IFsrmQuota_EnumThresholdActions(IFsrmQuota* This,FSRM_QUOTA_THRESHOLD threshold,IFsrmCollection **actions) {
2081     return This->lpVtbl->EnumThresholdActions(This,threshold,actions);
2082 }
2083 /*** IFsrmQuotaObject methods ***/
2084 static FORCEINLINE HRESULT IFsrmQuota_get_Path(IFsrmQuota* This,BSTR *path) {
2085     return This->lpVtbl->get_Path(This,path);
2086 }
2087 static FORCEINLINE HRESULT IFsrmQuota_get_UserSid(IFsrmQuota* This,BSTR *userSid) {
2088     return This->lpVtbl->get_UserSid(This,userSid);
2089 }
2090 static FORCEINLINE HRESULT IFsrmQuota_get_UserAccount(IFsrmQuota* This,BSTR *userAccount) {
2091     return This->lpVtbl->get_UserAccount(This,userAccount);
2092 }
2093 static FORCEINLINE HRESULT IFsrmQuota_get_SourceTemplateName(IFsrmQuota* This,BSTR *quotaTemplateName) {
2094     return This->lpVtbl->get_SourceTemplateName(This,quotaTemplateName);
2095 }
2096 static FORCEINLINE HRESULT IFsrmQuota_get_MatchesSourceTemplate(IFsrmQuota* This,VARIANT_BOOL *matches) {
2097     return This->lpVtbl->get_MatchesSourceTemplate(This,matches);
2098 }
2099 static FORCEINLINE HRESULT IFsrmQuota_ApplyTemplate(IFsrmQuota* This,BSTR quotaTemplateName) {
2100     return This->lpVtbl->ApplyTemplate(This,quotaTemplateName);
2101 }
2102 /*** IFsrmQuota methods ***/
2103 static FORCEINLINE HRESULT IFsrmQuota_get_QuotaUsed(IFsrmQuota* This,VARIANT *used) {
2104     return This->lpVtbl->get_QuotaUsed(This,used);
2105 }
2106 static FORCEINLINE HRESULT IFsrmQuota_get_QuotaPeakUsage(IFsrmQuota* This,VARIANT *peakUsage) {
2107     return This->lpVtbl->get_QuotaPeakUsage(This,peakUsage);
2108 }
2109 static FORCEINLINE HRESULT IFsrmQuota_get_QuotaPeakUsageTime(IFsrmQuota* This,DATE *peakUsageDateTime) {
2110     return This->lpVtbl->get_QuotaPeakUsageTime(This,peakUsageDateTime);
2111 }
2112 static FORCEINLINE HRESULT IFsrmQuota_ResetPeakUsage(IFsrmQuota* This) {
2113     return This->lpVtbl->ResetPeakUsage(This);
2114 }
2115 static FORCEINLINE HRESULT IFsrmQuota_RefreshUsageProperties(IFsrmQuota* This) {
2116     return This->lpVtbl->RefreshUsageProperties(This);
2117 }
2118 #endif
2119 #endif
2120 
2121 #endif
2122 
2123 HRESULT STDMETHODCALLTYPE IFsrmQuota_get_QuotaUsed_Proxy(
2124     IFsrmQuota* This,
2125     VARIANT *used);
2126 void __RPC_STUB IFsrmQuota_get_QuotaUsed_Stub(
2127     IRpcStubBuffer* This,
2128     IRpcChannelBuffer* pRpcChannelBuffer,
2129     PRPC_MESSAGE pRpcMessage,
2130     DWORD* pdwStubPhase);
2131 HRESULT STDMETHODCALLTYPE IFsrmQuota_get_QuotaPeakUsage_Proxy(
2132     IFsrmQuota* This,
2133     VARIANT *peakUsage);
2134 void __RPC_STUB IFsrmQuota_get_QuotaPeakUsage_Stub(
2135     IRpcStubBuffer* This,
2136     IRpcChannelBuffer* pRpcChannelBuffer,
2137     PRPC_MESSAGE pRpcMessage,
2138     DWORD* pdwStubPhase);
2139 HRESULT STDMETHODCALLTYPE IFsrmQuota_get_QuotaPeakUsageTime_Proxy(
2140     IFsrmQuota* This,
2141     DATE *peakUsageDateTime);
2142 void __RPC_STUB IFsrmQuota_get_QuotaPeakUsageTime_Stub(
2143     IRpcStubBuffer* This,
2144     IRpcChannelBuffer* pRpcChannelBuffer,
2145     PRPC_MESSAGE pRpcMessage,
2146     DWORD* pdwStubPhase);
2147 HRESULT STDMETHODCALLTYPE IFsrmQuota_ResetPeakUsage_Proxy(
2148     IFsrmQuota* This);
2149 void __RPC_STUB IFsrmQuota_ResetPeakUsage_Stub(
2150     IRpcStubBuffer* This,
2151     IRpcChannelBuffer* pRpcChannelBuffer,
2152     PRPC_MESSAGE pRpcMessage,
2153     DWORD* pdwStubPhase);
2154 HRESULT STDMETHODCALLTYPE IFsrmQuota_RefreshUsageProperties_Proxy(
2155     IFsrmQuota* This);
2156 void __RPC_STUB IFsrmQuota_RefreshUsageProperties_Stub(
2157     IRpcStubBuffer* This,
2158     IRpcChannelBuffer* pRpcChannelBuffer,
2159     PRPC_MESSAGE pRpcMessage,
2160     DWORD* pdwStubPhase);
2161 
2162 #endif  /* __IFsrmQuota_INTERFACE_DEFINED__ */
2163 
2164 /*****************************************************************************
2165  * IFsrmAutoApplyQuota interface
2166  */
2167 #ifndef __IFsrmAutoApplyQuota_INTERFACE_DEFINED__
2168 #define __IFsrmAutoApplyQuota_INTERFACE_DEFINED__
2169 
2170 DEFINE_GUID(IID_IFsrmAutoApplyQuota, 0xf82e5729, 0x6aba, 0x4740, 0xbf,0xc7, 0xc7,0xf5,0x8f,0x75,0xfb,0x7b);
2171 #if defined(__cplusplus) && !defined(CINTERFACE)
2172 MIDL_INTERFACE("f82e5729-6aba-4740-bfc7-c7f58f75fb7b")
2173 IFsrmAutoApplyQuota : public IFsrmQuotaObject
2174 {
2175     virtual HRESULT STDMETHODCALLTYPE get_ExcludeFolders(
2176         SAFEARRAY **folders) = 0;
2177 
2178     virtual HRESULT STDMETHODCALLTYPE put_ExcludeFolders(
2179         SAFEARRAY *folders) = 0;
2180 
2181     virtual HRESULT STDMETHODCALLTYPE CommitAndUpdateDerived(
2182         FsrmCommitOptions commitOptions,
2183         FsrmTemplateApplyOptions applyOptions,
2184         IFsrmDerivedObjectsResult **derivedObjectsResult) = 0;
2185 
2186 };
2187 #ifdef __CRT_UUID_DECL
2188 __CRT_UUID_DECL(IFsrmAutoApplyQuota, 0xf82e5729, 0x6aba, 0x4740, 0xbf,0xc7, 0xc7,0xf5,0x8f,0x75,0xfb,0x7b)
2189 #endif
2190 #else
2191 typedef struct IFsrmAutoApplyQuotaVtbl {
2192     BEGIN_INTERFACE
2193 
2194     /*** IUnknown methods ***/
2195     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2196         IFsrmAutoApplyQuota* This,
2197         REFIID riid,
2198         void **ppvObject);
2199 
2200     ULONG (STDMETHODCALLTYPE *AddRef)(
2201         IFsrmAutoApplyQuota* This);
2202 
2203     ULONG (STDMETHODCALLTYPE *Release)(
2204         IFsrmAutoApplyQuota* This);
2205 
2206     /*** IDispatch methods ***/
2207     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2208         IFsrmAutoApplyQuota* This,
2209         UINT *pctinfo);
2210 
2211     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2212         IFsrmAutoApplyQuota* This,
2213         UINT iTInfo,
2214         LCID lcid,
2215         ITypeInfo **ppTInfo);
2216 
2217     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2218         IFsrmAutoApplyQuota* This,
2219         REFIID riid,
2220         LPOLESTR *rgszNames,
2221         UINT cNames,
2222         LCID lcid,
2223         DISPID *rgDispId);
2224 
2225     HRESULT (STDMETHODCALLTYPE *Invoke)(
2226         IFsrmAutoApplyQuota* This,
2227         DISPID dispIdMember,
2228         REFIID riid,
2229         LCID lcid,
2230         WORD wFlags,
2231         DISPPARAMS *pDispParams,
2232         VARIANT *pVarResult,
2233         EXCEPINFO *pExcepInfo,
2234         UINT *puArgErr);
2235 
2236     /*** IFsrmObject methods ***/
2237     HRESULT (STDMETHODCALLTYPE *get_Id)(
2238         IFsrmAutoApplyQuota* This,
2239         FSRM_OBJECT_ID *id);
2240 
2241     HRESULT (STDMETHODCALLTYPE *get_Description)(
2242         IFsrmAutoApplyQuota* This,
2243         BSTR *description);
2244 
2245     HRESULT (STDMETHODCALLTYPE *put_Description)(
2246         IFsrmAutoApplyQuota* This,
2247         BSTR description);
2248 
2249     HRESULT (STDMETHODCALLTYPE *Delete)(
2250         IFsrmAutoApplyQuota* This);
2251 
2252     HRESULT (STDMETHODCALLTYPE *Commit)(
2253         IFsrmAutoApplyQuota* This);
2254 
2255     /*** IFsrmQuotaBase methods ***/
2256     HRESULT (STDMETHODCALLTYPE *get_QuotaLimit)(
2257         IFsrmAutoApplyQuota* This,
2258         VARIANT *quotaLimit);
2259 
2260     HRESULT (STDMETHODCALLTYPE *put_QuotaLimit)(
2261         IFsrmAutoApplyQuota* This,
2262         VARIANT quotaLimit);
2263 
2264     HRESULT (STDMETHODCALLTYPE *get_QuotaFlags)(
2265         IFsrmAutoApplyQuota* This,
2266         LONG *quotaFlags);
2267 
2268     HRESULT (STDMETHODCALLTYPE *put_QuotaFlags)(
2269         IFsrmAutoApplyQuota* This,
2270         LONG quotaFlags);
2271 
2272     HRESULT (STDMETHODCALLTYPE *get_Thresholds)(
2273         IFsrmAutoApplyQuota* This,
2274         SAFEARRAY **thresholds);
2275 
2276     HRESULT (STDMETHODCALLTYPE *AddThreshold)(
2277         IFsrmAutoApplyQuota* This,
2278         FSRM_QUOTA_THRESHOLD threshold);
2279 
2280     HRESULT (STDMETHODCALLTYPE *DeleteThreshold)(
2281         IFsrmAutoApplyQuota* This,
2282         FSRM_QUOTA_THRESHOLD threshold);
2283 
2284     HRESULT (STDMETHODCALLTYPE *ModifyThreshold)(
2285         IFsrmAutoApplyQuota* This,
2286         FSRM_QUOTA_THRESHOLD threshold,
2287         FSRM_QUOTA_THRESHOLD newThreshold);
2288 
2289     HRESULT (STDMETHODCALLTYPE *CreateThresholdAction)(
2290         IFsrmAutoApplyQuota* This,
2291         FSRM_QUOTA_THRESHOLD threshold,
2292         FsrmActionType actionType,
2293         IFsrmAction **action);
2294 
2295     HRESULT (STDMETHODCALLTYPE *EnumThresholdActions)(
2296         IFsrmAutoApplyQuota* This,
2297         FSRM_QUOTA_THRESHOLD threshold,
2298         IFsrmCollection **actions);
2299 
2300     /*** IFsrmQuotaObject methods ***/
2301     HRESULT (STDMETHODCALLTYPE *get_Path)(
2302         IFsrmAutoApplyQuota* This,
2303         BSTR *path);
2304 
2305     HRESULT (STDMETHODCALLTYPE *get_UserSid)(
2306         IFsrmAutoApplyQuota* This,
2307         BSTR *userSid);
2308 
2309     HRESULT (STDMETHODCALLTYPE *get_UserAccount)(
2310         IFsrmAutoApplyQuota* This,
2311         BSTR *userAccount);
2312 
2313     HRESULT (STDMETHODCALLTYPE *get_SourceTemplateName)(
2314         IFsrmAutoApplyQuota* This,
2315         BSTR *quotaTemplateName);
2316 
2317     HRESULT (STDMETHODCALLTYPE *get_MatchesSourceTemplate)(
2318         IFsrmAutoApplyQuota* This,
2319         VARIANT_BOOL *matches);
2320 
2321     HRESULT (STDMETHODCALLTYPE *ApplyTemplate)(
2322         IFsrmAutoApplyQuota* This,
2323         BSTR quotaTemplateName);
2324 
2325     /*** IFsrmAutoApplyQuota methods ***/
2326     HRESULT (STDMETHODCALLTYPE *get_ExcludeFolders)(
2327         IFsrmAutoApplyQuota* This,
2328         SAFEARRAY **folders);
2329 
2330     HRESULT (STDMETHODCALLTYPE *put_ExcludeFolders)(
2331         IFsrmAutoApplyQuota* This,
2332         SAFEARRAY *folders);
2333 
2334     HRESULT (STDMETHODCALLTYPE *CommitAndUpdateDerived)(
2335         IFsrmAutoApplyQuota* This,
2336         FsrmCommitOptions commitOptions,
2337         FsrmTemplateApplyOptions applyOptions,
2338         IFsrmDerivedObjectsResult **derivedObjectsResult);
2339 
2340     END_INTERFACE
2341 } IFsrmAutoApplyQuotaVtbl;
2342 interface IFsrmAutoApplyQuota {
2343     CONST_VTBL IFsrmAutoApplyQuotaVtbl* lpVtbl;
2344 };
2345 
2346 #ifdef COBJMACROS
2347 #ifndef WIDL_C_INLINE_WRAPPERS
2348 /*** IUnknown methods ***/
2349 #define IFsrmAutoApplyQuota_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2350 #define IFsrmAutoApplyQuota_AddRef(This) (This)->lpVtbl->AddRef(This)
2351 #define IFsrmAutoApplyQuota_Release(This) (This)->lpVtbl->Release(This)
2352 /*** IDispatch methods ***/
2353 #define IFsrmAutoApplyQuota_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2354 #define IFsrmAutoApplyQuota_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2355 #define IFsrmAutoApplyQuota_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2356 #define IFsrmAutoApplyQuota_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2357 /*** IFsrmObject methods ***/
2358 #define IFsrmAutoApplyQuota_get_Id(This,id) (This)->lpVtbl->get_Id(This,id)
2359 #define IFsrmAutoApplyQuota_get_Description(This,description) (This)->lpVtbl->get_Description(This,description)
2360 #define IFsrmAutoApplyQuota_put_Description(This,description) (This)->lpVtbl->put_Description(This,description)
2361 #define IFsrmAutoApplyQuota_Delete(This) (This)->lpVtbl->Delete(This)
2362 #define IFsrmAutoApplyQuota_Commit(This) (This)->lpVtbl->Commit(This)
2363 /*** IFsrmQuotaBase methods ***/
2364 #define IFsrmAutoApplyQuota_get_QuotaLimit(This,quotaLimit) (This)->lpVtbl->get_QuotaLimit(This,quotaLimit)
2365 #define IFsrmAutoApplyQuota_put_QuotaLimit(This,quotaLimit) (This)->lpVtbl->put_QuotaLimit(This,quotaLimit)
2366 #define IFsrmAutoApplyQuota_get_QuotaFlags(This,quotaFlags) (This)->lpVtbl->get_QuotaFlags(This,quotaFlags)
2367 #define IFsrmAutoApplyQuota_put_QuotaFlags(This,quotaFlags) (This)->lpVtbl->put_QuotaFlags(This,quotaFlags)
2368 #define IFsrmAutoApplyQuota_get_Thresholds(This,thresholds) (This)->lpVtbl->get_Thresholds(This,thresholds)
2369 #define IFsrmAutoApplyQuota_AddThreshold(This,threshold) (This)->lpVtbl->AddThreshold(This,threshold)
2370 #define IFsrmAutoApplyQuota_DeleteThreshold(This,threshold) (This)->lpVtbl->DeleteThreshold(This,threshold)
2371 #define IFsrmAutoApplyQuota_ModifyThreshold(This,threshold,newThreshold) (This)->lpVtbl->ModifyThreshold(This,threshold,newThreshold)
2372 #define IFsrmAutoApplyQuota_CreateThresholdAction(This,threshold,actionType,action) (This)->lpVtbl->CreateThresholdAction(This,threshold,actionType,action)
2373 #define IFsrmAutoApplyQuota_EnumThresholdActions(This,threshold,actions) (This)->lpVtbl->EnumThresholdActions(This,threshold,actions)
2374 /*** IFsrmQuotaObject methods ***/
2375 #define IFsrmAutoApplyQuota_get_Path(This,path) (This)->lpVtbl->get_Path(This,path)
2376 #define IFsrmAutoApplyQuota_get_UserSid(This,userSid) (This)->lpVtbl->get_UserSid(This,userSid)
2377 #define IFsrmAutoApplyQuota_get_UserAccount(This,userAccount) (This)->lpVtbl->get_UserAccount(This,userAccount)
2378 #define IFsrmAutoApplyQuota_get_SourceTemplateName(This,quotaTemplateName) (This)->lpVtbl->get_SourceTemplateName(This,quotaTemplateName)
2379 #define IFsrmAutoApplyQuota_get_MatchesSourceTemplate(This,matches) (This)->lpVtbl->get_MatchesSourceTemplate(This,matches)
2380 #define IFsrmAutoApplyQuota_ApplyTemplate(This,quotaTemplateName) (This)->lpVtbl->ApplyTemplate(This,quotaTemplateName)
2381 /*** IFsrmAutoApplyQuota methods ***/
2382 #define IFsrmAutoApplyQuota_get_ExcludeFolders(This,folders) (This)->lpVtbl->get_ExcludeFolders(This,folders)
2383 #define IFsrmAutoApplyQuota_put_ExcludeFolders(This,folders) (This)->lpVtbl->put_ExcludeFolders(This,folders)
2384 #define IFsrmAutoApplyQuota_CommitAndUpdateDerived(This,commitOptions,applyOptions,derivedObjectsResult) (This)->lpVtbl->CommitAndUpdateDerived(This,commitOptions,applyOptions,derivedObjectsResult)
2385 #else
2386 /*** IUnknown methods ***/
2387 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_QueryInterface(IFsrmAutoApplyQuota* This,REFIID riid,void **ppvObject) {
2388     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2389 }
2390 static FORCEINLINE ULONG IFsrmAutoApplyQuota_AddRef(IFsrmAutoApplyQuota* This) {
2391     return This->lpVtbl->AddRef(This);
2392 }
2393 static FORCEINLINE ULONG IFsrmAutoApplyQuota_Release(IFsrmAutoApplyQuota* This) {
2394     return This->lpVtbl->Release(This);
2395 }
2396 /*** IDispatch methods ***/
2397 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_GetTypeInfoCount(IFsrmAutoApplyQuota* This,UINT *pctinfo) {
2398     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2399 }
2400 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_GetTypeInfo(IFsrmAutoApplyQuota* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2401     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2402 }
2403 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_GetIDsOfNames(IFsrmAutoApplyQuota* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2404     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2405 }
2406 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_Invoke(IFsrmAutoApplyQuota* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2407     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2408 }
2409 /*** IFsrmObject methods ***/
2410 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_Id(IFsrmAutoApplyQuota* This,FSRM_OBJECT_ID *id) {
2411     return This->lpVtbl->get_Id(This,id);
2412 }
2413 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_Description(IFsrmAutoApplyQuota* This,BSTR *description) {
2414     return This->lpVtbl->get_Description(This,description);
2415 }
2416 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_put_Description(IFsrmAutoApplyQuota* This,BSTR description) {
2417     return This->lpVtbl->put_Description(This,description);
2418 }
2419 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_Delete(IFsrmAutoApplyQuota* This) {
2420     return This->lpVtbl->Delete(This);
2421 }
2422 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_Commit(IFsrmAutoApplyQuota* This) {
2423     return This->lpVtbl->Commit(This);
2424 }
2425 /*** IFsrmQuotaBase methods ***/
2426 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_QuotaLimit(IFsrmAutoApplyQuota* This,VARIANT *quotaLimit) {
2427     return This->lpVtbl->get_QuotaLimit(This,quotaLimit);
2428 }
2429 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_put_QuotaLimit(IFsrmAutoApplyQuota* This,VARIANT quotaLimit) {
2430     return This->lpVtbl->put_QuotaLimit(This,quotaLimit);
2431 }
2432 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_QuotaFlags(IFsrmAutoApplyQuota* This,LONG *quotaFlags) {
2433     return This->lpVtbl->get_QuotaFlags(This,quotaFlags);
2434 }
2435 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_put_QuotaFlags(IFsrmAutoApplyQuota* This,LONG quotaFlags) {
2436     return This->lpVtbl->put_QuotaFlags(This,quotaFlags);
2437 }
2438 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_Thresholds(IFsrmAutoApplyQuota* This,SAFEARRAY **thresholds) {
2439     return This->lpVtbl->get_Thresholds(This,thresholds);
2440 }
2441 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_AddThreshold(IFsrmAutoApplyQuota* This,FSRM_QUOTA_THRESHOLD threshold) {
2442     return This->lpVtbl->AddThreshold(This,threshold);
2443 }
2444 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_DeleteThreshold(IFsrmAutoApplyQuota* This,FSRM_QUOTA_THRESHOLD threshold) {
2445     return This->lpVtbl->DeleteThreshold(This,threshold);
2446 }
2447 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_ModifyThreshold(IFsrmAutoApplyQuota* This,FSRM_QUOTA_THRESHOLD threshold,FSRM_QUOTA_THRESHOLD newThreshold) {
2448     return This->lpVtbl->ModifyThreshold(This,threshold,newThreshold);
2449 }
2450 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_CreateThresholdAction(IFsrmAutoApplyQuota* This,FSRM_QUOTA_THRESHOLD threshold,FsrmActionType actionType,IFsrmAction **action) {
2451     return This->lpVtbl->CreateThresholdAction(This,threshold,actionType,action);
2452 }
2453 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_EnumThresholdActions(IFsrmAutoApplyQuota* This,FSRM_QUOTA_THRESHOLD threshold,IFsrmCollection **actions) {
2454     return This->lpVtbl->EnumThresholdActions(This,threshold,actions);
2455 }
2456 /*** IFsrmQuotaObject methods ***/
2457 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_Path(IFsrmAutoApplyQuota* This,BSTR *path) {
2458     return This->lpVtbl->get_Path(This,path);
2459 }
2460 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_UserSid(IFsrmAutoApplyQuota* This,BSTR *userSid) {
2461     return This->lpVtbl->get_UserSid(This,userSid);
2462 }
2463 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_UserAccount(IFsrmAutoApplyQuota* This,BSTR *userAccount) {
2464     return This->lpVtbl->get_UserAccount(This,userAccount);
2465 }
2466 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_SourceTemplateName(IFsrmAutoApplyQuota* This,BSTR *quotaTemplateName) {
2467     return This->lpVtbl->get_SourceTemplateName(This,quotaTemplateName);
2468 }
2469 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_MatchesSourceTemplate(IFsrmAutoApplyQuota* This,VARIANT_BOOL *matches) {
2470     return This->lpVtbl->get_MatchesSourceTemplate(This,matches);
2471 }
2472 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_ApplyTemplate(IFsrmAutoApplyQuota* This,BSTR quotaTemplateName) {
2473     return This->lpVtbl->ApplyTemplate(This,quotaTemplateName);
2474 }
2475 /*** IFsrmAutoApplyQuota methods ***/
2476 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_get_ExcludeFolders(IFsrmAutoApplyQuota* This,SAFEARRAY **folders) {
2477     return This->lpVtbl->get_ExcludeFolders(This,folders);
2478 }
2479 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_put_ExcludeFolders(IFsrmAutoApplyQuota* This,SAFEARRAY *folders) {
2480     return This->lpVtbl->put_ExcludeFolders(This,folders);
2481 }
2482 static FORCEINLINE HRESULT IFsrmAutoApplyQuota_CommitAndUpdateDerived(IFsrmAutoApplyQuota* This,FsrmCommitOptions commitOptions,FsrmTemplateApplyOptions applyOptions,IFsrmDerivedObjectsResult **derivedObjectsResult) {
2483     return This->lpVtbl->CommitAndUpdateDerived(This,commitOptions,applyOptions,derivedObjectsResult);
2484 }
2485 #endif
2486 #endif
2487 
2488 #endif
2489 
2490 HRESULT STDMETHODCALLTYPE IFsrmAutoApplyQuota_get_ExcludeFolders_Proxy(
2491     IFsrmAutoApplyQuota* This,
2492     SAFEARRAY **folders);
2493 void __RPC_STUB IFsrmAutoApplyQuota_get_ExcludeFolders_Stub(
2494     IRpcStubBuffer* This,
2495     IRpcChannelBuffer* pRpcChannelBuffer,
2496     PRPC_MESSAGE pRpcMessage,
2497     DWORD* pdwStubPhase);
2498 HRESULT STDMETHODCALLTYPE IFsrmAutoApplyQuota_put_ExcludeFolders_Proxy(
2499     IFsrmAutoApplyQuota* This,
2500     SAFEARRAY *folders);
2501 void __RPC_STUB IFsrmAutoApplyQuota_put_ExcludeFolders_Stub(
2502     IRpcStubBuffer* This,
2503     IRpcChannelBuffer* pRpcChannelBuffer,
2504     PRPC_MESSAGE pRpcMessage,
2505     DWORD* pdwStubPhase);
2506 HRESULT STDMETHODCALLTYPE IFsrmAutoApplyQuota_CommitAndUpdateDerived_Proxy(
2507     IFsrmAutoApplyQuota* This,
2508     FsrmCommitOptions commitOptions,
2509     FsrmTemplateApplyOptions applyOptions,
2510     IFsrmDerivedObjectsResult **derivedObjectsResult);
2511 void __RPC_STUB IFsrmAutoApplyQuota_CommitAndUpdateDerived_Stub(
2512     IRpcStubBuffer* This,
2513     IRpcChannelBuffer* pRpcChannelBuffer,
2514     PRPC_MESSAGE pRpcMessage,
2515     DWORD* pdwStubPhase);
2516 
2517 #endif  /* __IFsrmAutoApplyQuota_INTERFACE_DEFINED__ */
2518 
2519 /*****************************************************************************
2520  * IFsrmQuotaManagerEx interface
2521  */
2522 #ifndef __IFsrmQuotaManagerEx_INTERFACE_DEFINED__
2523 #define __IFsrmQuotaManagerEx_INTERFACE_DEFINED__
2524 
2525 DEFINE_GUID(IID_IFsrmQuotaManagerEx, 0x4846cb01, 0xd430, 0x494f, 0xab,0xb4, 0xb1,0x05,0x49,0x99,0xfb,0x09);
2526 #if defined(__cplusplus) && !defined(CINTERFACE)
2527 MIDL_INTERFACE("4846cb01-d430-494f-abb4-b1054999fb09")
2528 IFsrmQuotaManagerEx : public IFsrmQuotaManager
2529 {
2530     virtual HRESULT STDMETHODCALLTYPE IsAffectedByQuota(
2531         BSTR path,
2532         FsrmEnumOptions options,
2533         VARIANT_BOOL *affected) = 0;
2534 
2535 };
2536 #ifdef __CRT_UUID_DECL
2537 __CRT_UUID_DECL(IFsrmQuotaManagerEx, 0x4846cb01, 0xd430, 0x494f, 0xab,0xb4, 0xb1,0x05,0x49,0x99,0xfb,0x09)
2538 #endif
2539 #else
2540 typedef struct IFsrmQuotaManagerExVtbl {
2541     BEGIN_INTERFACE
2542 
2543     /*** IUnknown methods ***/
2544     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2545         IFsrmQuotaManagerEx* This,
2546         REFIID riid,
2547         void **ppvObject);
2548 
2549     ULONG (STDMETHODCALLTYPE *AddRef)(
2550         IFsrmQuotaManagerEx* This);
2551 
2552     ULONG (STDMETHODCALLTYPE *Release)(
2553         IFsrmQuotaManagerEx* This);
2554 
2555     /*** IDispatch methods ***/
2556     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2557         IFsrmQuotaManagerEx* This,
2558         UINT *pctinfo);
2559 
2560     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2561         IFsrmQuotaManagerEx* This,
2562         UINT iTInfo,
2563         LCID lcid,
2564         ITypeInfo **ppTInfo);
2565 
2566     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2567         IFsrmQuotaManagerEx* This,
2568         REFIID riid,
2569         LPOLESTR *rgszNames,
2570         UINT cNames,
2571         LCID lcid,
2572         DISPID *rgDispId);
2573 
2574     HRESULT (STDMETHODCALLTYPE *Invoke)(
2575         IFsrmQuotaManagerEx* This,
2576         DISPID dispIdMember,
2577         REFIID riid,
2578         LCID lcid,
2579         WORD wFlags,
2580         DISPPARAMS *pDispParams,
2581         VARIANT *pVarResult,
2582         EXCEPINFO *pExcepInfo,
2583         UINT *puArgErr);
2584 
2585     /*** IFsrmQuotaManager methods ***/
2586     HRESULT (STDMETHODCALLTYPE *get_ActionVariables)(
2587         IFsrmQuotaManagerEx* This,
2588         SAFEARRAY **variables);
2589 
2590     HRESULT (STDMETHODCALLTYPE *get_ActionVariableDescriptions)(
2591         IFsrmQuotaManagerEx* This,
2592         SAFEARRAY **descriptions);
2593 
2594     HRESULT (STDMETHODCALLTYPE *CreateQuota)(
2595         IFsrmQuotaManagerEx* This,
2596         BSTR path,
2597         IFsrmQuota **quota);
2598 
2599     HRESULT (STDMETHODCALLTYPE *CreateAutoApplyQuota)(
2600         IFsrmQuotaManagerEx* This,
2601         BSTR quotaTemplateName,
2602         BSTR path,
2603         IFsrmAutoApplyQuota **quota);
2604 
2605     HRESULT (STDMETHODCALLTYPE *GetQuota)(
2606         IFsrmQuotaManagerEx* This,
2607         BSTR path,
2608         IFsrmQuota **quota);
2609 
2610     HRESULT (STDMETHODCALLTYPE *GetAutoApplyQuota)(
2611         IFsrmQuotaManagerEx* This,
2612         BSTR path,
2613         IFsrmAutoApplyQuota **quota);
2614 
2615     HRESULT (STDMETHODCALLTYPE *GetRestrictiveQuota)(
2616         IFsrmQuotaManagerEx* This,
2617         BSTR path,
2618         IFsrmQuota **quota);
2619 
2620     HRESULT (STDMETHODCALLTYPE *EnumQuotas)(
2621         IFsrmQuotaManagerEx* This,
2622         BSTR path,
2623         FsrmEnumOptions options,
2624         IFsrmCommittableCollection **quotas);
2625 
2626     HRESULT (STDMETHODCALLTYPE *EnumAutoApplyQuotas)(
2627         IFsrmQuotaManagerEx* This,
2628         BSTR path,
2629         FsrmEnumOptions options,
2630         IFsrmCommittableCollection **quotas);
2631 
2632     HRESULT (STDMETHODCALLTYPE *EnumEffectiveQuotas)(
2633         IFsrmQuotaManagerEx* This,
2634         BSTR path,
2635         FsrmEnumOptions options,
2636         IFsrmCommittableCollection **quotas);
2637 
2638     HRESULT (STDMETHODCALLTYPE *Scan)(
2639         IFsrmQuotaManagerEx* This,
2640         BSTR strPath);
2641 
2642     HRESULT (STDMETHODCALLTYPE *CreateQuotaCollection)(
2643         IFsrmQuotaManagerEx* This,
2644         IFsrmCommittableCollection **collection);
2645 
2646     /*** IFsrmQuotaManagerEx methods ***/
2647     HRESULT (STDMETHODCALLTYPE *IsAffectedByQuota)(
2648         IFsrmQuotaManagerEx* This,
2649         BSTR path,
2650         FsrmEnumOptions options,
2651         VARIANT_BOOL *affected);
2652 
2653     END_INTERFACE
2654 } IFsrmQuotaManagerExVtbl;
2655 interface IFsrmQuotaManagerEx {
2656     CONST_VTBL IFsrmQuotaManagerExVtbl* lpVtbl;
2657 };
2658 
2659 #ifdef COBJMACROS
2660 #ifndef WIDL_C_INLINE_WRAPPERS
2661 /*** IUnknown methods ***/
2662 #define IFsrmQuotaManagerEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2663 #define IFsrmQuotaManagerEx_AddRef(This) (This)->lpVtbl->AddRef(This)
2664 #define IFsrmQuotaManagerEx_Release(This) (This)->lpVtbl->Release(This)
2665 /*** IDispatch methods ***/
2666 #define IFsrmQuotaManagerEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2667 #define IFsrmQuotaManagerEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2668 #define IFsrmQuotaManagerEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2669 #define IFsrmQuotaManagerEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2670 /*** IFsrmQuotaManager methods ***/
2671 #define IFsrmQuotaManagerEx_get_ActionVariables(This,variables) (This)->lpVtbl->get_ActionVariables(This,variables)
2672 #define IFsrmQuotaManagerEx_get_ActionVariableDescriptions(This,descriptions) (This)->lpVtbl->get_ActionVariableDescriptions(This,descriptions)
2673 #define IFsrmQuotaManagerEx_CreateQuota(This,path,quota) (This)->lpVtbl->CreateQuota(This,path,quota)
2674 #define IFsrmQuotaManagerEx_CreateAutoApplyQuota(This,quotaTemplateName,path,quota) (This)->lpVtbl->CreateAutoApplyQuota(This,quotaTemplateName,path,quota)
2675 #define IFsrmQuotaManagerEx_GetQuota(This,path,quota) (This)->lpVtbl->GetQuota(This,path,quota)
2676 #define IFsrmQuotaManagerEx_GetAutoApplyQuota(This,path,quota) (This)->lpVtbl->GetAutoApplyQuota(This,path,quota)
2677 #define IFsrmQuotaManagerEx_GetRestrictiveQuota(This,path,quota) (This)->lpVtbl->GetRestrictiveQuota(This,path,quota)
2678 #define IFsrmQuotaManagerEx_EnumQuotas(This,path,options,quotas) (This)->lpVtbl->EnumQuotas(This,path,options,quotas)
2679 #define IFsrmQuotaManagerEx_EnumAutoApplyQuotas(This,path,options,quotas) (This)->lpVtbl->EnumAutoApplyQuotas(This,path,options,quotas)
2680 #define IFsrmQuotaManagerEx_EnumEffectiveQuotas(This,path,options,quotas) (This)->lpVtbl->EnumEffectiveQuotas(This,path,options,quotas)
2681 #define IFsrmQuotaManagerEx_Scan(This,strPath) (This)->lpVtbl->Scan(This,strPath)
2682 #define IFsrmQuotaManagerEx_CreateQuotaCollection(This,collection) (This)->lpVtbl->CreateQuotaCollection(This,collection)
2683 /*** IFsrmQuotaManagerEx methods ***/
2684 #define IFsrmQuotaManagerEx_IsAffectedByQuota(This,path,options,affected) (This)->lpVtbl->IsAffectedByQuota(This,path,options,affected)
2685 #else
2686 /*** IUnknown methods ***/
2687 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_QueryInterface(IFsrmQuotaManagerEx* This,REFIID riid,void **ppvObject) {
2688     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2689 }
2690 static FORCEINLINE ULONG IFsrmQuotaManagerEx_AddRef(IFsrmQuotaManagerEx* This) {
2691     return This->lpVtbl->AddRef(This);
2692 }
2693 static FORCEINLINE ULONG IFsrmQuotaManagerEx_Release(IFsrmQuotaManagerEx* This) {
2694     return This->lpVtbl->Release(This);
2695 }
2696 /*** IDispatch methods ***/
2697 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_GetTypeInfoCount(IFsrmQuotaManagerEx* This,UINT *pctinfo) {
2698     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2699 }
2700 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_GetTypeInfo(IFsrmQuotaManagerEx* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2701     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2702 }
2703 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_GetIDsOfNames(IFsrmQuotaManagerEx* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2704     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2705 }
2706 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_Invoke(IFsrmQuotaManagerEx* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2707     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2708 }
2709 /*** IFsrmQuotaManager methods ***/
2710 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_get_ActionVariables(IFsrmQuotaManagerEx* This,SAFEARRAY **variables) {
2711     return This->lpVtbl->get_ActionVariables(This,variables);
2712 }
2713 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_get_ActionVariableDescriptions(IFsrmQuotaManagerEx* This,SAFEARRAY **descriptions) {
2714     return This->lpVtbl->get_ActionVariableDescriptions(This,descriptions);
2715 }
2716 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_CreateQuota(IFsrmQuotaManagerEx* This,BSTR path,IFsrmQuota **quota) {
2717     return This->lpVtbl->CreateQuota(This,path,quota);
2718 }
2719 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_CreateAutoApplyQuota(IFsrmQuotaManagerEx* This,BSTR quotaTemplateName,BSTR path,IFsrmAutoApplyQuota **quota) {
2720     return This->lpVtbl->CreateAutoApplyQuota(This,quotaTemplateName,path,quota);
2721 }
2722 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_GetQuota(IFsrmQuotaManagerEx* This,BSTR path,IFsrmQuota **quota) {
2723     return This->lpVtbl->GetQuota(This,path,quota);
2724 }
2725 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_GetAutoApplyQuota(IFsrmQuotaManagerEx* This,BSTR path,IFsrmAutoApplyQuota **quota) {
2726     return This->lpVtbl->GetAutoApplyQuota(This,path,quota);
2727 }
2728 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_GetRestrictiveQuota(IFsrmQuotaManagerEx* This,BSTR path,IFsrmQuota **quota) {
2729     return This->lpVtbl->GetRestrictiveQuota(This,path,quota);
2730 }
2731 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_EnumQuotas(IFsrmQuotaManagerEx* This,BSTR path,FsrmEnumOptions options,IFsrmCommittableCollection **quotas) {
2732     return This->lpVtbl->EnumQuotas(This,path,options,quotas);
2733 }
2734 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_EnumAutoApplyQuotas(IFsrmQuotaManagerEx* This,BSTR path,FsrmEnumOptions options,IFsrmCommittableCollection **quotas) {
2735     return This->lpVtbl->EnumAutoApplyQuotas(This,path,options,quotas);
2736 }
2737 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_EnumEffectiveQuotas(IFsrmQuotaManagerEx* This,BSTR path,FsrmEnumOptions options,IFsrmCommittableCollection **quotas) {
2738     return This->lpVtbl->EnumEffectiveQuotas(This,path,options,quotas);
2739 }
2740 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_Scan(IFsrmQuotaManagerEx* This,BSTR strPath) {
2741     return This->lpVtbl->Scan(This,strPath);
2742 }
2743 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_CreateQuotaCollection(IFsrmQuotaManagerEx* This,IFsrmCommittableCollection **collection) {
2744     return This->lpVtbl->CreateQuotaCollection(This,collection);
2745 }
2746 /*** IFsrmQuotaManagerEx methods ***/
2747 static FORCEINLINE HRESULT IFsrmQuotaManagerEx_IsAffectedByQuota(IFsrmQuotaManagerEx* This,BSTR path,FsrmEnumOptions options,VARIANT_BOOL *affected) {
2748     return This->lpVtbl->IsAffectedByQuota(This,path,options,affected);
2749 }
2750 #endif
2751 #endif
2752 
2753 #endif
2754 
2755 HRESULT STDMETHODCALLTYPE IFsrmQuotaManagerEx_IsAffectedByQuota_Proxy(
2756     IFsrmQuotaManagerEx* This,
2757     BSTR path,
2758     FsrmEnumOptions options,
2759     VARIANT_BOOL *affected);
2760 void __RPC_STUB IFsrmQuotaManagerEx_IsAffectedByQuota_Stub(
2761     IRpcStubBuffer* This,
2762     IRpcChannelBuffer* pRpcChannelBuffer,
2763     PRPC_MESSAGE pRpcMessage,
2764     DWORD* pdwStubPhase);
2765 
2766 #endif  /* __IFsrmQuotaManagerEx_INTERFACE_DEFINED__ */
2767 
2768 /*****************************************************************************
2769  * IFsrmQuotaTemplateImported interface
2770  */
2771 #ifndef __IFsrmQuotaTemplateImported_INTERFACE_DEFINED__
2772 #define __IFsrmQuotaTemplateImported_INTERFACE_DEFINED__
2773 
2774 DEFINE_GUID(IID_IFsrmQuotaTemplateImported, 0x9a2bf113, 0xa329, 0x44cc, 0x80,0x9a, 0x5c,0x00,0xfc,0xe8,0xda,0x40);
2775 #if defined(__cplusplus) && !defined(CINTERFACE)
2776 MIDL_INTERFACE("9a2bf113-a329-44cc-809a-5c00fce8da40")
2777 IFsrmQuotaTemplateImported : public IFsrmQuotaTemplate
2778 {
2779     virtual HRESULT STDMETHODCALLTYPE get_OverwriteOnCommit(
2780         VARIANT_BOOL *overwrite) = 0;
2781 
2782     virtual HRESULT STDMETHODCALLTYPE put_OverwriteOnCommit(
2783         VARIANT_BOOL overwrite) = 0;
2784 
2785 };
2786 #ifdef __CRT_UUID_DECL
2787 __CRT_UUID_DECL(IFsrmQuotaTemplateImported, 0x9a2bf113, 0xa329, 0x44cc, 0x80,0x9a, 0x5c,0x00,0xfc,0xe8,0xda,0x40)
2788 #endif
2789 #else
2790 typedef struct IFsrmQuotaTemplateImportedVtbl {
2791     BEGIN_INTERFACE
2792 
2793     /*** IUnknown methods ***/
2794     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2795         IFsrmQuotaTemplateImported* This,
2796         REFIID riid,
2797         void **ppvObject);
2798 
2799     ULONG (STDMETHODCALLTYPE *AddRef)(
2800         IFsrmQuotaTemplateImported* This);
2801 
2802     ULONG (STDMETHODCALLTYPE *Release)(
2803         IFsrmQuotaTemplateImported* This);
2804 
2805     /*** IDispatch methods ***/
2806     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2807         IFsrmQuotaTemplateImported* This,
2808         UINT *pctinfo);
2809 
2810     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2811         IFsrmQuotaTemplateImported* This,
2812         UINT iTInfo,
2813         LCID lcid,
2814         ITypeInfo **ppTInfo);
2815 
2816     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2817         IFsrmQuotaTemplateImported* This,
2818         REFIID riid,
2819         LPOLESTR *rgszNames,
2820         UINT cNames,
2821         LCID lcid,
2822         DISPID *rgDispId);
2823 
2824     HRESULT (STDMETHODCALLTYPE *Invoke)(
2825         IFsrmQuotaTemplateImported* This,
2826         DISPID dispIdMember,
2827         REFIID riid,
2828         LCID lcid,
2829         WORD wFlags,
2830         DISPPARAMS *pDispParams,
2831         VARIANT *pVarResult,
2832         EXCEPINFO *pExcepInfo,
2833         UINT *puArgErr);
2834 
2835     /*** IFsrmObject methods ***/
2836     HRESULT (STDMETHODCALLTYPE *get_Id)(
2837         IFsrmQuotaTemplateImported* This,
2838         FSRM_OBJECT_ID *id);
2839 
2840     HRESULT (STDMETHODCALLTYPE *get_Description)(
2841         IFsrmQuotaTemplateImported* This,
2842         BSTR *description);
2843 
2844     HRESULT (STDMETHODCALLTYPE *put_Description)(
2845         IFsrmQuotaTemplateImported* This,
2846         BSTR description);
2847 
2848     HRESULT (STDMETHODCALLTYPE *Delete)(
2849         IFsrmQuotaTemplateImported* This);
2850 
2851     HRESULT (STDMETHODCALLTYPE *Commit)(
2852         IFsrmQuotaTemplateImported* This);
2853 
2854     /*** IFsrmQuotaBase methods ***/
2855     HRESULT (STDMETHODCALLTYPE *get_QuotaLimit)(
2856         IFsrmQuotaTemplateImported* This,
2857         VARIANT *quotaLimit);
2858 
2859     HRESULT (STDMETHODCALLTYPE *put_QuotaLimit)(
2860         IFsrmQuotaTemplateImported* This,
2861         VARIANT quotaLimit);
2862 
2863     HRESULT (STDMETHODCALLTYPE *get_QuotaFlags)(
2864         IFsrmQuotaTemplateImported* This,
2865         LONG *quotaFlags);
2866 
2867     HRESULT (STDMETHODCALLTYPE *put_QuotaFlags)(
2868         IFsrmQuotaTemplateImported* This,
2869         LONG quotaFlags);
2870 
2871     HRESULT (STDMETHODCALLTYPE *get_Thresholds)(
2872         IFsrmQuotaTemplateImported* This,
2873         SAFEARRAY **thresholds);
2874 
2875     HRESULT (STDMETHODCALLTYPE *AddThreshold)(
2876         IFsrmQuotaTemplateImported* This,
2877         FSRM_QUOTA_THRESHOLD threshold);
2878 
2879     HRESULT (STDMETHODCALLTYPE *DeleteThreshold)(
2880         IFsrmQuotaTemplateImported* This,
2881         FSRM_QUOTA_THRESHOLD threshold);
2882 
2883     HRESULT (STDMETHODCALLTYPE *ModifyThreshold)(
2884         IFsrmQuotaTemplateImported* This,
2885         FSRM_QUOTA_THRESHOLD threshold,
2886         FSRM_QUOTA_THRESHOLD newThreshold);
2887 
2888     HRESULT (STDMETHODCALLTYPE *CreateThresholdAction)(
2889         IFsrmQuotaTemplateImported* This,
2890         FSRM_QUOTA_THRESHOLD threshold,
2891         FsrmActionType actionType,
2892         IFsrmAction **action);
2893 
2894     HRESULT (STDMETHODCALLTYPE *EnumThresholdActions)(
2895         IFsrmQuotaTemplateImported* This,
2896         FSRM_QUOTA_THRESHOLD threshold,
2897         IFsrmCollection **actions);
2898 
2899     /*** IFsrmQuotaTemplate methods ***/
2900     HRESULT (STDMETHODCALLTYPE *get_Name)(
2901         IFsrmQuotaTemplateImported* This,
2902         BSTR *name);
2903 
2904     HRESULT (STDMETHODCALLTYPE *put_Name)(
2905         IFsrmQuotaTemplateImported* This,
2906         BSTR name);
2907 
2908     HRESULT (STDMETHODCALLTYPE *CopyTemplate)(
2909         IFsrmQuotaTemplateImported* This,
2910         BSTR quotaTemplateName);
2911 
2912     HRESULT (STDMETHODCALLTYPE *CommitAndUpdateDerived)(
2913         IFsrmQuotaTemplateImported* This,
2914         FsrmCommitOptions commitOptions,
2915         FsrmTemplateApplyOptions applyOptions,
2916         IFsrmDerivedObjectsResult **derivedObjectsResult);
2917 
2918     /*** IFsrmQuotaTemplateImported methods ***/
2919     HRESULT (STDMETHODCALLTYPE *get_OverwriteOnCommit)(
2920         IFsrmQuotaTemplateImported* This,
2921         VARIANT_BOOL *overwrite);
2922 
2923     HRESULT (STDMETHODCALLTYPE *put_OverwriteOnCommit)(
2924         IFsrmQuotaTemplateImported* This,
2925         VARIANT_BOOL overwrite);
2926 
2927     END_INTERFACE
2928 } IFsrmQuotaTemplateImportedVtbl;
2929 interface IFsrmQuotaTemplateImported {
2930     CONST_VTBL IFsrmQuotaTemplateImportedVtbl* lpVtbl;
2931 };
2932 
2933 #ifdef COBJMACROS
2934 #ifndef WIDL_C_INLINE_WRAPPERS
2935 /*** IUnknown methods ***/
2936 #define IFsrmQuotaTemplateImported_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2937 #define IFsrmQuotaTemplateImported_AddRef(This) (This)->lpVtbl->AddRef(This)
2938 #define IFsrmQuotaTemplateImported_Release(This) (This)->lpVtbl->Release(This)
2939 /*** IDispatch methods ***/
2940 #define IFsrmQuotaTemplateImported_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2941 #define IFsrmQuotaTemplateImported_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2942 #define IFsrmQuotaTemplateImported_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2943 #define IFsrmQuotaTemplateImported_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2944 /*** IFsrmObject methods ***/
2945 #define IFsrmQuotaTemplateImported_get_Id(This,id) (This)->lpVtbl->get_Id(This,id)
2946 #define IFsrmQuotaTemplateImported_get_Description(This,description) (This)->lpVtbl->get_Description(This,description)
2947 #define IFsrmQuotaTemplateImported_put_Description(This,description) (This)->lpVtbl->put_Description(This,description)
2948 #define IFsrmQuotaTemplateImported_Delete(This) (This)->lpVtbl->Delete(This)
2949 #define IFsrmQuotaTemplateImported_Commit(This) (This)->lpVtbl->Commit(This)
2950 /*** IFsrmQuotaBase methods ***/
2951 #define IFsrmQuotaTemplateImported_get_QuotaLimit(This,quotaLimit) (This)->lpVtbl->get_QuotaLimit(This,quotaLimit)
2952 #define IFsrmQuotaTemplateImported_put_QuotaLimit(This,quotaLimit) (This)->lpVtbl->put_QuotaLimit(This,quotaLimit)
2953 #define IFsrmQuotaTemplateImported_get_QuotaFlags(This,quotaFlags) (This)->lpVtbl->get_QuotaFlags(This,quotaFlags)
2954 #define IFsrmQuotaTemplateImported_put_QuotaFlags(This,quotaFlags) (This)->lpVtbl->put_QuotaFlags(This,quotaFlags)
2955 #define IFsrmQuotaTemplateImported_get_Thresholds(This,thresholds) (This)->lpVtbl->get_Thresholds(This,thresholds)
2956 #define IFsrmQuotaTemplateImported_AddThreshold(This,threshold) (This)->lpVtbl->AddThreshold(This,threshold)
2957 #define IFsrmQuotaTemplateImported_DeleteThreshold(This,threshold) (This)->lpVtbl->DeleteThreshold(This,threshold)
2958 #define IFsrmQuotaTemplateImported_ModifyThreshold(This,threshold,newThreshold) (This)->lpVtbl->ModifyThreshold(This,threshold,newThreshold)
2959 #define IFsrmQuotaTemplateImported_CreateThresholdAction(This,threshold,actionType,action) (This)->lpVtbl->CreateThresholdAction(This,threshold,actionType,action)
2960 #define IFsrmQuotaTemplateImported_EnumThresholdActions(This,threshold,actions) (This)->lpVtbl->EnumThresholdActions(This,threshold,actions)
2961 /*** IFsrmQuotaTemplate methods ***/
2962 #define IFsrmQuotaTemplateImported_get_Name(This,name) (This)->lpVtbl->get_Name(This,name)
2963 #define IFsrmQuotaTemplateImported_put_Name(This,name) (This)->lpVtbl->put_Name(This,name)
2964 #define IFsrmQuotaTemplateImported_CopyTemplate(This,quotaTemplateName) (This)->lpVtbl->CopyTemplate(This,quotaTemplateName)
2965 #define IFsrmQuotaTemplateImported_CommitAndUpdateDerived(This,commitOptions,applyOptions,derivedObjectsResult) (This)->lpVtbl->CommitAndUpdateDerived(This,commitOptions,applyOptions,derivedObjectsResult)
2966 /*** IFsrmQuotaTemplateImported methods ***/
2967 #define IFsrmQuotaTemplateImported_get_OverwriteOnCommit(This,overwrite) (This)->lpVtbl->get_OverwriteOnCommit(This,overwrite)
2968 #define IFsrmQuotaTemplateImported_put_OverwriteOnCommit(This,overwrite) (This)->lpVtbl->put_OverwriteOnCommit(This,overwrite)
2969 #else
2970 /*** IUnknown methods ***/
2971 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_QueryInterface(IFsrmQuotaTemplateImported* This,REFIID riid,void **ppvObject) {
2972     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2973 }
2974 static FORCEINLINE ULONG IFsrmQuotaTemplateImported_AddRef(IFsrmQuotaTemplateImported* This) {
2975     return This->lpVtbl->AddRef(This);
2976 }
2977 static FORCEINLINE ULONG IFsrmQuotaTemplateImported_Release(IFsrmQuotaTemplateImported* This) {
2978     return This->lpVtbl->Release(This);
2979 }
2980 /*** IDispatch methods ***/
2981 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_GetTypeInfoCount(IFsrmQuotaTemplateImported* This,UINT *pctinfo) {
2982     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2983 }
2984 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_GetTypeInfo(IFsrmQuotaTemplateImported* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2985     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2986 }
2987 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_GetIDsOfNames(IFsrmQuotaTemplateImported* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2988     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2989 }
2990 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_Invoke(IFsrmQuotaTemplateImported* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2991     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2992 }
2993 /*** IFsrmObject methods ***/
2994 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_get_Id(IFsrmQuotaTemplateImported* This,FSRM_OBJECT_ID *id) {
2995     return This->lpVtbl->get_Id(This,id);
2996 }
2997 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_get_Description(IFsrmQuotaTemplateImported* This,BSTR *description) {
2998     return This->lpVtbl->get_Description(This,description);
2999 }
3000 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_put_Description(IFsrmQuotaTemplateImported* This,BSTR description) {
3001     return This->lpVtbl->put_Description(This,description);
3002 }
3003 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_Delete(IFsrmQuotaTemplateImported* This) {
3004     return This->lpVtbl->Delete(This);
3005 }
3006 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_Commit(IFsrmQuotaTemplateImported* This) {
3007     return This->lpVtbl->Commit(This);
3008 }
3009 /*** IFsrmQuotaBase methods ***/
3010 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_get_QuotaLimit(IFsrmQuotaTemplateImported* This,VARIANT *quotaLimit) {
3011     return This->lpVtbl->get_QuotaLimit(This,quotaLimit);
3012 }
3013 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_put_QuotaLimit(IFsrmQuotaTemplateImported* This,VARIANT quotaLimit) {
3014     return This->lpVtbl->put_QuotaLimit(This,quotaLimit);
3015 }
3016 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_get_QuotaFlags(IFsrmQuotaTemplateImported* This,LONG *quotaFlags) {
3017     return This->lpVtbl->get_QuotaFlags(This,quotaFlags);
3018 }
3019 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_put_QuotaFlags(IFsrmQuotaTemplateImported* This,LONG quotaFlags) {
3020     return This->lpVtbl->put_QuotaFlags(This,quotaFlags);
3021 }
3022 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_get_Thresholds(IFsrmQuotaTemplateImported* This,SAFEARRAY **thresholds) {
3023     return This->lpVtbl->get_Thresholds(This,thresholds);
3024 }
3025 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_AddThreshold(IFsrmQuotaTemplateImported* This,FSRM_QUOTA_THRESHOLD threshold) {
3026     return This->lpVtbl->AddThreshold(This,threshold);
3027 }
3028 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_DeleteThreshold(IFsrmQuotaTemplateImported* This,FSRM_QUOTA_THRESHOLD threshold) {
3029     return This->lpVtbl->DeleteThreshold(This,threshold);
3030 }
3031 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_ModifyThreshold(IFsrmQuotaTemplateImported* This,FSRM_QUOTA_THRESHOLD threshold,FSRM_QUOTA_THRESHOLD newThreshold) {
3032     return This->lpVtbl->ModifyThreshold(This,threshold,newThreshold);
3033 }
3034 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_CreateThresholdAction(IFsrmQuotaTemplateImported* This,FSRM_QUOTA_THRESHOLD threshold,FsrmActionType actionType,IFsrmAction **action) {
3035     return This->lpVtbl->CreateThresholdAction(This,threshold,actionType,action);
3036 }
3037 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_EnumThresholdActions(IFsrmQuotaTemplateImported* This,FSRM_QUOTA_THRESHOLD threshold,IFsrmCollection **actions) {
3038     return This->lpVtbl->EnumThresholdActions(This,threshold,actions);
3039 }
3040 /*** IFsrmQuotaTemplate methods ***/
3041 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_get_Name(IFsrmQuotaTemplateImported* This,BSTR *name) {
3042     return This->lpVtbl->get_Name(This,name);
3043 }
3044 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_put_Name(IFsrmQuotaTemplateImported* This,BSTR name) {
3045     return This->lpVtbl->put_Name(This,name);
3046 }
3047 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_CopyTemplate(IFsrmQuotaTemplateImported* This,BSTR quotaTemplateName) {
3048     return This->lpVtbl->CopyTemplate(This,quotaTemplateName);
3049 }
3050 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_CommitAndUpdateDerived(IFsrmQuotaTemplateImported* This,FsrmCommitOptions commitOptions,FsrmTemplateApplyOptions applyOptions,IFsrmDerivedObjectsResult **derivedObjectsResult) {
3051     return This->lpVtbl->CommitAndUpdateDerived(This,commitOptions,applyOptions,derivedObjectsResult);
3052 }
3053 /*** IFsrmQuotaTemplateImported methods ***/
3054 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_get_OverwriteOnCommit(IFsrmQuotaTemplateImported* This,VARIANT_BOOL *overwrite) {
3055     return This->lpVtbl->get_OverwriteOnCommit(This,overwrite);
3056 }
3057 static FORCEINLINE HRESULT IFsrmQuotaTemplateImported_put_OverwriteOnCommit(IFsrmQuotaTemplateImported* This,VARIANT_BOOL overwrite) {
3058     return This->lpVtbl->put_OverwriteOnCommit(This,overwrite);
3059 }
3060 #endif
3061 #endif
3062 
3063 #endif
3064 
3065 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplateImported_get_OverwriteOnCommit_Proxy(
3066     IFsrmQuotaTemplateImported* This,
3067     VARIANT_BOOL *overwrite);
3068 void __RPC_STUB IFsrmQuotaTemplateImported_get_OverwriteOnCommit_Stub(
3069     IRpcStubBuffer* This,
3070     IRpcChannelBuffer* pRpcChannelBuffer,
3071     PRPC_MESSAGE pRpcMessage,
3072     DWORD* pdwStubPhase);
3073 HRESULT STDMETHODCALLTYPE IFsrmQuotaTemplateImported_put_OverwriteOnCommit_Proxy(
3074     IFsrmQuotaTemplateImported* This,
3075     VARIANT_BOOL overwrite);
3076 void __RPC_STUB IFsrmQuotaTemplateImported_put_OverwriteOnCommit_Stub(
3077     IRpcStubBuffer* This,
3078     IRpcChannelBuffer* pRpcChannelBuffer,
3079     PRPC_MESSAGE pRpcMessage,
3080     DWORD* pdwStubPhase);
3081 
3082 #endif  /* __IFsrmQuotaTemplateImported_INTERFACE_DEFINED__ */
3083 
3084 #endif
3085 /* Begin additional prototypes for all interfaces */
3086 
3087 ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
3088 unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
3089 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
3090 void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
3091 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
3092 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
3093 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
3094 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
3095 
3096 /* End additional prototypes */
3097 
3098 #ifdef __cplusplus
3099 }
3100 #endif
3101 
3102 #endif /* __fsrmquota_h__ */
3103