mirror of https://github.com/akuker/RASCSI.git
34 lines
846 B
C++
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;
|
|
};
|