A.3.3  Storing Miniclass Context in Optional Extensions

A tape miniclass driver can use two optional extensions to store context:

1.A driver-specific minitape extension

When used, this extension typically stores SCSI inquiry data for devices. A driver that supports several devices can store details about each device, rather than repeatedly querying the devices.

A miniclass driver specifies the size of the minitape extension in the TAPE_INIT_DATA structure in its DriverEntry routine. The tape class driver allocates the requested storage on behalf of the miniclass driver. The miniclass driver initializes the optional extension with a TapeMiniExtensionInit routine.

2.A command-specific command extension

When used, this extension stores command-specific context.

A miniclass driver specifies the size of the command extension in TAPE_INIT_DATA in its DriverEntry routine. The tape class driver allocates the requested storage each time it sends a command to the miniclass driver. The miniclass driver initializes the command extension on the first call to process a given command; that is, when the CallNumber parameter to the TapeMiniProcessCommand routine equals zero.