TAPE_GET_DRIVE_PARAMETERS structure (winnt.h)
The
TAPE_GET_DRIVE_PARAMETERS structure describes the tape drive. It is used by the GetTapeParameters function.
Syntax
typedef struct _TAPE_GET_DRIVE_PARAMETERS {
BOOLEAN ECC;
BOOLEAN Compression;
BOOLEAN DataPadding;
BOOLEAN ReportSetmarks;
DWORD DefaultBlockSize;
DWORD MaximumBlockSize;
DWORD MinimumBlockSize;
DWORD MaximumPartitionCount;
DWORD FeaturesLow;
DWORD FeaturesHigh;
DWORD EOTWarningZoneSize;
} TAPE_GET_DRIVE_PARAMETERS, *PTAPE_GET_DRIVE_PARAMETERS;
Members
ECC
If this member is TRUE, the device supports hardware error correction. Otherwise, it does not.
Compression
If this member is TRUE, hardware data compression is enabled. Otherwise, it is disabled.
DataPadding
If this member is TRUE, data padding is enabled. Otherwise, it is disabled. Data padding keeps the tape streaming at a constant speed.
ReportSetmarks
If this member is TRUE, setmark reporting is enabled. Otherwise, it is disabled.
DefaultBlockSize
Device's default fixed block size, in bytes.
MaximumBlockSize
Device's maximum block size, in bytes.
MinimumBlockSize
Device's minimum block size, in bytes.
MaximumPartitionCount
Maximum number of partitions that can be created on the device.
FeaturesLow
Low-order bits of the device features flag. This member can be one or more of following values.
Value |
Meaning |
- TAPE_DRIVE_COMPRESSION
- 0x00020000
|
The device supports hardware data compression.
|
- TAPE_DRIVE_CLEAN_REQUESTS
- 0x02000000
|
The device can report if cleaning is required.
|
- TAPE_DRIVE_ECC
- 0x00010000
|
The device supports hardware error correction.
|
- TAPE_DRIVE_EJECT_MEDIA
- 0x01000000
|
The device physically ejects the tape on a software eject.
|
- TAPE_DRIVE_ERASE_BOP_ONLY
- 0x00000040
|
The device performs the erase operation from the beginning-of-partition marker only.
|
- TAPE_DRIVE_ERASE_LONG
- 0x00000020
|
The device performs a long erase operation.
|
- TAPE_DRIVE_ERASE_IMMEDIATE
- 0x00000080
|
The device performs an immediate erase operation — that is, it returns when the erase operation begins.
|
- TAPE_DRIVE_ERASE_SHORT
- 0x00000010
|
The device performs a short erase operation.
|
- TAPE_DRIVE_FIXED
- 0x00000001
|
The device creates fixed data partitions.
|
- TAPE_DRIVE_FIXED_BLOCK
- 0x00000400
|
The device supports fixed-length block mode.
|
- TAPE_DRIVE_GET_ABSOLUTE_BLK
- 0x00100000
|
The device provides the current device-specific block address.
|
- TAPE_DRIVE_GET_LOGICAL_BLK
- 0x00200000
|
The device provides the current logical block address (and logical tape partition).
|
- TAPE_DRIVE_INITIATOR
- 0x00000004
|
The device creates initiator-defined partitions.
|
- TAPE_DRIVE_PADDING
- 0x00040000
|
The device supports data padding.
|
- TAPE_DRIVE_REPORT_SMKS
- 0x00080000
|
The device supports setmark reporting.
|
- TAPE_DRIVE_SELECT
- 0x00000002
|
The device creates select data partitions.
|
- TAPE_DRIVE_SET_CMP_BOP_ONLY
- 0x04000000
|
The device must be at the beginning of a partition before it can set compression on.
|
- TAPE_DRIVE_SET_EOT_WZ_SIZE
- 0x00400000
|
The device supports setting the end-of-medium warning size.
|
- TAPE_DRIVE_TAPE_CAPACITY
- 0x00000100
|
The device returns the maximum capacity of the tape.
|
- TAPE_DRIVE_TAPE_REMAINING
- 0x00000200
|
The device returns the remaining capacity of the tape.
|
- TAPE_DRIVE_VARIABLE_BLOCK
- 0x00000800
|
The device supports variable-length block mode.
|
- TAPE_DRIVE_WRITE_PROTECT
- 0x00001000
|
The device returns an error if the tape is write-enabled or write-protected.
|
FeaturesHigh
High-order bits of the device features flag. This member can be one or more of the following values.
Value |
Meaning |
- TAPE_DRIVE_ABS_BLK_IMMED
- 0x80002000
|
The device moves the tape to a device-specific block address and returns as soon as the move begins.
|
- TAPE_DRIVE_ABSOLUTE_BLK
- 0x80001000
|
The device moves the tape to a device specific block address.
|
- TAPE_DRIVE_END_OF_DATA
- 0x80010000
|
The device moves the tape to the end-of-data marker in a partition.
|
- TAPE_DRIVE_FILEMARKS
- 0x80040000
|
The device moves the tape forward (or backward) a specified number of filemarks.
|
- TAPE_DRIVE_LOAD_UNLOAD
- 0x80000001
|
The device enables and disables the device for further operations.
|
- TAPE_DRIVE_LOAD_UNLD_IMMED
- 0x80000020
|
The device supports immediate load and unload operations.
|
- TAPE_DRIVE_LOCK_UNLOCK
- 0x80000004
|
The device enables and disables the tape ejection mechanism.
|
- TAPE_DRIVE_LOCK_UNLK_IMMED
- 0x80000080
|
The device supports immediate lock and unlock operations.
|
- TAPE_DRIVE_LOG_BLK_IMMED
- 0x80008000
|
The device moves the tape to a logical block address in a partition and returns as soon as the move begins.
|
- TAPE_DRIVE_LOGICAL_BLK
- 0x80004000
|
The device moves the tape to a logical block address in a partition.
|
- TAPE_DRIVE_RELATIVE_BLKS
- 0x80020000
|
The device moves the tape forward (or backward) a specified number of blocks.
|
- TAPE_DRIVE_REVERSE_POSITION
- 0x80400000
|
The device moves the tape backward over blocks, filemarks, or setmarks.
|
- TAPE_DRIVE_REWIND_IMMEDIATE
- 0x80000008
|
The device supports immediate rewind operation.
|
- TAPE_DRIVE_SEQUENTIAL_FMKS
- 0x80080000
|
The device moves the tape forward (or backward) to the first occurrence of a specified number of consecutive filemarks.
|
- TAPE_DRIVE_SEQUENTIAL_SMKS
- 0x80200000
|
The device moves the tape forward (or backward) to the first occurrence of a specified number of consecutive setmarks.
|
- TAPE_DRIVE_SET_BLOCK_SIZE
- 0x80000010
|
The device supports setting the size of a fixed-length logical block or setting the variable-length block mode.
|
- TAPE_DRIVE_SET_COMPRESSION
- 0x80000200
|
The device enables and disables hardware data compression.
|
- TAPE_DRIVE_SET_ECC
- 0x80000100
|
The device enables and disables hardware error correction.
|
- TAPE_DRIVE_SET_PADDING
- 0x80000400
|
The device enables and disables data padding.
|
- TAPE_DRIVE_SET_REPORT_SMKS
- 0x80000800
|
The device enables and disables the reporting of setmarks.
|
- TAPE_DRIVE_SETMARKS
- 0x80100000
|
The device moves the tape forward (or reverse) a specified number of setmarks.
|
- TAPE_DRIVE_SPACE_IMMEDIATE
- 0x80800000
|
The device supports immediate spacing.
|
- TAPE_DRIVE_TENSION
- 0x80000002
|
The device supports tape tensioning.
|
- TAPE_DRIVE_TENSION_IMMED
- 0x80000040
|
The device supports immediate tape tensioning.
|
- TAPE_DRIVE_WRITE_FILEMARKS
- 0x82000000
|
The device writes filemarks.
|
- TAPE_DRIVE_WRITE_LONG_FMKS
- 0x88000000
|
The device writes long filemarks.
|
- TAPE_DRIVE_WRITE_MARK_IMMED
- 0x90000000
|
The device supports immediate writing of short and long filemarks.
|
- TAPE_DRIVE_WRITE_SETMARKS
- 0x81000000
|
The device writes setmarks.
|
- TAPE_DRIVE_WRITE_SHORT_FMKS
- 0x84000000
|
The device writes short filemarks.
|
EOTWarningZoneSize
Indicates the number of bytes between the end-of-tape warning and the physical end of the tape.
Requirements
Requirement |
Value |
Minimum supported client |
Windows XP [desktop apps only] |
Minimum supported server |
Windows Server 2003 [desktop apps only] |
Header |
winnt.h (include Windows.h) |
See also
GetTapeParameters