// ntddstor.h
typedef struct _DEVICE_COPY_OFFLOAD_DESCRIPTOR {
ULONG Version;
ULONG Size;
ULONG MaximumTokenLifetime;
ULONG DefaultTokenLifetime;
ULONGLONG MaximumTransferSize;
ULONGLONG OptimalTransferCount;
ULONG MaximumDataDescriptors;
ULONG MaximumTransferLengthPerDescriptor;
ULONG OptimalTransferLengthPerDescriptor;
USHORT OptimalTransferLengthGranularity;
UCHAR Reserved[2];
} DEVICE_COPY_OFFLOAD_DESCRIPTOR, *PDEVICE_COPY_OFFLOAD_DESCRIPTOR;
View the official Windows Driver Kit DDI reference// winioctl.h
typedef struct _DEVICE_COPY_OFFLOAD_DESCRIPTOR {
DWORD Version;
DWORD Size;
DWORD MaximumTokenLifetime;
DWORD DefaultTokenLifetime;
DWORDLONG MaximumTransferSize;
DWORDLONG OptimalTransferCount;
DWORD MaximumDataDescriptors;
DWORD MaximumTransferLengthPerDescriptor;
DWORD OptimalTransferLengthPerDescriptor;
WORD OptimalTransferLengthGranularity;
BYTE Reserved[2];
} DEVICE_COPY_OFFLOAD_DESCRIPTOR, *PDEVICE_COPY_OFFLOAD_DESCRIPTOR;
View the official Win32 API referenceNo description available.
Used in conjunction with the IOCTL_STORAGE_QUERY_PROPERTY request to describe the copy offload capabilities of a storage device.
VersionContains the size of this structure, in bytes. The value of this member will change as members are added to the structure.
SizeSpecifies the total size of the data returned, in bytes. This may include data that follows this structure.
MaximumTokenLifetimeThe maximum lifetime of the token, in seconds.
DefaultTokenLifetimeThe default lifetime of the token, in seconds.
MaximumTransferSizeThe maximum transfer size, in bytes.
OptimalTransferCountThe optimal transfer size, in bytes.
MaximumDataDescriptorsThe maximum number of data descriptors.
MaximumTransferLengthPerDescriptorThe maximum transfer length, in blocks, per descriptor.
OptimalTransferLengthPerDescriptorThe optimal transfer length, in blocks, per descriptor.
OptimalTransferLengthGranularityThe granularity of the optimal transfer length, in blocks. Transfer lengths that are not an even multiple of this length may be delayed.
ReservedReserved for future use.
The DEVICE_COPY_OFFLOAD_DESCRIPTOR structure is one of the query result structures returned from an IOCTL_STORAGE_QUERY_PROPERTY request. This structure contains the copy offload capabilities for a storage device.
VersionContains the size of this structure, in bytes. The value of this member will change as members are added to the structure.
SizeSpecifies the total size of the data returned, in bytes. This may include data that follows this structure.
MaximumTokenLifetimeThe maximum lifetime of the token, in seconds.
DefaultTokenLifetimeThe default lifetime of the token, in seconds.
MaximumTransferSizeThe maximum transfer size, in bytes.
OptimalTransferCountThe optimal transfer size, in bytes.
MaximumDataDescriptorsThe maximum number of data descriptors.
MaximumTransferLengthPerDescriptorThe maximum transfer length, in blocks, per descriptor.
OptimalTransferLengthPerDescriptorThe optimal transfer length per descriptor.
OptimalTransferLengthGranularityThe granularity of the optimal transfer length, in blocks. Transfer lengths that are not an even multiple of this length may be delayed.
ReservedReserved.
This structure is returned from a IOCTL_STORAGE_QUERY_PROPERTY request when the PropertyId member of STORAGE_PROPERTY_QUERY is set to StorageDeviceCopyOffloadProperty.