Cloud Filter API
Overview of the Cloud Filter API technology.
To develop Cloud Filter API, you need these headers:
For programming guidance for this technology, see:
Enumerations
CF_CALLBACK_CANCEL_FLAGS Callback flags for canceling data fetching for a placeholder file or folder. |
CF_CALLBACK_CLOSE_COMPLETION_FLAGS Callback flags for notifying a sync provider that a placeholder under one of its sync roots that has been previously opened for read/write/delete access is now closed. |
CF_CALLBACK_DEHYDRATE_COMPLETION_FLAGS A callback flag to inform the sync provider that a placeholder under one of its sync roots has been successfully dehydrated. |
CF_CALLBACK_DEHYDRATE_FLAGS Callback flags for notifying a sync provider that a placeholder under one of its sync root is going to be dehydrated. |
CF_CALLBACK_DEHYDRATION_REASON Specifies the reason why a cloud file was dehydrated. |
CF_CALLBACK_DELETE_COMPLETION_FLAGS Callback flags for notifying a sync provider that a placeholder was successfully deleted. |
CF_CALLBACK_DELETE_FLAGS This callback is used to inform the sync provider that a placeholder file or directory under one of its sync roots is about to be deleted or undeleted. |
CF_CALLBACK_FETCH_DATA_FLAGS Callback flags for fetching data for a placeholder file or folder. |
CF_CALLBACK_FETCH_PLACEHOLDERS_FLAGS Flags for fetching information about the content of a placeholder file or directory. |
CF_CALLBACK_OPEN_COMPLETION_FLAGS Callback flags for notifying a sync provider that a placeholder was successfully opened for read/write/delete access. |
CF_CALLBACK_RENAME_COMPLETION_FLAGS A callback flag to inform the sync provider that a placeholder under one of its sync roots has been successfully renamed. |
CF_CALLBACK_RENAME_FLAGS Call back flags to inform the sync provider that a placeholder under one of its sync roots is about to be renamed or moved. |
CF_CALLBACK_TYPE Contains the various types of callbacks used on placeholder files or folders. |
CF_CALLBACK_VALIDATE_DATA_FLAGS Flags to validate the data of a placeholder file or directory. |
CF_CONNECT_FLAGS Additional information that can be requested by a sync provider when its callbacks are invoked. |
CF_CONVERT_FLAGS Normal file/directory to placeholder file/directory conversion flags. |
CF_CREATE_FLAGS Flags for creating a placeholder file or directory. |
CF_DEHYDRATE_FLAGS Placeholder dehydration flags. |
CF_HARDLINK_POLICY Specifies whether or not hard links are allowed on placeholder files. |
CF_HYDRATE_FLAGS Placeholder data hydration flags. |
CF_HYDRATION_POLICY_MODIFIER Allows a sync provider to control how placeholder files should be hydrated by the platform. This is a modifier that can be used with the primary policy:_CF_HYDRATION_POLICY_PRIMARY. |
CF_HYDRATION_POLICY_PRIMARY Allows a sync provider to control how placeholder files should be hydrated by the platform. This is the primary policy. |
CF_IN_SYNC_STATE Specifies the in-sync state for placeholder files and folders. |
CF_INSYNC_POLICY A policy allowing a sync provider to control when the platform should clear the in-sync state on a placeholder file or directory. |
CF_OPEN_FILE_FLAGS Flags to request various permissions on opening a file. |
CF_OPERATION_ACK_DATA_FLAGS Flags to verify and acknowledge data for a placeholder file or folder. |
CF_OPERATION_ACK_DEHYDRATE_FLAGS Flags to acknowledge the dehydration of a placeholder file or directory. |
CF_OPERATION_ACK_DELETE_FLAGS Flags to acknowledge the deletion of a placeholder file or directory. |
CF_OPERATION_ACK_RENAME_FLAGS Flags for acknowledging placeholder file or directory renaming. |
CF_OPERATION_RESTART_HYDRATION_FLAGS Flags to restart data hydration on a placeholder file or folder. |
CF_OPERATION_RETRIEVE_DATA_FLAGS Flags to retrieve data for a placeholder file or folder. |
CF_OPERATION_TRANSFER_DATA_FLAGS Flags to transfer data to hydrate a placeholder file or folder. |
CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAGS Flags to specify the behavior when transferring a placeholder file or directory. |
CF_OPERATION_TYPE The types of operations that can be performed on placeholder files and directories. |
CF_PIN_STATE Pin states of a placeholder file or directory. |
CF_PLACEHOLDER_CREATE_FLAGS Flags for creating a placeholder on a per-placeholder basis. |
CF_PLACEHOLDER_INFO_CLASS Information classes for placeholder info. |
CF_PLACEHOLDER_MANAGEMENT_POLICY Specifies a placeholder management policy for a CF_SYNC_POLICIES structure. |
CF_PLACEHOLDER_RANGE_INFO_CLASS Types of the range of placeholder file data. |
CF_PLACEHOLDER_STATE The state of a placeholder file or folder. |
CF_POPULATION_POLICY_MODIFIER Defines the population policy modifiers. This is a modifier that can be used with the primary policy:_CF_POPULATION_POLICY_PRIMARY. |
CF_POPULATION_POLICY_PRIMARY Allows a sync provider to control how placeholder directories and files should be created by the platform. This is the primary policy. |
CF_REGISTER_FLAGS Flags for registering and updating a sync root. |
CF_REVERT_FLAGS Flags for reverting a placeholder file to a regular file. |
CF_SET_IN_SYNC_FLAGS The in-sync state flags for placeholder files and folders. |
CF_SET_PIN_FLAGS The placeholder pin flags. |
CF_SYNC_PROVIDER_STATUS Current status of a sync provider. |
CF_SYNC_ROOT_INFO_CLASS Types of sync root information. |
CF_UPDATE_FLAGS Flags for updating a placeholder file or directory. |
Functions
CfCloseHandle Closes the file or directory handle returned by CfOpenFileWithOplock. This should not be used with standard Win32 file handles, only on handles used within CfApi.h. |
CfConnectSyncRoot Initiates bi-directional communication between a sync provider and the sync filter API. |
CfConvertToPlaceholder Converts a normal file/directory to a placeholder file/directory. |
CfCreatePlaceholders Creates one or more new placeholder files or directories under a sync root tree. |
CfDisconnectSyncRoot Disconnects a communication channel created by CfConnectSyncRoot. |
CfExecute The main entry point for all connection key based placeholder operations. It is intended to be used by a sync provider to respond to various callbacks from the platform. |
CfGetCorrelationVector Allows the sync provider to query the current correlation vector for a given placeholder file. |
CfGetPlaceholderInfo Gets various characteristics of a placeholder file or folder. |
CfGetPlaceholderRangeInfo Gets range information about a placeholder file or folder. |
CfGetPlaceholderRangeInfoForHydration Gets range information about a placeholder file or folder using ConnectionKey, TransferKey and FileId as identifiers. |
CfGetPlaceholderStateFromAttributeTag Gets a set of placeholder states based on the FileAttributes and ReparseTag values of the file. |
CfGetPlaceholderStateFromFileInfo Gets a set of placeholder states based on the various information of the file. |
CfGetPlaceholderStateFromFindData Gets a set of placeholder states based on the WIN32_FIND_DATA structure. |
CfGetPlatformInfo Gets the platform version information. |
CfGetSyncRootInfoByHandle Gets various characteristics of the sync root containing a given file specified by a file handle. |
CfGetSyncRootInfoByPath Gets various sync root information given a file under the sync root. |
CfGetTransferKey Initiates a transfer of data into a placeholder file or folder. |
CfGetWin32HandleFromProtectedHandle Converts a protected handle to a Win32 handle so that it can be used with all handle-based Win32 APIs. |
CfHydratePlaceholder Hydrates a placeholder file by ensuring that the specified byte range is present on-disk in the placeholder. This is valid for files only. |
CfOpenFileWithOplock Opens an asynchronous opaque handle to a file or directory (for both normal and placeholder files) and sets up a proper oplock on it based on the open flags. |
CfQuerySyncProviderStatus Queries a sync provider to get the status of the provider. |
CfReferenceProtectedHandle Allows the caller to reference a protected handle to a Win32 handle which can be used with non-CfApi Win32 APIs. |
CfRegisterSyncRoot Performs a one time sync root registration. |
CfReleaseProtectedHandle Releases a protected handle referenced by CfReferenceProtectedHandle. |
CfReleaseTransferKey Releases a transfer key obtained by CfGetTransferKey. |
CfReportProviderProgress Allows a sync provider to report progress out-of-band. |
CfReportProviderProgress2 Allows a sync provider to report progress out-of-band. Extends CfReportProviderProgress with additional parameters. |
CfReportSyncStatus Allows a sync provider to notify the platform of its status on a specified sync root without having to connect with a call to CfConnectSyncRoot first. |
CfRevertPlaceholder Reverts a placeholder back to a regular file, stripping away all special characteristics such as the reparse tag, the file identity, etc. |
CfSetCorrelationVector Allows a sync provider to instruct the platform to use a specific correlation vector for telemetry purposes on a placeholder file. This is optional. |
CfSetInSyncState Sets the in-sync state for a placeholder file or folder. |
CfSetPinState This sets the pin state of a placeholder, used to represent a user’s intent. Any application (not just the sync provider) can call this function. |
CfUnregisterSyncRoot Unregisters a previously registered sync root. |
CfUpdatePlaceholder Updates characteristics of the placeholder file or directory. |
CfUpdateSyncProviderStatus Updates the current status of the sync provider. |
Structures
CF_CALLBACK_INFO Contains common callback information. |
CF_CALLBACK_PARAMETERS Contains callback specific parameters such as file offset, length, flags, etc. |
CF_CALLBACK_REGISTRATION The callbacks to be registered by the sync provider. |
CF_FILE_RANGE Specifies a range of data in a placeholder file. |
CF_FS_METADATA Placeholder file or directory metadata. |
CF_HYDRATION_POLICY Specifies the primary hydration policy and its modifier. |
CF_OPERATION_INFO Information about an operation on a placeholder file or folder. |
CF_OPERATION_PARAMETERS Parameters of an operation on a placeholder file or folder. |
CF_PLACEHOLDER_BASIC_INFO Basic placeholder information. |
CF_PLACEHOLDER_CREATE_INFO Contains placeholder information for creating new placeholder files or directories. |
CF_PLACEHOLDER_STANDARD_INFO Standard placeholder information. |
CF_PLATFORM_INFO Returns information for the cloud files platform. This is intended for sync providers running on multiple versions of Windows. |
CF_POPULATION_POLICY Specifies the primary population policy and its modifier. |
CF_PROCESS_INFO Contains information about a user process. |
CF_SYNC_POLICIES Defines the sync policies used by a sync root. |
CF_SYNC_REGISTRATION The details of the sync provider and sync root to be registered. |
CF_SYNC_ROOT_BASIC_INFO Basic sync root information. |
CF_SYNC_ROOT_PROVIDER_INFO Sync root provider information. |
CF_SYNC_ROOT_STANDARD_INFO Standard sync root information. |
CF_SYNC_STATUS Used in a CF_OPERATION_INFO structure to describe the status of a specified sync root. |