Share via


ISyncKnowledge Interface

Represents knowledge that a replica has about its item store.

interface ISyncKnowledge : IUnknown

Members

ISyncKnowledge methods Description

ISyncKnowledge::GetOwnerReplicaId

Gets the ID of the replica that owns this knowledge.

ISyncKnowledge::Serialize

Serializes the knowledge object data to a byte array.

ISyncKnowledge::SetLocalTickCount

Sets the tick count for the replica that owns this knowledge.

ISyncKnowledge::ContainsChange

Indicates whether the specified item change is known by this knowledge.

ISyncKnowledge::ContainsChangeUnit

Indicates whether the specified change unit change is known by this knowledge.

ISyncKnowledge::GetScopeVector

Gets the clock vector that defines the changes that are contained in the knowledge.

ISyncKnowledge::GetReplicaKeyMap

Gets the IReplicaKeyMap object that is associated with this knowledge.

ISyncKnowledge::Clone

Creates a new instance of this object, and copies the data from this object to the new object.

ISyncKnowledge::ConvertVersion

Converts a version from another replica into one that is compatible with the replica that owns this knowledge.

ISyncKnowledge::MapRemoteToLocal

Converts a knowledge object from another replica into one that is compatible with the replica that owns this knowledge.

ISyncKnowledge::Union

Combines the specified knowledge with the current knowledge.

ISyncKnowledge::ProjectOntoItem

Gets the knowledge for the specified item.

ISyncKnowledge::ProjectOntoChangeUnit

Gets the knowledge for the specified change unit.

ISyncKnowledge::ProjectOntoRange

Gets the knowledge for the specified range of item IDs.

ISyncKnowledge::ExcludeItem

Removes knowledge about the specified item from the knowledge.

ISyncKnowledge::ExcludeChangeUnit

Removes knowledge about the specified change unit from the knowledge.

ISyncKnowledge::ContainsKnowledge

Indicates whether the specified knowledge is known by this knowledge.

ISyncKnowledge::FindMinTickCountForReplica

Finds the minimum tick count in the knowledge for the specified replica.

ISyncKnowledge::GetRangeExceptions

Gets an object that can enumerate the IRangeException objects that are stored in the knowledge.

ISyncKnowledge::GetSingleItemExceptions

Gets an object that can enumerate the ISingleItemException objects that are stored in the knowledge.

ISyncKnowledge::GetChangeUnitExceptions

Gets an object that can enumerate the IChangeUnitException objects that are stored in the knowledge.

ISyncKnowledge::FindClockVectorForItem

Gets the clock vector that is associated with the specified item ID.

ISyncKnowledge::FindClockVectorForChangeUnit

Gets the clock vector that is associated with the specified change unit ID.

ISyncKnowledge::GetVersion

Gets the version of this knowledge structure.

Remarks

To obtain a new ISyncKnowledge object, first create an IProviderSyncServices object by passing CLSID_SyncServices and IID_IProviderSyncServices to the CoCreateInstance function. Then, create the knowledge object by using IProviderSyncServices::CreateSyncKnowledge.

Be aware that there is no single representation of knowledge. Equivalent knowledge might be represented in different forms and return different values from knowledge inspection methods, such as GetScopeVector, GetRangeExceptions, GetSingleItemExceptions, GetChangeUnitExceptions.

Requirements

Header: Synchronization.h

See Also

Concepts

Sync Framework Core Components