The constructor will allocate sense, dataout, and datain buffers as necessary
Execute the SCSI command on the device (using device.sgio_execute), then unmarshalls the datain buffer with a call to unmarshall().
Allocate the CDB and set the opcode field. Opcode is used to determine cdb length.
Abstract method used to unmarshall the datain buffer.
Get a reference ot the CDB
Get a reference to the datain buffer (possibly null)
Get a reference to the dataout buffer (possibly null)
Get the SCSIDevice
Get a reference to the sense buffer
SCSICommand encapsulates generic functinality that is needed for each SCSI command that can be sent to a device. All new commands must implement this abstract class, ensure to call init_cdb, and override the unmarshall function.