RASCSI/src_old/raspberrypi/devices/interfaces/scsi_block_commands.h

34 lines
846 B
C++

//---------------------------------------------------------------------------
//
// SCSI Target Emulator RaSCSI (*^..^*)
// for Raspberry Pi
//
// Copyright (C) 2021 Uwe Seimet
//
// Interface for SCSI block commands (see https://www.t10.org/drafts.htm, SBC-5)
//
//---------------------------------------------------------------------------
#pragma once
#include "scsi_primary_commands.h"
class SASIDEV;
class ScsiBlockCommands : virtual public ScsiPrimaryCommands
{
public:
ScsiBlockCommands() {}
virtual ~ScsiBlockCommands() {}
// Mandatory commands
virtual void FormatUnit(SASIDEV *) = 0;
virtual void ReadCapacity10(SASIDEV *) = 0;
virtual void ReadCapacity16(SASIDEV *) = 0;
virtual void Read10(SASIDEV *) = 0;
virtual void Read16(SASIDEV *) = 0;
virtual void Write10(SASIDEV *) = 0;
virtual void Write16(SASIDEV *) = 0;
};