36 IBackgroundCopyManager_AddRef(iface);
70 IBackgroundCopyJob_AddRef(*ppJob);
97 IBackgroundCopyJob3_AddRef(&
cur->IBackgroundCopyJob3_iface);
118 FIXME(
"(0x%08x 0x%x %p): stub\n",
hr,
langid, error_description);
135 {
NULL, -1, 0, 0, 0, 0 },
143 TRACE(
"(%p)\n", ppObj);
167 IBackgroundCopyJob3_Release(&
job->IBackgroundCopyJob3_iface);
179 if (
job->state == BG_JOB_STATE_ACKNOWLEDGED ||
job->state == BG_JOB_STATE_CANCELLED)
182 IBackgroundCopyJob3_Release(&
job->IBackgroundCopyJob3_iface);
184 else if (
job->state == BG_JOB_STATE_QUEUED)
189 else if (
job->state == BG_JOB_STATE_CONNECTING
190 ||
job->state == BG_JOB_STATE_TRANSFERRING)
192 ERR(
"Invalid state for job %p: %d\n",
job,
job->state);
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static void list_remove(struct list_entry *entry)
static void list_add_head(struct list_entry *head, struct list_entry *entry)
HRESULT enum_copy_job_create(BackgroundCopyManagerImpl *qmgr, IEnumBackgroundCopyJobs **enumjob)
HRESULT BackgroundCopyJobConstructor(LPCWSTR displayName, BG_JOB_TYPE type, GUID *job_id, BackgroundCopyJobImpl **job)
void processJob(BackgroundCopyJobImpl *job)
static ULONG WINAPI BackgroundCopyManager_AddRef(IBackgroundCopyManager *iface)
static HRESULT WINAPI BackgroundCopyManager_QueryInterface(IBackgroundCopyManager *iface, REFIID riid, void **ppv)
DWORD WINAPI fileTransfer(void *param)
static HRESULT WINAPI BackgroundCopyManager_GetErrorDescription(IBackgroundCopyManager *iface, HRESULT hr, DWORD langid, LPWSTR *error_description)
static HRESULT WINAPI BackgroundCopyManager_CreateJob(IBackgroundCopyManager *iface, LPCWSTR DisplayName, BG_JOB_TYPE Type, GUID *pJobId, IBackgroundCopyJob **ppJob)
BackgroundCopyManagerImpl globalMgr
static ULONG WINAPI BackgroundCopyManager_Release(IBackgroundCopyManager *iface)
static const IBackgroundCopyManagerVtbl BackgroundCopyManagerVtbl
static HRESULT WINAPI BackgroundCopyManager_GetJob(IBackgroundCopyManager *iface, REFGUID jobID, IBackgroundCopyJob **job)
static HRESULT WINAPI BackgroundCopyManager_EnumJobs(IBackgroundCopyManager *iface, DWORD flags, IEnumBackgroundCopyJobs **ppEnum)
HRESULT BackgroundCopyManagerConstructor(LPVOID *ppObj)
#define IsEqualGUID(rguid1, rguid2)
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
DWORD WINAPI WaitForMultipleObjects(IN DWORD nCount, IN CONST HANDLE *lpHandles, IN BOOL bWaitAll, IN DWORD dwMilliseconds)
BOOL WINAPI DECLSPEC_HOTPATCH ResetEvent(IN HANDLE hEvent)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)