// minitape.h
typedef enum _TAPE_STATUS {
TAPE_STATUS_SEND_SRB_AND_CALLBACK,
TAPE_STATUS_CALLBACK,
TAPE_STATUS_CHECK_TEST_UNIT_READY,
TAPE_STATUS_SUCCESS,
TAPE_STATUS_INSUFFICIENT_RESOURCES,
TAPE_STATUS_NOT_IMPLEMENTED,
TAPE_STATUS_INVALID_DEVICE_REQUEST,
TAPE_STATUS_INVALID_PARAMETER,
TAPE_STATUS_MEDIA_CHANGED,
TAPE_STATUS_BUS_RESET,
TAPE_STATUS_SETMARK_DETECTED,
TAPE_STATUS_FILEMARK_DETECTED,
TAPE_STATUS_BEGINNING_OF_MEDIA,
TAPE_STATUS_END_OF_MEDIA,
TAPE_STATUS_BUFFER_OVERFLOW,
TAPE_STATUS_NO_DATA_DETECTED,
TAPE_STATUS_EOM_OVERFLOW,
TAPE_STATUS_NO_MEDIA,
TAPE_STATUS_IO_DEVICE_ERROR,
TAPE_STATUS_UNRECOGNIZED_MEDIA,
TAPE_STATUS_DEVICE_NOT_READY,
TAPE_STATUS_MEDIA_WRITE_PROTECTED,
TAPE_STATUS_DEVICE_DATA_ERROR,
TAPE_STATUS_NO_SUCH_DEVICE,
TAPE_STATUS_INVALID_BLOCK_LENGTH,
TAPE_STATUS_IO_TIMEOUT,
TAPE_STATUS_DEVICE_NOT_CONNECTED,
TAPE_STATUS_DATA_OVERRUN,
TAPE_STATUS_DEVICE_BUSY,
TAPE_STATUS_REQUIRES_CLEANING,
TAPE_STATUS_CLEANER_CARTRIDGE_INSTALLED
} TAPE_STATUS, *PTAPE_STATUS;
View the official Windows Driver Kit DDI referenceNo description available.
The TAPE_STATUS enumeration provides a list of the status codes that the tape class driver uses to report the status of a tape device.
TAPE_STATUS_SEND_SRB_AND_CALLBACKDirects the tape class driver to send the SRB to the device. A tape miniclass routine usually returns this status after filling in the SRB passed by the tape class driver. If the operation is successful, the class driver increments a counter called a "call number" and calls the miniclass routine again. If the SRB fails, the class driver might call the miniclass routine again. For more information about how and when tape miniclass drivers should report this status value, see Processing Tape Device Control Requests.
TAPE_STATUS_CALLBACKDirects the tape class driver to increment the call number counter without sending an SRB to the device. For more information about how tape miniclass drivers should make use of this status value, see Processing Tape Device Control Requests.
TAPE_STATUS_CHECK_TEST_UNIT_READYDirects the tape class driver to create an SRB for the TEST UNIT READY command and to send the SRB to the device.
TAPE_STATUS_SUCCESSIndicates that the operation was successful.
TAPE_STATUS_INSUFFICIENT_RESOURCESIndicates that there were not enough resources available to the miniclass driver for it to complete the operation.
TAPE_STATUS_NOT_IMPLEMENTEDIndicates that the requested operation is not supported.
TAPE_STATUS_INVALID_DEVICE_REQUESTIndicates that the requested operation is invalid.
TAPE_STATUS_INVALID_PARAMETERIndicates that one or more of the parameter values provided with the request are invalid.
TAPE_STATUS_MEDIA_CHANGEDIndicates that the media in the drive might have changed.
TAPE_STATUS_BUS_RESETIndicates that the bus has been reset.
TAPE_STATUS_SETMARK_DETECTEDIndicates that a setmark was encountered during a tape operation.
TAPE_STATUS_FILEMARK_DETECTEDIndicates that a filemark was encountered during a tape operation.
TAPE_STATUS_BEGINNING_OF_MEDIAIndicates that the beginning of the media was encountered during a tape operation.
TAPE_STATUS_END_OF_MEDIAIndicates that the end of the media was encountered during a tape operation.
TAPE_STATUS_BUFFER_OVERFLOWIndicates that a buffer overflow occurred.
TAPE_STATUS_NO_DATA_DETECTEDIndicates that no data was detected.
TAPE_STATUS_EOM_OVERFLOWIndicates that an attempt was made to exceed the physical end of the media during a tape operation.
TAPE_STATUS_NO_MEDIAIndicates that the tape operation failed, because there is no media in the drive.
TAPE_STATUS_IO_DEVICE_ERRORIndicates that an I/O error occurred during a tape operation.
TAPE_STATUS_UNRECOGNIZED_MEDIAIndicates that the type of the media is not supported.
TAPE_STATUS_DEVICE_NOT_READYIndicates that the device is not ready.
TAPE_STATUS_MEDIA_WRITE_PROTECTEDIndicates that the media is write protected.
TAPE_STATUS_DEVICE_DATA_ERRORIndicates that a cyclic redundancy check (CRC) error occurred.
TAPE_STATUS_NO_SUCH_DEVICEIndicates that no such device exists.
TAPE_STATUS_INVALID_BLOCK_LENGTHIndicates that the block length is invalid.
TAPE_STATUS_IO_TIMEOUTIndicates that the I/O operation timed out.
TAPE_STATUS_DEVICE_NOT_CONNECTEDIndicates that the device is disconnected.
TAPE_STATUS_DATA_OVERRUNIndicates that the tape operation could not be performed because of a data overrun.
TAPE_STATUS_DEVICE_BUSYIndicates that the tape operation could not be performed, because the device is busy.
TAPE_STATUS_REQUIRES_CLEANINGIndicates that the tape operation could not be performed because the device requires cleaning.
TAPE_STATUS_CLEANER_CARTRIDGE_INSTALLEDIndicates that the media currently in the drive is a cleaner cartridge.