public SCSICommandDescriptorBlock10(SCSIOpCodeName opCode) : base() { this.OpCode = opCode; }
public static SCSICommandDescriptorBlock Create(SCSIOpCodeName opCode) { switch (opCode) { case SCSIOpCodeName.TestUnitReady: return(new SCSICommandDescriptorBlock6(opCode)); case SCSIOpCodeName.RequestSense: return(new SCSICommandDescriptorBlock6(opCode)); case SCSIOpCodeName.Read6: return(new SCSICommandDescriptorBlock6(opCode)); case SCSIOpCodeName.Write6: return(new SCSICommandDescriptorBlock6(opCode)); case SCSIOpCodeName.Inquiry: return(new InquiryCommand()); case SCSIOpCodeName.Reserve6: return(new SCSICommandDescriptorBlock6(opCode)); case SCSIOpCodeName.Release6: return(new SCSICommandDescriptorBlock6(opCode)); case SCSIOpCodeName.ModeSense6: return(new ModeSense6CommandDescriptorBlock()); case SCSIOpCodeName.ReadCapacity10: return(new SCSICommandDescriptorBlock10(opCode)); case SCSIOpCodeName.Read10: return(new SCSICommandDescriptorBlock10(opCode)); case SCSIOpCodeName.Write10: return(new SCSICommandDescriptorBlock10(opCode)); case SCSIOpCodeName.Verify10: return(new SCSICommandDescriptorBlock10(opCode)); case SCSIOpCodeName.SynchronizeCache10: return(new SCSICommandDescriptorBlock10(opCode)); case SCSIOpCodeName.WriteSame10: return(new SCSICommandDescriptorBlock10(opCode)); case SCSIOpCodeName.Read16: return(new SCSICommandDescriptorBlock16(opCode)); case SCSIOpCodeName.Write16: return(new SCSICommandDescriptorBlock16(opCode)); case SCSIOpCodeName.Verify16: return(new SCSICommandDescriptorBlock16(opCode)); case SCSIOpCodeName.WriteSame16: return(new SCSICommandDescriptorBlock16(opCode)); case SCSIOpCodeName.ServiceActionIn: return(new SCSICommandDescriptorBlock16(opCode)); case SCSIOpCodeName.ReportLUNs: return(new SCSICommandDescriptorBlock12(opCode)); default: throw new NotImplementedException("SCSI opcode not implemented"); } }