cfapi.h header

This header is used by Cloud Filter API. For more information, see:

cfapi.h contains the following programming interfaces:

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.

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.