1/**
  2 * This file has no copyright assigned and is placed in the Public Domain.
  3 * This file is part of the mingw-w64 runtime package.
  4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5 */
  6#ifndef __REQUIRED_RPCNDR_H_VERSION__
  7#define __REQUIRED_RPCNDR_H_VERSION__ 475
  8#endif
  9
 10#include "rpc.h"
 11#include "rpcndr.h"
 12
 13#ifndef __RPCNDR_H_VERSION__
 14#error This stub requires an updated version of <rpcndr.h>
 15#endif
 16
 17#ifndef COM_NO_WINDOWS_H
 18#include "windows.h"
 19#include "ole2.h"
 20#endif
 21
 22#ifndef __qmgr_h__
 23#define __qmgr_h__
 24
 25#ifndef __IBackgroundCopyJob1_FWD_DEFINED__
 26#define __IBackgroundCopyJob1_FWD_DEFINED__
 27typedef struct IBackgroundCopyJob1 IBackgroundCopyJob1;
 28#endif
 29
 30#ifndef __IEnumBackgroundCopyJobs1_FWD_DEFINED__
 31#define __IEnumBackgroundCopyJobs1_FWD_DEFINED__
 32typedef struct IEnumBackgroundCopyJobs1 IEnumBackgroundCopyJobs1;
 33#endif
 34
 35#ifndef __IBackgroundCopyGroup_FWD_DEFINED__
 36#define __IBackgroundCopyGroup_FWD_DEFINED__
 37typedef struct IBackgroundCopyGroup IBackgroundCopyGroup;
 38#endif
 39
 40#ifndef __IEnumBackgroundCopyGroups_FWD_DEFINED__
 41#define __IEnumBackgroundCopyGroups_FWD_DEFINED__
 42typedef struct IEnumBackgroundCopyGroups IEnumBackgroundCopyGroups;
 43#endif
 44
 45#ifndef __IBackgroundCopyCallback1_FWD_DEFINED__
 46#define __IBackgroundCopyCallback1_FWD_DEFINED__
 47typedef struct IBackgroundCopyCallback1 IBackgroundCopyCallback1;
 48#endif
 49
 50#ifndef __IBackgroundCopyQMgr_FWD_DEFINED__
 51#define __IBackgroundCopyQMgr_FWD_DEFINED__
 52typedef struct IBackgroundCopyQMgr IBackgroundCopyQMgr;
 53#endif
 54
 55#ifndef __BackgroundCopyQMgr_FWD_DEFINED__
 56#define __BackgroundCopyQMgr_FWD_DEFINED__
 57#ifdef __cplusplus
 58typedef class BackgroundCopyQMgr BackgroundCopyQMgr;
 59#else
 60typedef struct BackgroundCopyQMgr BackgroundCopyQMgr;
 61#endif
 62#endif
 63
 64#include "unknwn.h"
 65#include "ocidl.h"
 66#include "docobj.h"
 67
 68#ifdef __cplusplus
 69extern "C"{
 70#endif
 71
 72#ifndef __MIDL_user_allocate_free_DEFINED__
 73#define __MIDL_user_allocate_free_DEFINED__
 74  void *__RPC_API MIDL_user_allocate(size_t);
 75  void __RPC_API MIDL_user_free(void *);
 76#endif
 77
 78#define QM_NOTIFY_FILE_DONE 0x00000001
 79#define QM_NOTIFY_JOB_DONE 0x00000002
 80#define QM_NOTIFY_GROUP_DONE 0x00000004
 81#define QM_NOTIFY_DISABLE_NOTIFY 0x00000040
 82#define QM_NOTIFY_USE_PROGRESSEX 0x00000080
 83#define QM_STATUS_FILE_COMPLETE 0x00000001
 84#define QM_STATUS_FILE_INCOMPLETE 0x00000002
 85#define QM_STATUS_JOB_COMPLETE 0x00000004
 86#define QM_STATUS_JOB_INCOMPLETE 0x00000008
 87#define QM_STATUS_JOB_ERROR 0x00000010
 88#define QM_STATUS_JOB_FOREGROUND 0x00000020
 89#define QM_STATUS_GROUP_COMPLETE 0x00000040
 90#define QM_STATUS_GROUP_INCOMPLETE 0x00000080
 91#define QM_STATUS_GROUP_SUSPENDED 0x00000100
 92#define QM_STATUS_GROUP_ERROR 0x00000200
 93#define QM_STATUS_GROUP_FOREGROUND 0x00000400
 94#define QM_PROTOCOL_HTTP 1
 95#define QM_PROTOCOL_FTP 2
 96#define QM_PROTOCOL_SMB 3
 97#define QM_PROTOCOL_CUSTOM 4
 98#define QM_PROGRESS_PERCENT_DONE 1
 99#define QM_PROGRESS_TIME_DONE 2
100#define QM_PROGRESS_SIZE_DONE 3
101#define QM_E_INVALID_STATE 0x81001001
102#define QM_E_SERVICE_UNAVAILABLE 0x81001002
103#define QM_E_DOWNLOADER_UNAVAILABLE 0x81001003
104#define QM_E_ITEM_NOT_FOUND 0x81001004
105
106  extern RPC_IF_HANDLE __MIDL_itf_qmgr_0000_v0_0_c_ifspec;
107  extern RPC_IF_HANDLE __MIDL_itf_qmgr_0000_v0_0_s_ifspec;
108
109#ifndef __IBackgroundCopyJob1_INTERFACE_DEFINED__
110#define __IBackgroundCopyJob1_INTERFACE_DEFINED__
111
112  typedef struct _FILESETINFO {
113    BSTR bstrRemoteFile;
114    BSTR bstrLocalFile;
115    DWORD dwSizeHint;
116  } FILESETINFO;
117
118  EXTERN_C const IID IID_IBackgroundCopyJob1;
119#if defined(__cplusplus) && !defined(CINTERFACE)
120  struct IBackgroundCopyJob1 : public IUnknown {
121  public:
122    virtual HRESULT WINAPI CancelJob(void) = 0;
123    virtual HRESULT WINAPI GetProgress(DWORD dwFlags,DWORD *pdwProgress) = 0;
124    virtual HRESULT WINAPI GetStatus(DWORD *pdwStatus,DWORD *pdwWin32Result,DWORD *pdwTransportResult,DWORD *pdwNumOfRetries) = 0;
125    virtual HRESULT WINAPI AddFiles(ULONG cFileCount,FILESETINFO **ppFileSet) = 0;
126    virtual HRESULT WINAPI GetFile(ULONG cFileIndex,FILESETINFO *pFileInfo) = 0;
127    virtual HRESULT WINAPI GetFileCount(DWORD *pdwFileCount) = 0;
128    virtual HRESULT WINAPI SwitchToForeground(void) = 0;
129    virtual HRESULT WINAPI get_JobID(GUID *pguidJobID) = 0;
130  };
131#else
132  typedef struct IBackgroundCopyJob1Vtbl {
133    BEGIN_INTERFACE
134      HRESULT (WINAPI *QueryInterface)(IBackgroundCopyJob1 *This,REFIID riid,void **ppvObject);
135      ULONG (WINAPI *AddRef)(IBackgroundCopyJob1 *This);
136      ULONG (WINAPI *Release)(IBackgroundCopyJob1 *This);
137      HRESULT (WINAPI *CancelJob)(IBackgroundCopyJob1 *This);
138      HRESULT (WINAPI *GetProgress)(IBackgroundCopyJob1 *This,DWORD dwFlags,DWORD *pdwProgress);
139      HRESULT (WINAPI *GetStatus)(IBackgroundCopyJob1 *This,DWORD *pdwStatus,DWORD *pdwWin32Result,DWORD *pdwTransportResult,DWORD *pdwNumOfRetries);
140      HRESULT (WINAPI *AddFiles)(IBackgroundCopyJob1 *This,ULONG cFileCount,FILESETINFO **ppFileSet);
141      HRESULT (WINAPI *GetFile)(IBackgroundCopyJob1 *This,ULONG cFileIndex,FILESETINFO *pFileInfo);
142      HRESULT (WINAPI *GetFileCount)(IBackgroundCopyJob1 *This,DWORD *pdwFileCount);
143      HRESULT (WINAPI *SwitchToForeground)(IBackgroundCopyJob1 *This);
144      HRESULT (WINAPI *get_JobID)(IBackgroundCopyJob1 *This,GUID *pguidJobID);
145    END_INTERFACE
146  } IBackgroundCopyJob1Vtbl;
147  struct IBackgroundCopyJob1 {
148    CONST_VTBL struct IBackgroundCopyJob1Vtbl *lpVtbl;
149  };
150#ifdef COBJMACROS
151#define IBackgroundCopyJob1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
152#define IBackgroundCopyJob1_AddRef(This) (This)->lpVtbl->AddRef(This)
153#define IBackgroundCopyJob1_Release(This) (This)->lpVtbl->Release(This)
154#define IBackgroundCopyJob1_CancelJob(This) (This)->lpVtbl->CancelJob(This)
155#define IBackgroundCopyJob1_GetProgress(This,dwFlags,pdwProgress) (This)->lpVtbl->GetProgress(This,dwFlags,pdwProgress)
156#define IBackgroundCopyJob1_GetStatus(This,pdwStatus,pdwWin32Result,pdwTransportResult,pdwNumOfRetries) (This)->lpVtbl->GetStatus(This,pdwStatus,pdwWin32Result,pdwTransportResult,pdwNumOfRetries)
157#define IBackgroundCopyJob1_AddFiles(This,cFileCount,ppFileSet) (This)->lpVtbl->AddFiles(This,cFileCount,ppFileSet)
158#define IBackgroundCopyJob1_GetFile(This,cFileIndex,pFileInfo) (This)->lpVtbl->GetFile(This,cFileIndex,pFileInfo)
159#define IBackgroundCopyJob1_GetFileCount(This,pdwFileCount) (This)->lpVtbl->GetFileCount(This,pdwFileCount)
160#define IBackgroundCopyJob1_SwitchToForeground(This) (This)->lpVtbl->SwitchToForeground(This)
161#define IBackgroundCopyJob1_get_JobID(This,pguidJobID) (This)->lpVtbl->get_JobID(This,pguidJobID)
162#endif
163#endif
164  HRESULT WINAPI IBackgroundCopyJob1_CancelJob_Proxy(IBackgroundCopyJob1 *This);
165  void __RPC_STUB IBackgroundCopyJob1_CancelJob_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
166  HRESULT WINAPI IBackgroundCopyJob1_GetProgress_Proxy(IBackgroundCopyJob1 *This,DWORD dwFlags,DWORD *pdwProgress);
167  void __RPC_STUB IBackgroundCopyJob1_GetProgress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
168  HRESULT WINAPI IBackgroundCopyJob1_GetStatus_Proxy(IBackgroundCopyJob1 *This,DWORD *pdwStatus,DWORD *pdwWin32Result,DWORD *pdwTransportResult,DWORD *pdwNumOfRetries);
169  void __RPC_STUB IBackgroundCopyJob1_GetStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
170  HRESULT WINAPI IBackgroundCopyJob1_AddFiles_Proxy(IBackgroundCopyJob1 *This,ULONG cFileCount,FILESETINFO **ppFileSet);
171  void __RPC_STUB IBackgroundCopyJob1_AddFiles_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
172  HRESULT WINAPI IBackgroundCopyJob1_GetFile_Proxy(IBackgroundCopyJob1 *This,ULONG cFileIndex,FILESETINFO *pFileInfo);
173  void __RPC_STUB IBackgroundCopyJob1_GetFile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
174  HRESULT WINAPI IBackgroundCopyJob1_GetFileCount_Proxy(IBackgroundCopyJob1 *This,DWORD *pdwFileCount);
175  void __RPC_STUB IBackgroundCopyJob1_GetFileCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
176  HRESULT WINAPI IBackgroundCopyJob1_SwitchToForeground_Proxy(IBackgroundCopyJob1 *This);
177  void __RPC_STUB IBackgroundCopyJob1_SwitchToForeground_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
178  HRESULT WINAPI IBackgroundCopyJob1_get_JobID_Proxy(IBackgroundCopyJob1 *This,GUID *pguidJobID);
179  void __RPC_STUB IBackgroundCopyJob1_get_JobID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
180#endif
181
182#ifndef __IEnumBackgroundCopyJobs1_INTERFACE_DEFINED__
183#define __IEnumBackgroundCopyJobs1_INTERFACE_DEFINED__
184  EXTERN_C const IID IID_IEnumBackgroundCopyJobs1;
185#if defined(__cplusplus) && !defined(CINTERFACE)
186  struct IEnumBackgroundCopyJobs1 : public IUnknown {
187  public:
188    virtual HRESULT WINAPI Next(ULONG celt,GUID *rgelt,ULONG *pceltFetched) = 0;
189    virtual HRESULT WINAPI Skip(ULONG celt) = 0;
190    virtual HRESULT WINAPI Reset(void) = 0;
191    virtual HRESULT WINAPI Clone(IEnumBackgroundCopyJobs1 **ppenum) = 0;
192    virtual HRESULT WINAPI GetCount(ULONG *puCount) = 0;
193  };
194#else
195  typedef struct IEnumBackgroundCopyJobs1Vtbl {
196    BEGIN_INTERFACE
197      HRESULT (WINAPI *QueryInterface)(IEnumBackgroundCopyJobs1 *This,REFIID riid,void **ppvObject);
198      ULONG (WINAPI *AddRef)(IEnumBackgroundCopyJobs1 *This);
199      ULONG (WINAPI *Release)(IEnumBackgroundCopyJobs1 *This);
200      HRESULT (WINAPI *Next)(IEnumBackgroundCopyJobs1 *This,ULONG celt,GUID *rgelt,ULONG *pceltFetched);
201      HRESULT (WINAPI *Skip)(IEnumBackgroundCopyJobs1 *This,ULONG celt);
202      HRESULT (WINAPI *Reset)(IEnumBackgroundCopyJobs1 *This);
203      HRESULT (WINAPI *Clone)(IEnumBackgroundCopyJobs1 *This,IEnumBackgroundCopyJobs1 **ppenum);
204      HRESULT (WINAPI *GetCount)(IEnumBackgroundCopyJobs1 *This,ULONG *puCount);
205    END_INTERFACE
206  } IEnumBackgroundCopyJobs1Vtbl;
207  struct IEnumBackgroundCopyJobs1 {
208    CONST_VTBL struct IEnumBackgroundCopyJobs1Vtbl *lpVtbl;
209  };
210#ifdef COBJMACROS
211#define IEnumBackgroundCopyJobs1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
212#define IEnumBackgroundCopyJobs1_AddRef(This) (This)->lpVtbl->AddRef(This)
213#define IEnumBackgroundCopyJobs1_Release(This) (This)->lpVtbl->Release(This)
214#define IEnumBackgroundCopyJobs1_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
215#define IEnumBackgroundCopyJobs1_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
216#define IEnumBackgroundCopyJobs1_Reset(This) (This)->lpVtbl->Reset(This)
217#define IEnumBackgroundCopyJobs1_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
218#define IEnumBackgroundCopyJobs1_GetCount(This,puCount) (This)->lpVtbl->GetCount(This,puCount)
219#endif
220#endif
221  HRESULT WINAPI IEnumBackgroundCopyJobs1_Next_Proxy(IEnumBackgroundCopyJobs1 *This,ULONG celt,GUID *rgelt,ULONG *pceltFetched);
222  void __RPC_STUB IEnumBackgroundCopyJobs1_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
223  HRESULT WINAPI IEnumBackgroundCopyJobs1_Skip_Proxy(IEnumBackgroundCopyJobs1 *This,ULONG celt);
224  void __RPC_STUB IEnumBackgroundCopyJobs1_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
225  HRESULT WINAPI IEnumBackgroundCopyJobs1_Reset_Proxy(IEnumBackgroundCopyJobs1 *This);
226  void __RPC_STUB IEnumBackgroundCopyJobs1_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
227  HRESULT WINAPI IEnumBackgroundCopyJobs1_Clone_Proxy(IEnumBackgroundCopyJobs1 *This,IEnumBackgroundCopyJobs1 **ppenum);
228  void __RPC_STUB IEnumBackgroundCopyJobs1_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
229  HRESULT WINAPI IEnumBackgroundCopyJobs1_GetCount_Proxy(IEnumBackgroundCopyJobs1 *This,ULONG *puCount);
230  void __RPC_STUB IEnumBackgroundCopyJobs1_GetCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
231#endif
232
233#ifndef __IBackgroundCopyGroup_INTERFACE_DEFINED__
234#define __IBackgroundCopyGroup_INTERFACE_DEFINED__
235  typedef enum GROUPPROP {
236    GROUPPROP_PRIORITY = 0,GROUPPROP_REMOTEUSERID = 1,GROUPPROP_REMOTEUSERPWD = 2,GROUPPROP_LOCALUSERID = 3,GROUPPROP_LOCALUSERPWD = 4,
237    GROUPPROP_PROTOCOLFLAGS = 5,GROUPPROP_NOTIFYFLAGS = 6,GROUPPROP_NOTIFYCLSID = 7,GROUPPROP_PROGRESSSIZE = 8,GROUPPROP_PROGRESSPERCENT = 9,
238    GROUPPROP_PROGRESSTIME = 10,GROUPPROP_DISPLAYNAME = 11,GROUPPROP_DESCRIPTION = 12
239  } GROUPPROP;
240
241  EXTERN_C const IID IID_IBackgroundCopyGroup;
242#if defined(__cplusplus) && !defined(CINTERFACE)
243  struct IBackgroundCopyGroup : public IUnknown {
244  public:
245    virtual HRESULT WINAPI GetProp(GROUPPROP propID,VARIANT *pvarVal) = 0;
246    virtual HRESULT WINAPI SetProp(GROUPPROP propID,VARIANT *pvarVal) = 0;
247    virtual HRESULT WINAPI GetProgress(DWORD dwFlags,DWORD *pdwProgress) = 0;
248    virtual HRESULT WINAPI GetStatus(DWORD *pdwStatus,DWORD *pdwJobIndex) = 0;
249    virtual HRESULT WINAPI GetJob(GUID jobID,IBackgroundCopyJob1 **ppJob) = 0;
250    virtual HRESULT WINAPI SuspendGroup(void) = 0;
251    virtual HRESULT WINAPI ResumeGroup(void) = 0;
252    virtual HRESULT WINAPI CancelGroup(void) = 0;
253    virtual HRESULT WINAPI get_Size(DWORD *pdwSize) = 0;
254    virtual HRESULT WINAPI get_GroupID(GUID *pguidGroupID) = 0;
255    virtual HRESULT WINAPI CreateJob(GUID guidJobID,IBackgroundCopyJob1 **ppJob) = 0;
256    virtual HRESULT WINAPI EnumJobs(DWORD dwFlags,IEnumBackgroundCopyJobs1 **ppEnumJobs) = 0;
257    virtual HRESULT WINAPI SwitchToForeground(void) = 0;
258    virtual HRESULT WINAPI QueryNewJobInterface(REFIID iid,IUnknown **pUnk) = 0;
259    virtual HRESULT WINAPI SetNotificationPointer(REFIID iid,IUnknown *pUnk) = 0;
260  };
261#else
262  typedef struct IBackgroundCopyGroupVtbl {
263    BEGIN_INTERFACE
264      HRESULT (WINAPI *QueryInterface)(IBackgroundCopyGroup *This,REFIID riid,void **ppvObject);
265      ULONG (WINAPI *AddRef)(IBackgroundCopyGroup *This);
266      ULONG (WINAPI *Release)(IBackgroundCopyGroup *This);
267      HRESULT (WINAPI *GetProp)(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
268      HRESULT (WINAPI *SetProp)(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
269      HRESULT (WINAPI *GetProgress)(IBackgroundCopyGroup *This,DWORD dwFlags,DWORD *pdwProgress);
270      HRESULT (WINAPI *GetStatus)(IBackgroundCopyGroup *This,DWORD *pdwStatus,DWORD *pdwJobIndex);
271      HRESULT (WINAPI *GetJob)(IBackgroundCopyGroup *This,GUID jobID,IBackgroundCopyJob1 **ppJob);
272      HRESULT (WINAPI *SuspendGroup)(IBackgroundCopyGroup *This);
273      HRESULT (WINAPI *ResumeGroup)(IBackgroundCopyGroup *This);
274      HRESULT (WINAPI *CancelGroup)(IBackgroundCopyGroup *This);
275      HRESULT (WINAPI *get_Size)(IBackgroundCopyGroup *This,DWORD *pdwSize);
276      HRESULT (WINAPI *get_GroupID)(IBackgroundCopyGroup *This,GUID *pguidGroupID);
277      HRESULT (WINAPI *CreateJob)(IBackgroundCopyGroup *This,GUID guidJobID,IBackgroundCopyJob1 **ppJob);
278      HRESULT (WINAPI *EnumJobs)(IBackgroundCopyGroup *This,DWORD dwFlags,IEnumBackgroundCopyJobs1 **ppEnumJobs);
279      HRESULT (WINAPI *SwitchToForeground)(IBackgroundCopyGroup *This);
280      HRESULT (WINAPI *QueryNewJobInterface)(IBackgroundCopyGroup *This,REFIID iid,IUnknown **pUnk);
281      HRESULT (WINAPI *SetNotificationPointer)(IBackgroundCopyGroup *This,REFIID iid,IUnknown *pUnk);
282    END_INTERFACE
283  } IBackgroundCopyGroupVtbl;
284  struct IBackgroundCopyGroup {
285    CONST_VTBL struct IBackgroundCopyGroupVtbl *lpVtbl;
286  };
287#ifdef COBJMACROS
288#define IBackgroundCopyGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
289#define IBackgroundCopyGroup_AddRef(This) (This)->lpVtbl->AddRef(This)
290#define IBackgroundCopyGroup_Release(This) (This)->lpVtbl->Release(This)
291#define IBackgroundCopyGroup_GetProp(This,propID,pvarVal) (This)->lpVtbl->GetProp(This,propID,pvarVal)
292#define IBackgroundCopyGroup_SetProp(This,propID,pvarVal) (This)->lpVtbl->SetProp(This,propID,pvarVal)
293#define IBackgroundCopyGroup_GetProgress(This,dwFlags,pdwProgress) (This)->lpVtbl->GetProgress(This,dwFlags,pdwProgress)
294#define IBackgroundCopyGroup_GetStatus(This,pdwStatus,pdwJobIndex) (This)->lpVtbl->GetStatus(This,pdwStatus,pdwJobIndex)
295#define IBackgroundCopyGroup_GetJob(This,jobID,ppJob) (This)->lpVtbl->GetJob(This,jobID,ppJob)
296#define IBackgroundCopyGroup_SuspendGroup(This) (This)->lpVtbl->SuspendGroup(This)
297#define IBackgroundCopyGroup_ResumeGroup(This) (This)->lpVtbl->ResumeGroup(This)
298#define IBackgroundCopyGroup_CancelGroup(This) (This)->lpVtbl->CancelGroup(This)
299#define IBackgroundCopyGroup_get_Size(This,pdwSize) (This)->lpVtbl->get_Size(This,pdwSize)
300#define IBackgroundCopyGroup_get_GroupID(This,pguidGroupID) (This)->lpVtbl->get_GroupID(This,pguidGroupID)
301#define IBackgroundCopyGroup_CreateJob(This,guidJobID,ppJob) (This)->lpVtbl->CreateJob(This,guidJobID,ppJob)
302#define IBackgroundCopyGroup_EnumJobs(This,dwFlags,ppEnumJobs) (This)->lpVtbl->EnumJobs(This,dwFlags,ppEnumJobs)
303#define IBackgroundCopyGroup_SwitchToForeground(This) (This)->lpVtbl->SwitchToForeground(This)
304#define IBackgroundCopyGroup_QueryNewJobInterface(This,iid,pUnk) (This)->lpVtbl->QueryNewJobInterface(This,iid,pUnk)
305#define IBackgroundCopyGroup_SetNotificationPointer(This,iid,pUnk) (This)->lpVtbl->SetNotificationPointer(This,iid,pUnk)
306#endif
307#endif
308  HRESULT WINAPI IBackgroundCopyGroup_GetProp_Proxy(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
309  void __RPC_STUB IBackgroundCopyGroup_GetProp_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
310  HRESULT WINAPI IBackgroundCopyGroup_InternalSetProp_Proxy(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
311  void __RPC_STUB IBackgroundCopyGroup_InternalSetProp_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
312  HRESULT WINAPI IBackgroundCopyGroup_GetProgress_Proxy(IBackgroundCopyGroup *This,DWORD dwFlags,DWORD *pdwProgress);
313  void __RPC_STUB IBackgroundCopyGroup_GetProgress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
314  HRESULT WINAPI IBackgroundCopyGroup_GetStatus_Proxy(IBackgroundCopyGroup *This,DWORD *pdwStatus,DWORD *pdwJobIndex);
315  void __RPC_STUB IBackgroundCopyGroup_GetStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
316  HRESULT WINAPI IBackgroundCopyGroup_GetJob_Proxy(IBackgroundCopyGroup *This,GUID jobID,IBackgroundCopyJob1 **ppJob);
317  void __RPC_STUB IBackgroundCopyGroup_GetJob_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
318  HRESULT WINAPI IBackgroundCopyGroup_SuspendGroup_Proxy(IBackgroundCopyGroup *This);
319  void __RPC_STUB IBackgroundCopyGroup_SuspendGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
320  HRESULT WINAPI IBackgroundCopyGroup_ResumeGroup_Proxy(IBackgroundCopyGroup *This);
321  void __RPC_STUB IBackgroundCopyGroup_ResumeGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
322  HRESULT WINAPI IBackgroundCopyGroup_CancelGroup_Proxy(IBackgroundCopyGroup *This);
323  void __RPC_STUB IBackgroundCopyGroup_CancelGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
324  HRESULT WINAPI IBackgroundCopyGroup_get_Size_Proxy(IBackgroundCopyGroup *This,DWORD *pdwSize);
325  void __RPC_STUB IBackgroundCopyGroup_get_Size_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
326  HRESULT WINAPI IBackgroundCopyGroup_get_GroupID_Proxy(IBackgroundCopyGroup *This,GUID *pguidGroupID);
327  void __RPC_STUB IBackgroundCopyGroup_get_GroupID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
328  HRESULT WINAPI IBackgroundCopyGroup_CreateJob_Proxy(IBackgroundCopyGroup *This,GUID guidJobID,IBackgroundCopyJob1 **ppJob);
329  void __RPC_STUB IBackgroundCopyGroup_CreateJob_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
330  HRESULT WINAPI IBackgroundCopyGroup_EnumJobs_Proxy(IBackgroundCopyGroup *This,DWORD dwFlags,IEnumBackgroundCopyJobs1 **ppEnumJobs);
331  void __RPC_STUB IBackgroundCopyGroup_EnumJobs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
332  HRESULT WINAPI IBackgroundCopyGroup_SwitchToForeground_Proxy(IBackgroundCopyGroup *This);
333  void __RPC_STUB IBackgroundCopyGroup_SwitchToForeground_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
334  HRESULT WINAPI IBackgroundCopyGroup_QueryNewJobInterface_Proxy(IBackgroundCopyGroup *This,REFIID iid,IUnknown **pUnk);
335  void __RPC_STUB IBackgroundCopyGroup_QueryNewJobInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
336  HRESULT WINAPI IBackgroundCopyGroup_SetNotificationPointer_Proxy(IBackgroundCopyGroup *This,REFIID iid,IUnknown *pUnk);
337  void __RPC_STUB IBackgroundCopyGroup_SetNotificationPointer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
338#endif
339
340#ifndef __IEnumBackgroundCopyGroups_INTERFACE_DEFINED__
341#define __IEnumBackgroundCopyGroups_INTERFACE_DEFINED__
342  EXTERN_C const IID IID_IEnumBackgroundCopyGroups;
343#if defined(__cplusplus) && !defined(CINTERFACE)
344  struct IEnumBackgroundCopyGroups : public IUnknown {
345  public:
346    virtual HRESULT WINAPI Next(ULONG celt,GUID *rgelt,ULONG *pceltFetched) = 0;
347    virtual HRESULT WINAPI Skip(ULONG celt) = 0;
348    virtual HRESULT WINAPI Reset(void) = 0;
349    virtual HRESULT WINAPI Clone(IEnumBackgroundCopyGroups **ppenum) = 0;
350    virtual HRESULT WINAPI GetCount(ULONG *puCount) = 0;
351  };
352#else
353  typedef struct IEnumBackgroundCopyGroupsVtbl {
354    BEGIN_INTERFACE
355      HRESULT (WINAPI *QueryInterface)(IEnumBackgroundCopyGroups *This,REFIID riid,void **ppvObject);
356      ULONG (WINAPI *AddRef)(IEnumBackgroundCopyGroups *This);
357      ULONG (WINAPI *Release)(IEnumBackgroundCopyGroups *This);
358      HRESULT (WINAPI *Next)(IEnumBackgroundCopyGroups *This,ULONG celt,GUID *rgelt,ULONG *pceltFetched);
359      HRESULT (WINAPI *Skip)(IEnumBackgroundCopyGroups *This,ULONG celt);
360      HRESULT (WINAPI *Reset)(IEnumBackgroundCopyGroups *This);
361      HRESULT (WINAPI *Clone)(IEnumBackgroundCopyGroups *This,IEnumBackgroundCopyGroups **ppenum);
362      HRESULT (WINAPI *GetCount)(IEnumBackgroundCopyGroups *This,ULONG *puCount);
363    END_INTERFACE
364  } IEnumBackgroundCopyGroupsVtbl;
365  struct IEnumBackgroundCopyGroups {
366    CONST_VTBL struct IEnumBackgroundCopyGroupsVtbl *lpVtbl;
367  };
368#ifdef COBJMACROS
369#define IEnumBackgroundCopyGroups_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
370#define IEnumBackgroundCopyGroups_AddRef(This) (This)->lpVtbl->AddRef(This)
371#define IEnumBackgroundCopyGroups_Release(This) (This)->lpVtbl->Release(This)
372#define IEnumBackgroundCopyGroups_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
373#define IEnumBackgroundCopyGroups_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
374#define IEnumBackgroundCopyGroups_Reset(This) (This)->lpVtbl->Reset(This)
375#define IEnumBackgroundCopyGroups_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
376#define IEnumBackgroundCopyGroups_GetCount(This,puCount) (This)->lpVtbl->GetCount(This,puCount)
377#endif
378#endif
379  HRESULT WINAPI IEnumBackgroundCopyGroups_Next_Proxy(IEnumBackgroundCopyGroups *This,ULONG celt,GUID *rgelt,ULONG *pceltFetched);
380  void __RPC_STUB IEnumBackgroundCopyGroups_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
381  HRESULT WINAPI IEnumBackgroundCopyGroups_Skip_Proxy(IEnumBackgroundCopyGroups *This,ULONG celt);
382  void __RPC_STUB IEnumBackgroundCopyGroups_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
383  HRESULT WINAPI IEnumBackgroundCopyGroups_Reset_Proxy(IEnumBackgroundCopyGroups *This);
384  void __RPC_STUB IEnumBackgroundCopyGroups_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
385  HRESULT WINAPI IEnumBackgroundCopyGroups_Clone_Proxy(IEnumBackgroundCopyGroups *This,IEnumBackgroundCopyGroups **ppenum);
386  void __RPC_STUB IEnumBackgroundCopyGroups_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
387  HRESULT WINAPI IEnumBackgroundCopyGroups_GetCount_Proxy(IEnumBackgroundCopyGroups *This,ULONG *puCount);
388  void __RPC_STUB IEnumBackgroundCopyGroups_GetCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
389#endif
390
391#ifndef __IBackgroundCopyCallback1_INTERFACE_DEFINED__
392#define __IBackgroundCopyCallback1_INTERFACE_DEFINED__
393  EXTERN_C const IID IID_IBackgroundCopyCallback1;
394#if defined(__cplusplus) && !defined(CINTERFACE)
395  struct IBackgroundCopyCallback1 : public IUnknown {
396  public:
397    virtual HRESULT WINAPI OnStatus(IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwStatus,DWORD dwNumOfRetries,DWORD dwWin32Result,DWORD dwTransportResult) = 0;
398    virtual HRESULT WINAPI OnProgress(DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue) = 0;
399    virtual HRESULT WINAPI OnProgressEx(DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue,DWORD dwByteArraySize,BYTE *pByte) = 0;
400  };
401#else
402  typedef struct IBackgroundCopyCallback1Vtbl {
403    BEGIN_INTERFACE
404      HRESULT (WINAPI *QueryInterface)(IBackgroundCopyCallback1 *This,REFIID riid,void **ppvObject);
405      ULONG (WINAPI *AddRef)(IBackgroundCopyCallback1 *This);
406      ULONG (WINAPI *Release)(IBackgroundCopyCallback1 *This);
407      HRESULT (WINAPI *OnStatus)(IBackgroundCopyCallback1 *This,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwStatus,DWORD dwNumOfRetries,DWORD dwWin32Result,DWORD dwTransportResult);
408      HRESULT (WINAPI *OnProgress)(IBackgroundCopyCallback1 *This,DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue);
409      HRESULT (WINAPI *OnProgressEx)(IBackgroundCopyCallback1 *This,DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue,DWORD dwByteArraySize,BYTE *pByte);
410    END_INTERFACE
411  } IBackgroundCopyCallback1Vtbl;
412  struct IBackgroundCopyCallback1 {
413    CONST_VTBL struct IBackgroundCopyCallback1Vtbl *lpVtbl;
414  };
415#ifdef COBJMACROS
416#define IBackgroundCopyCallback1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
417#define IBackgroundCopyCallback1_AddRef(This) (This)->lpVtbl->AddRef(This)
418#define IBackgroundCopyCallback1_Release(This) (This)->lpVtbl->Release(This)
419#define IBackgroundCopyCallback1_OnStatus(This,pGroup,pJob,dwFileIndex,dwStatus,dwNumOfRetries,dwWin32Result,dwTransportResult) (This)->lpVtbl->OnStatus(This,pGroup,pJob,dwFileIndex,dwStatus,dwNumOfRetries,dwWin32Result,dwTransportResult)
420#define IBackgroundCopyCallback1_OnProgress(This,ProgressType,pGroup,pJob,dwFileIndex,dwProgressValue) (This)->lpVtbl->OnProgress(This,ProgressType,pGroup,pJob,dwFileIndex,dwProgressValue)
421#define IBackgroundCopyCallback1_OnProgressEx(This,ProgressType,pGroup,pJob,dwFileIndex,dwProgressValue,dwByteArraySize,pByte) (This)->lpVtbl->OnProgressEx(This,ProgressType,pGroup,pJob,dwFileIndex,dwProgressValue,dwByteArraySize,pByte)
422#endif
423#endif
424  HRESULT WINAPI IBackgroundCopyCallback1_OnStatus_Proxy(IBackgroundCopyCallback1 *This,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwStatus,DWORD dwNumOfRetries,DWORD dwWin32Result,DWORD dwTransportResult);
425  void __RPC_STUB IBackgroundCopyCallback1_OnStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
426  HRESULT WINAPI IBackgroundCopyCallback1_OnProgress_Proxy(IBackgroundCopyCallback1 *This,DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue);
427  void __RPC_STUB IBackgroundCopyCallback1_OnProgress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
428  HRESULT WINAPI IBackgroundCopyCallback1_OnProgressEx_Proxy(IBackgroundCopyCallback1 *This,DWORD ProgressType,IBackgroundCopyGroup *pGroup,IBackgroundCopyJob1 *pJob,DWORD dwFileIndex,DWORD dwProgressValue,DWORD dwByteArraySize,BYTE *pByte);
429  void __RPC_STUB IBackgroundCopyCallback1_OnProgressEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
430#endif
431
432#ifndef __IBackgroundCopyQMgr_INTERFACE_DEFINED__
433#define __IBackgroundCopyQMgr_INTERFACE_DEFINED__
434  EXTERN_C const IID IID_IBackgroundCopyQMgr;
435#if defined(__cplusplus) && !defined(CINTERFACE)
436  struct IBackgroundCopyQMgr : public IUnknown {
437  public:
438    virtual HRESULT WINAPI CreateGroup(GUID guidGroupID,IBackgroundCopyGroup **ppGroup) = 0;
439    virtual HRESULT WINAPI GetGroup(GUID groupID,IBackgroundCopyGroup **ppGroup) = 0;
440    virtual HRESULT WINAPI EnumGroups(DWORD dwFlags,IEnumBackgroundCopyGroups **ppEnumGroups) = 0;
441  };
442#else
443  typedef struct IBackgroundCopyQMgrVtbl {
444    BEGIN_INTERFACE
445      HRESULT (WINAPI *QueryInterface)(IBackgroundCopyQMgr *This,REFIID riid,void **ppvObject);
446      ULONG (WINAPI *AddRef)(IBackgroundCopyQMgr *This);
447      ULONG (WINAPI *Release)(IBackgroundCopyQMgr *This);
448      HRESULT (WINAPI *CreateGroup)(IBackgroundCopyQMgr *This,GUID guidGroupID,IBackgroundCopyGroup **ppGroup);
449      HRESULT (WINAPI *GetGroup)(IBackgroundCopyQMgr *This,GUID groupID,IBackgroundCopyGroup **ppGroup);
450      HRESULT (WINAPI *EnumGroups)(IBackgroundCopyQMgr *This,DWORD dwFlags,IEnumBackgroundCopyGroups **ppEnumGroups);
451    END_INTERFACE
452  } IBackgroundCopyQMgrVtbl;
453  struct IBackgroundCopyQMgr {
454    CONST_VTBL struct IBackgroundCopyQMgrVtbl *lpVtbl;
455  };
456#ifdef COBJMACROS
457#define IBackgroundCopyQMgr_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
458#define IBackgroundCopyQMgr_AddRef(This) (This)->lpVtbl->AddRef(This)
459#define IBackgroundCopyQMgr_Release(This) (This)->lpVtbl->Release(This)
460#define IBackgroundCopyQMgr_CreateGroup(This,guidGroupID,ppGroup) (This)->lpVtbl->CreateGroup(This,guidGroupID,ppGroup)
461#define IBackgroundCopyQMgr_GetGroup(This,groupID,ppGroup) (This)->lpVtbl->GetGroup(This,groupID,ppGroup)
462#define IBackgroundCopyQMgr_EnumGroups(This,dwFlags,ppEnumGroups) (This)->lpVtbl->EnumGroups(This,dwFlags,ppEnumGroups)
463#endif
464#endif
465  HRESULT WINAPI IBackgroundCopyQMgr_CreateGroup_Proxy(IBackgroundCopyQMgr *This,GUID guidGroupID,IBackgroundCopyGroup **ppGroup);
466  void __RPC_STUB IBackgroundCopyQMgr_CreateGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
467  HRESULT WINAPI IBackgroundCopyQMgr_GetGroup_Proxy(IBackgroundCopyQMgr *This,GUID groupID,IBackgroundCopyGroup **ppGroup);
468  void __RPC_STUB IBackgroundCopyQMgr_GetGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
469  HRESULT WINAPI IBackgroundCopyQMgr_EnumGroups_Proxy(IBackgroundCopyQMgr *This,DWORD dwFlags,IEnumBackgroundCopyGroups **ppEnumGroups);
470  void __RPC_STUB IBackgroundCopyQMgr_EnumGroups_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
471#endif
472
473#ifndef __BackgroundCopyQMgr_LIBRARY_DEFINED__
474#define __BackgroundCopyQMgr_LIBRARY_DEFINED__
475  EXTERN_C const IID LIBID_BackgroundCopyQMgr;
476  EXTERN_C const CLSID CLSID_BackgroundCopyQMgr;
477#ifdef __cplusplus
478  class BackgroundCopyQMgr;
479#endif
480#endif
481
482  ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
483  unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
484  unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
485  void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
486  ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
487  unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
488  unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
489  void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
490
491  HRESULT WINAPI IBackgroundCopyGroup_SetProp_Proxy(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
492  HRESULT WINAPI IBackgroundCopyGroup_SetProp_Stub(IBackgroundCopyGroup *This,GROUPPROP propID,VARIANT *pvarVal);
493
494#ifdef __cplusplus
495}
496#endif
497#endif