| /** | |
| * This file has no copyright assigned and is placed in the Public Domain. | |
| * This file is part of the mingw-w64 runtime package. | |
| * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| */ | |
| #ifndef __WINSYNC_H__ | |
| #define __WINSYNC_H__ | |
| #include <objbase.h> | |
| #if (_WIN32_WINNT >= 0x0601) | |
| typedef enum _CONFLICT_RESOLUTION_POLICY { | |
| CRP_NONE = 0, | |
| CRP_DESTINATION_PROVIDER_WINS, | |
| CRP_SOURCE_PROVIDER_WINS, | |
| CRP_LAST | |
| } CONFLICT_RESOLUTION_POLICY; | |
| typedef enum _FILTERING_TYPE { | |
| FT_CURRENT_ITEMS_ONLY = 0 | |
| } FILTERING_TYPE; | |
| typedef enum _KNOWLEDGE_COOKIE_COMPARISON_RESULT { | |
| KCCR_COOKIE_KNOWLEDGE_EQUAL = 0, | |
| KCCR_COOKIE_KNOWLEDGE_CONTAINED, | |
| KCCR_COOKIE_KNOWLEDGE_CONTAINS, | |
| KCCR_COOKIE_KNOWLEDGE_NOT_COMPARABLE | |
| } KNOWLEDGE_COOKIE_COMPARISON_RESULT; | |
| typedef enum _SYNC_FULL_ENUMERATION_ACTION { | |
| SFEA_FULL_ENUMERATION = 0, | |
| SFEA_PARTIAL_SYNC, | |
| SFEA_ABORT | |
| } SYNC_FULL_ENUMERATION_ACTION; | |
| typedef enum _SYNC_PROGRESS_STAGE { | |
| SPS_CHANGE_DETECTION = 0, | |
| SPS_CHANGE_ENUMERATION, | |
| SPS_CHANGE_APPLICATION | |
| } SYNC_PROGRESS_STAGE; | |
| typedef enum _SYNC_PROVIDER_ROLE { | |
| SPR_SOURCE = 0, | |
| SPR_DESTINATION | |
| } SYNC_PROVIDER_ROLE; | |
| typedef enum _SYNC_RESOLVE_ACTION { | |
| SRA_DEFER = 0, | |
| SRA_ACCEPT_DESTINATION_PROVIDER, | |
| SRA_ACCEPT_SOURCE_PROVIDER, | |
| SRA_MERGE, | |
| SRA_TRANSFER_AND_DEFER, | |
| SRA_LAST | |
| } SYNC_RESOLVE_ACTION; | |
| typedef enum _SYNC_SERIALIZATION_VERSION { | |
| SYNC_SERIALIZATION_VERSION_V1 = 0, | |
| SYNC_SERIALIZATION_VERSION_V2 | |
| } SYNC_SERIALIZATION_VERSION; | |
| typedef enum _SYNC_STATISTICS { | |
| SYNC_STATISTICS_RANGE_COUNT = 0 | |
| } SYNC_STATISTICS; | |
| typedef struct _ID_PARAMETER_PAIR { | |
| WINBOOL fIsVariable; | |
| USHORT cbIdSize; | |
| } ID_PARAMETER_PAIR; | |
| typedef struct _ID_PARAMETERS { | |
| DWORD dwSize; | |
| ID_PARAMETER_PAIR replicaId; | |
| ID_PARAMETER_PAIR itemId; | |
| ID_PARAMETER_PAIR changeUnitId; | |
| } ID_PARAMETERS; | |
| typedef struct _SYNC_RANGE { | |
| BYTE * pbClosedLowerBound; | |
| BYTE * pbClosedUpperBound; | |
| } SYNC_RANGE; | |
| typedef struct _SYNC_SESSION_STATISTICS { | |
| DWORD dwChangesApplied; | |
| DWORD dwChangesFailed; | |
| } SYNC_SESSION_STATISTICS; | |
| typedef struct _SYNC_TIME { | |
| DWORD dwDate; | |
| DWORD dwTime; | |
| } SYNC_TIME; | |
| typedef struct _SYNC_VERSION { | |
| DWORD dwLastUpdatingReplicaKey; | |
| ULONGLONG ullTickCount; | |
| } SYNC_VERSION; | |
| #ifndef __IAsynchronousDataRetriever_FWD_DEFINED__ | |
| #define __IAsynchronousDataRetriever_FWD_DEFINED__ | |
| typedef struct IAssociatedIdentityProvider IAssociatedIdentityProvider; | |
| #endif | |
| #ifndef __IDataRetrieverCallback_FWD_DEFINED__ | |
| #define __IDataRetrieverCallback_FWD_DEFINED__ | |
| typedef struct IDataRetrieverCallback IDataRetrieverCallback; | |
| #endif | |
| #ifndef __IChangeConflict_FWD_DEFINED__ | |
| #define __IChangeConflict_FWD_DEFINED__ | |
| typedef struct IChangeConflict IChangeConflict; | |
| #endif | |
| #ifndef __IChangeUnitException_FWD_DEFINED__ | |
| #define __IChangeUnitException_FWD_DEFINED__ | |
| typedef struct IChangeUnitException IChangeUnitException; | |
| #endif | |
| #ifndef __IChangeUnitListFilterInfo_FWD_DEFINED__ | |
| #define __IChangeUnitListFilterInfo_FWD_DEFINED__ | |
| typedef struct IChangeUnitListFilterInfo IChangeUnitListFilterInfo; | |
| #endif | |
| #ifndef __ISyncFilterInfo_FWD_DEFINED__ | |
| #define __ISyncFilterInfo_FWD_DEFINED__ | |
| typedef struct ISyncFilterInfo ISyncFilterInfo; | |
| #endif | |
| #ifndef __IClockVector_FWD_DEFINED__ | |
| #define __IClockVector_FWD_DEFINED__ | |
| typedef struct IClockVector IClockVector; | |
| #endif | |
| #ifndef __IClockVectorElement_FWD_DEFINED__ | |
| #define __IClockVectorElement_FWD_DEFINED__ | |
| typedef struct IClockVectorElement IClockVectorElement; | |
| #endif | |
| #ifndef __IConstructReplicaKeyMap_FWD_DEFINED__ | |
| #define __IConstructReplicaKeyMap_FWD_DEFINED__ | |
| typedef struct IConstructReplicaKeyMap IConstructReplicaKeyMap; | |
| #endif | |
| #ifndef __ICoreFragment_FWD_DEFINED__ | |
| #define __ICoreFragment_FWD_DEFINED__ | |
| typedef struct ICoreFragment ICoreFragment; | |
| #endif | |
| #ifndef __ILoadChangeContext_FWD_DEFINED__ | |
| #define __ILoadChangeContext_FWD_DEFINED__ | |
| typedef struct ILoadChangeContext ILoadChangeContext; | |
| #endif | |
| #ifndef __ISyncChange_FWD_DEFINED__ | |
| #define __ISyncChange_FWD_DEFINED__ | |
| typedef struct ISyncChange ISyncChange; | |
| #endif | |
| #ifndef __ISyncChangeUnit_FWD_DEFINED__ | |
| #define __ISyncChangeUnit_FWD_DEFINED__ | |
| typedef struct ISyncChangeUnit ISyncChangeUnit; | |
| #endif | |
| #ifndef __IRecoverableErrorData_FWD_DEFINED__ | |
| #define __IRecoverableErrorData_FWD_DEFINED__ | |
| typedef struct IRecoverableErrorData IRecoverableErrorData; | |
| #endif | |
| #ifndef __IEnumSyncChangeUnits_FWD_DEFINED__ | |
| #define __IEnumSyncChangeUnits_FWD_DEFINED__ | |
| typedef struct IEnumSyncChangeUnits IEnumSyncChangeUnits; | |
| #endif | |
| /* Fixme: ISyncKnowledge method list is missing from MSDN */ | |
| #ifndef __ISyncKnowledge_FWD_DEFINED__ | |
| #define __ISyncKnowledge_FWD_DEFINED__ | |
| typedef struct ISyncKnowledge ISyncKnowledge; | |
| #endif | |
| #undef INTERFACE | |
| #define INTERFACE IAsynchronousDataRetriever | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(IAsynchronousDataRetriever,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* IAsynchronousDataRetriever methods */ | |
| STDMETHOD_(HRESULT,GetIdParameters)(THIS_ ID_PARAMETERS *pIdParameters) PURE; | |
| STDMETHOD_(HRESULT,LoadChangeData)(THIS_ ILoadChangeContext *pLoadChangeContext) PURE; | |
| STDMETHOD_(HRESULT,RegisterCallback)(THIS_ IDataRetrieverCallback *pDataRetrieverCallback) PURE; | |
| STDMETHOD_(HRESULT,RevokeCallback)(THIS_ IDataRetrieverCallback *pDataRetrieverCallback) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define IAsynchronousDataRetriever_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define IAsynchronousDataRetriever_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define IAsynchronousDataRetriever_Release(This) (This)->lpVtbl->Release(This) | |
| #define IAsynchronousDataRetriever_GetIdParameters(This,pIdParameters) (This)->lpVtbl->GetIdParameters(This,pIdParameters) | |
| #define IAsynchronousDataRetriever_LoadChangeData(This,pLoadChangeContext) (This)->lpVtbl->LoadChangeData(This,pLoadChangeContext) | |
| #define IAsynchronousDataRetriever_RegisterCallback(This,pDataRetrieverCallback) (This)->lpVtbl->RegisterCallback(This,pDataRetrieverCallback) | |
| #define IAsynchronousDataRetriever_RevokeCallback(This,pDataRetrieverCallback) (This)->lpVtbl->RevokeCallback(This,pDataRetrieverCallback) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE IDataRetrieverCallback | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(IDataRetrieverCallback,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* IDataRetrieverCallback methods */ | |
| STDMETHOD_(HRESULT,LoadChangeDataComplete)(THIS_ IUnknown *pUnkData) PURE; | |
| STDMETHOD_(HRESULT,LoadChangeDataError)(THIS_ HRESULT hrError) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define IDataRetrieverCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define IDataRetrieverCallback_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define IDataRetrieverCallback_Release(This) (This)->lpVtbl->Release(This) | |
| #define IDataRetrieverCallback_LoadChangeDataComplete(This,pUnkData) (This)->lpVtbl->LoadChangeDataComplete(This,pUnkData) | |
| #define IDataRetrieverCallback_LoadChangeDataError(This,hrError) (This)->lpVtbl->LoadChangeDataError(This,hrError) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE IChangeConflict | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(IChangeConflict,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* IChangeConflict methods */ | |
| STDMETHOD_(HRESULT,GetDestinationProviderConflictingChange)(THIS_ ISyncChange **ppConflictingChange) PURE; | |
| STDMETHOD_(HRESULT,GetDestinationProviderConflictingData)(THIS_ IUnknown **ppConflictingData) PURE; | |
| STDMETHOD_(HRESULT,GetResolveActionForChange)(THIS_ SYNC_RESOLVE_ACTION *pResolveAction) PURE; | |
| STDMETHOD_(HRESULT,GetResolveActionForChangeUnit)(THIS_ ISyncChangeUnit *pChangeUnit,SYNC_RESOLVE_ACTION *pResolveAction) PURE; | |
| STDMETHOD_(HRESULT,GetSourceProviderConflictingChange)(THIS_ ISyncChange **ppSyncChange) PURE; | |
| STDMETHOD_(HRESULT,GetSourceProviderConflictingData)(THIS_ IUnknown **ppConflictingData) PURE; | |
| STDMETHOD_(HRESULT,SetResolveActionForChange)(THIS_ SYNC_RESOLVE_ACTION resolveAction) PURE; | |
| STDMETHOD_(HRESULT,SetResolveActionForChangeUnit)(THIS_ ISyncChangeUnit *pChangeUnit,SYNC_RESOLVE_ACTION resolveAction) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define IChangeConflict_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define IChangeConflict_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define IChangeConflict_Release(This) (This)->lpVtbl->Release(This) | |
| #define IChangeConflict_GetDestinationProviderConflictingChange(This,ppConflictingChange) (This)->lpVtbl->GetDestinationProviderConflictingChange(This,ppConflictingChange) | |
| #define IChangeConflict_GetDestinationProviderConflictingData(This,ppConflictingData) (This)->lpVtbl->GetDestinationProviderConflictingData(This,ppConflictingData) | |
| #define IChangeConflict_GetResolveActionForChange(This,pResolveAction) (This)->lpVtbl->GetResolveActionForChange(This,pResolveAction) | |
| #define IChangeConflict_GetResolveActionForChangeUnit(This,pChangeUnit,pResolveAction) (This)->lpVtbl->GetResolveActionForChangeUnit(This,pChangeUnit,pResolveAction) | |
| #define IChangeConflict_GetSourceProviderConflictingChange(This,ppSyncChange) (This)->lpVtbl->GetSourceProviderConflictingChange(This,ppSyncChange) | |
| #define IChangeConflict_GetSourceProviderConflictingData(This,ppConflictingData) (This)->lpVtbl->GetSourceProviderConflictingData(This,ppConflictingData) | |
| #define IChangeConflict_SetResolveActionForChange(This,resolveAction) (This)->lpVtbl->SetResolveActionForChange(This,resolveAction) | |
| #define IChangeConflict_SetResolveActionForChangeUnit(This,pChangeUnit,resolveAction) (This)->lpVtbl->SetResolveActionForChangeUnit(This,pChangeUnit,resolveAction) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE IChangeUnitException | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(IChangeUnitException,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* IChangeUnitException methods */ | |
| STDMETHOD_(HRESULT,GetChangeUnitId)(THIS_ DWORD *pcbIdSize) PURE; | |
| STDMETHOD_(HRESULT,GetClockVector)(THIS_ REFIID riid,void **ppUnk) PURE; | |
| STDMETHOD_(HRESULT,GetItemId)(THIS_ DWORD *pcbIdSize) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define IChangeUnitException_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define IChangeUnitException_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define IChangeUnitException_Release(This) (This)->lpVtbl->Release(This) | |
| #define IChangeUnitException_GetChangeUnitId(This,pcbIdSize) (This)->lpVtbl->GetChangeUnitId(This,pcbIdSize) | |
| #define IChangeUnitException_GetClockVector(This,riid,ppUnk) (This)->lpVtbl->GetClockVector(This,riid,ppUnk) | |
| #define IChangeUnitException_GetItemId(This,pcbIdSize) (This)->lpVtbl->GetItemId(This,pcbIdSize) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE ISyncFilterInfo | |
| DECLARE_INTERFACE_(ISyncFilterInfo,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* ISyncFilterInfo methods */ | |
| STDMETHOD_(HRESULT,Serialize)(THIS_ DWORD *pcbBuffer) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define ISyncFilterInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define ISyncFilterInfo_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define ISyncFilterInfo_Release(This) (This)->lpVtbl->Release(This) | |
| #define ISyncFilterInfo_Serialize(This,pcbBuffer) (This)->lpVtbl->Serialize(This,pcbBuffer) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE IChangeUnitListFilterInfo | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(IChangeUnitListFilterInfo,ISyncFilterInfo) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* ISyncFilterInfo methods */ | |
| STDMETHOD_(HRESULT,Serialize)(THIS_ DWORD *pcbBuffer) PURE; | |
| /* IChangeUnitListFilterInfo methods */ | |
| STDMETHOD_(HRESULT,GetChangeUnitId)(THIS_ DWORD dwChangeUnitIdIndex,DWORD *pcbIdSize) PURE; | |
| STDMETHOD_(HRESULT,GetChangeUnitIdCount)(THIS_ DWORD *pdwChangeUnitIdCount) PURE; | |
| STDMETHOD_(HRESULT,Initialize)(THIS_ const BYTE * const *ppbChangeUnitIds,DWORD dwChangeUnitCount) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define IChangeUnitListFilterInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define IChangeUnitListFilterInfo_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define IChangeUnitListFilterInfo_Release(This) (This)->lpVtbl->Release(This) | |
| #define IChangeUnitListFilterInfo_Serialize(This,pcbBuffer) (This)->lpVtbl->Serialize(This,pcbBuffer) | |
| #define IChangeUnitListFilterInfo_GetChangeUnitId(This,dwChangeUnitIdIndex,pcbIdSize) (This)->lpVtbl->GetChangeUnitId(This,dwChangeUnitIdIndex,pcbIdSize) | |
| #define IChangeUnitListFilterInfo_GetChangeUnitIdCount(This,pdwChangeUnitIdCount) (This)->lpVtbl->GetChangeUnitIdCount(This,pdwChangeUnitIdCount) | |
| #define IChangeUnitListFilterInfo_Initialize(This,ppbChangeUnitIds,dwChangeUnitCount) (This)->lpVtbl->Initialize(This,ppbChangeUnitIds,dwChangeUnitCount) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE IClockVector | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(IClockVector,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* IClockVector methods */ | |
| STDMETHOD_(HRESULT,GetClockVectorElementCount)(THIS_ DWORD *pdwCount) PURE; | |
| STDMETHOD_(HRESULT,GetClockVectorElements)(THIS_ REFIID riid,void **ppiEnumClockVector) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define IClockVector_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define IClockVector_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define IClockVector_Release(This) (This)->lpVtbl->Release(This) | |
| #define IClockVector_GetClockVectorElementCount(This,pdwCount) (This)->lpVtbl->GetClockVectorElementCount(This,pdwCount) | |
| #define IClockVector_GetClockVectorElements(This,riid,ppiEnumClockVector) (This)->lpVtbl->GetClockVectorElements(This,riid,ppiEnumClockVector) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE IClockVectorElement | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(IClockVectorElement,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* IClockVectorElement methods */ | |
| STDMETHOD_(HRESULT,GetReplicaKey)(THIS_ DWORD *pdwReplicaKey) PURE; | |
| STDMETHOD_(HRESULT,GetTickCount)(THIS_ ULONGLONG *pullTickCount) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define IClockVectorElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define IClockVectorElement_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define IClockVectorElement_Release(This) (This)->lpVtbl->Release(This) | |
| #define IClockVectorElement_GetReplicaKey(This,pdwReplicaKey) (This)->lpVtbl->GetReplicaKey(This,pdwReplicaKey) | |
| #define IClockVectorElement_GetTickCount(This,pullTickCount) (This)->lpVtbl->GetTickCount(This,pullTickCount) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE IConstructReplicaKeyMap | |
| DECLARE_INTERFACE_(IConstructReplicaKeyMap,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* IConstructReplicaKeyMap methods */ | |
| STDMETHOD_(HRESULT,FindOrAddReplica)(THIS_ BYTE *pbReplicaId,DWORD *pdwReplicaKey) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define IConstructReplicaKeyMap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define IConstructReplicaKeyMap_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define IConstructReplicaKeyMap_Release(This) (This)->lpVtbl->Release(This) | |
| #define IConstructReplicaKeyMap_FindOrAddReplica(This,pbReplicaId,pdwReplicaKey) (This)->lpVtbl->FindOrAddReplica(This,pbReplicaId,pdwReplicaKey) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE ICoreFragment | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(ICoreFragment,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* ICoreFragment methods */ | |
| STDMETHOD_(HRESULT,GetColumnCount)(THIS_ DWORD *pColumnCount) PURE; | |
| STDMETHOD_(HRESULT,GetRangeCount)(THIS_ DWORD *pRangeCount) PURE; | |
| STDMETHOD_(HRESULT,NextColumn)(THIS_ DWORD *pChangeUnitIdSize) PURE; | |
| STDMETHOD_(HRESULT,NextRange)(THIS_ DWORD *pItemIdSize,IClockVector **piClockVector) PURE; | |
| STDMETHOD_(HRESULT,Reset)(THIS) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define ICoreFragment_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define ICoreFragment_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define ICoreFragment_Release(This) (This)->lpVtbl->Release(This) | |
| #define ICoreFragment_GetColumnCount(This,pColumnCount) (This)->lpVtbl->GetColumnCount(This,pColumnCount) | |
| #define ICoreFragment_GetRangeCount(This,pRangeCount) (This)->lpVtbl->GetRangeCount(This,pRangeCount) | |
| #define ICoreFragment_NextColumn(This,pChangeUnitIdSize) (This)->lpVtbl->NextColumn(This,pChangeUnitIdSize) | |
| #define ICoreFragment_NextRange(This,pItemIdSize,piClockVector) (This)->lpVtbl->NextRange(This,pItemIdSize,piClockVector) | |
| #define ICoreFragment_Reset() (This)->lpVtbl->Reset(This) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE ILoadChangeContext | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(ILoadChangeContext,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* ILoadChangeContext methods */ | |
| STDMETHOD_(HRESULT,GetSyncChange)(THIS_ ISyncChange **ppSyncChange) PURE; | |
| STDMETHOD_(HRESULT,SetRecoverableErrorOnChange)(THIS_ HRESULT hrError,IRecoverableErrorData *pErrorData) PURE; | |
| STDMETHOD_(HRESULT,SetRecoverableErrorOnChangeUnit)(THIS_ HRESULT hrError,ISyncChangeUnit *pChangeUnit,IRecoverableErrorData *pErrorData) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define ILoadChangeContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define ILoadChangeContext_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define ILoadChangeContext_Release(This) (This)->lpVtbl->Release(This) | |
| #define ILoadChangeContext_GetSyncChange(This,ppSyncChange) (This)->lpVtbl->GetSyncChange(This,ppSyncChange) | |
| #define ILoadChangeContext_SetRecoverableErrorOnChange(This,hrError,pErrorData) (This)->lpVtbl->SetRecoverableErrorOnChange(This,hrError,pErrorData) | |
| #define ILoadChangeContext_SetRecoverableErrorOnChangeUnit(This,hrError,pChangeUnit,pErrorData) (This)->lpVtbl->SetRecoverableErrorOnChangeUnit(This,hrError,pChangeUnit,pErrorData) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE ISyncChange | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(ISyncChange,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* ISyncChange methods */ | |
| STDMETHOD_(HRESULT,GetChangeUnits)(THIS_ IEnumSyncChangeUnits **ppEnum) PURE; | |
| STDMETHOD_(HRESULT,GetChangeVersion)(THIS_ const BYTE *pbCurrentReplicaId,SYNC_VERSION *pVersion) PURE; | |
| STDMETHOD_(HRESULT,GetCreationVersion)(THIS_ const BYTE *pbCurrentReplicaId,SYNC_VERSION *pVersion) PURE; | |
| STDMETHOD_(HRESULT,GetFlags)(THIS_ DWORD *pdwFlags) PURE; | |
| STDMETHOD_(HRESULT,GetLearnedKnowledge)(THIS_ ISyncKnowledge **ppMadeWithKnowledge) PURE; | |
| STDMETHOD_(HRESULT,GetMadeWithKnowledge)(THIS_ ISyncKnowledge **ppMadeWithKnowledge) PURE; | |
| STDMETHOD_(HRESULT,GetOwnerReplicaId)(THIS_ DWORD *pcbIdSize) PURE; | |
| STDMETHOD_(HRESULT,GetRootItemId)(THIS_ DWORD *pcbIdSize) PURE; | |
| STDMETHOD_(HRESULT,GetWorkEstimate)(THIS_ DWORD *pdwWork) PURE; | |
| STDMETHOD_(HRESULT,SetWorkEstimate)(THIS_ DWORD dwWork) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define ISyncChange_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define ISyncChange_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define ISyncChange_Release(This) (This)->lpVtbl->Release(This) | |
| #define ISyncChange_GetChangeUnits(This,ppEnum) (This)->lpVtbl->GetChangeUnits(This,ppEnum) | |
| #define ISyncChange_GetChangeVersion(This,pbCurrentReplicaId,pVersion) (This)->lpVtbl->GetChangeVersion(This,pbCurrentReplicaId,pVersion) | |
| #define ISyncChange_GetCreationVersion(This,pbCurrentReplicaId,pVersion) (This)->lpVtbl->GetCreationVersion(This,pbCurrentReplicaId,pVersion) | |
| #define ISyncChange_GetFlags(This,pdwFlags) (This)->lpVtbl->GetFlags(This,pdwFlags) | |
| #define ISyncChange_GetLearnedKnowledge(This,ppMadeWithKnowledge) (This)->lpVtbl->GetLearnedKnowledge(This,ppMadeWithKnowledge) | |
| #define ISyncChange_GetMadeWithKnowledge(This,ppMadeWithKnowledge) (This)->lpVtbl->GetMadeWithKnowledge(This,ppMadeWithKnowledge) | |
| #define ISyncChange_GetOwnerReplicaId(This,pcbIdSize) (This)->lpVtbl->GetOwnerReplicaId(This,pcbIdSize) | |
| #define ISyncChange_GetRootItemId(This,pcbIdSize) (This)->lpVtbl->GetRootItemId(This,pcbIdSize) | |
| #define ISyncChange_GetWorkEstimate(This,pdwWork) (This)->lpVtbl->GetWorkEstimate(This,pdwWork) | |
| #define ISyncChange_SetWorkEstimate(This,dwWork) (This)->lpVtbl->SetWorkEstimate(This,dwWork) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE ISyncChangeUnit | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(ISyncChangeUnit,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* ISyncChangeUnit methods */ | |
| STDMETHOD_(HRESULT,GetChangeUnitId)(THIS_ DWORD *pcbIdSize) PURE; | |
| STDMETHOD_(HRESULT,GetChangeUnitVersion)(THIS_ const BYTE *pbCurrentReplicaId,SYNC_VERSION *pVersion) PURE; | |
| STDMETHOD_(HRESULT,GetItemChange)(THIS_ ISyncChange **ppSyncChange) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define ISyncChangeUnit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define ISyncChangeUnit_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define ISyncChangeUnit_Release(This) (This)->lpVtbl->Release(This) | |
| #define ISyncChangeUnit_GetChangeUnitId(This,pcbIdSize) (This)->lpVtbl->GetChangeUnitId(This,pcbIdSize) | |
| #define ISyncChangeUnit_GetChangeUnitVersion(This,pbCurrentReplicaId,pVersion) (This)->lpVtbl->GetChangeUnitVersion(This,pbCurrentReplicaId,pVersion) | |
| #define ISyncChangeUnit_GetItemChange(This,ppSyncChange) (This)->lpVtbl->GetItemChange(This,ppSyncChange) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE IRecoverableErrorData | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(IRecoverableErrorData,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* IRecoverableErrorData methods */ | |
| STDMETHOD_(HRESULT,GetErrorDescription)(THIS_ DWORD *pcchErrorDescription) PURE; | |
| STDMETHOD_(HRESULT,GetItemDisplayName)(THIS_ DWORD *pcchItemDisplayName) PURE; | |
| STDMETHOD_(HRESULT,Initialize)(THIS_ LPCWSTR pcszItemDisplayName,LPCWSTR pcszErrorDescription) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define IRecoverableErrorData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define IRecoverableErrorData_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define IRecoverableErrorData_Release(This) (This)->lpVtbl->Release(This) | |
| #define IRecoverableErrorData_GetErrorDescription(This,pcchErrorDescription) (This)->lpVtbl->GetErrorDescription(This,pcchErrorDescription) | |
| #define IRecoverableErrorData_GetItemDisplayName(This,pcchItemDisplayName) (This)->lpVtbl->GetItemDisplayName(This,pcchItemDisplayName) | |
| #define IRecoverableErrorData_Initialize(This,pcszItemDisplayName,pcszErrorDescription) (This)->lpVtbl->Initialize(This,pcszItemDisplayName,pcszErrorDescription) | |
| #endif /*COBJMACROS*/ | |
| #undef INTERFACE | |
| #define INTERFACE IEnumSyncChangeUnits | |
| #ifdef __GNUC__ | |
| #warning COM interfaces layout in this header has not been verified. | |
| #warning COM interfaces with incorrect layout may not work at all. | |
| __MINGW_BROKEN_INTERFACE(INTERFACE) | |
| #endif | |
| DECLARE_INTERFACE_(IEnumSyncChangeUnits,IUnknown) | |
| { | |
| BEGIN_INTERFACE | |
| /* IUnknown methods */ | |
| STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; | |
| STDMETHOD_(ULONG, AddRef)(THIS) PURE; | |
| STDMETHOD_(ULONG, Release)(THIS) PURE; | |
| /* IEnumSyncChangeUnits methods */ | |
| STDMETHOD_(HRESULT,Clone)(THIS_ IEnumSyncChangeUnits **ppEnum) PURE; | |
| STDMETHOD_(HRESULT,Next)(THIS_ ULONG cChanges,ISyncChangeUnit **ppChangeUnit,ULONG *pcFetched) PURE; | |
| STDMETHOD_(HRESULT,Reset)(THIS) PURE; | |
| STDMETHOD_(HRESULT,Skip)(THIS_ ULONG cChanges) PURE; | |
| END_INTERFACE | |
| }; | |
| #ifdef COBJMACROS | |
| #define IEnumSyncChangeUnits_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | |
| #define IEnumSyncChangeUnits_AddRef(This) (This)->lpVtbl->AddRef(This) | |
| #define IEnumSyncChangeUnits_Release(This) (This)->lpVtbl->Release(This) | |
| #define IEnumSyncChangeUnits_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) | |
| #define IEnumSyncChangeUnits_Next(This,cChanges,ppChangeUnit,pcFetched) (This)->lpVtbl->Next(This,cChanges,ppChangeUnit,pcFetched) | |
| #define IEnumSyncChangeUnits_Reset() (This)->lpVtbl->Reset(This) | |
| #define IEnumSyncChangeUnits_Skip(This,cChanges) (This)->lpVtbl->Skip(This,cChanges) | |
| #endif /*COBJMACROS*/ | |
| #endif /*(_WIN32_WINNT >= 0x0601)*/ | |
| #endif /* __WINSYNC_H__ */ |