Struct de-class

This commit is contained in:
2015-10-06 18:29:15 +01:00
parent 4aef27f3d3
commit c083f45ece
3 changed files with 31 additions and 28 deletions

View File

@@ -3,34 +3,31 @@ using System.Runtime.InteropServices;
namespace DiscImageChef.Devices.Windows
{
static class Structs
[StructLayout(LayoutKind.Sequential)]
struct ScsiPassThroughDirect
{
[StructLayout(LayoutKind.Sequential)]
internal struct SCSI_PASS_THROUGH_DIRECT
{
public ushort Length;
public byte ScsiStatus;
public byte PathId;
public byte TargetId;
public byte Lun;
public byte CdbLength;
public byte SenseInfoLength;
[MarshalAs(UnmanagedType.U1)]
public ScsiIoctlDirection DataIn;
public uint DataTransferLength;
public uint TimeOutValue;
public IntPtr DataBuffer;
public uint SenseInfoOffset;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)]
public byte[] Cdb;
};
public ushort Length;
public byte ScsiStatus;
public byte PathId;
public byte TargetId;
public byte Lun;
public byte CdbLength;
public byte SenseInfoLength;
[MarshalAs(UnmanagedType.U1)]
public ScsiIoctlDirection DataIn;
public uint DataTransferLength;
public uint TimeOutValue;
public IntPtr DataBuffer;
public uint SenseInfoOffset;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)]
public byte[] Cdb;
};
[StructLayout(LayoutKind.Sequential)]
internal struct SCSI_PASS_THROUGH_DIRECT_AND_SENSE_BUFFER {
public SCSI_PASS_THROUGH_DIRECT sptd;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public byte[] SenseBuf;
}
[StructLayout(LayoutKind.Sequential)]
struct ScsiPassThroughDirectAndSenseBuffer {
public ScsiPassThroughDirect sptd;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public byte[] SenseBuf;
}
}