IProviderCustomFilteredSyncServices::DeserializeFilterKeyMap

Creates an IFilterKeyMap object and initializes it by using serialized data.

HRESULT DeserializeFilterKeyMap(
  ISyncFilterDeserializer * pISyncFilterDeserializer,
  const BYTE * pbFilterKeyMap,
  DWORD dwCbFilterKeyMap,
  IFilterKeyMap ** ppFilterKeyMap);

Parameters

  • pISyncFilterDeserializer
    [in] An object that is used to deserialize the custom filters that are contained in the serialized filter key map data.
  • pbFilterKeyMap
    [in, size_is(dwCbFilterKeyMap)] The serialized filter key map data.
  • dwCbFilterKeyMap
    [in] The number of bytes in pbFilterKeyMap.
  • ppFilterKeyMap
    [out] Returns a filter key map object that is initialized by using the serialized data contained in pbFilterKeyMap.

Return Value

  • S_OK.

  • E_OUTOFMEMORY.

  • E_POINTER.

  • SYNC_E_DESERIALIZATION when a problem occurs during serialization. This error is also returned when the serialization version contained in the serialized data is less than SYNC_SERIALIZATION_VERSION_V3.

  • SYNC_E_INVALID_OPERATION when this object has not been initialized by calling IProviderSyncServices::Initialize.

Remarks

A filter key map is used by a provider that represents a replica that tracks filters. The filter key map maps DWORD filter keys to ISyncFilter objects.

To deserialize the custom filters that are contained in the serialized data, this method calls ISyncFilterDeserializer::DeserializeSyncFilter one time for each filter in the serialized data.

See Also

Reference

IProviderCustomFilteredSyncServices Interface