mirror of
https://github.com/aaru-dps/Aaru.Server.git
synced 2025-12-16 19:24:27 +00:00
REFACTOR: Final cleanup of DiscImageChef.Devices.
This commit is contained in:
@@ -39,7 +39,7 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets the underlying drive cylinder, head and index bytes for the specified SCSI LBA.
|
||||
/// Gets the underlying drive cylinder, head and index bytes for the specified SCSI LBA.
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -53,7 +53,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the underlying drive cylinder, head and index bytes for the specified SCSI LBA.
|
||||
/// Gets the underlying drive cylinder, head and index bytes for the specified SCSI LBA.
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -84,7 +84,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the error threshold
|
||||
/// Sets the error threshold
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if set error threshold was adapteced, <c>false</c> otherwise.</returns>
|
||||
/// <param name="threshold">Threshold. 0 to disable error reporting.</param>
|
||||
@@ -97,7 +97,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the error threshold
|
||||
/// Sets the error threshold
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if set error threshold was adapteced, <c>false</c> otherwise.</returns>
|
||||
/// <param name="threshold">Threshold. 0 to disable error reporting.</param>
|
||||
@@ -127,7 +127,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Requests the usage, seek and error counters, and resets them
|
||||
/// Requests the usage, seek and error counters, and resets them
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -140,7 +140,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Requests the usage, seek and error counters, and resets them
|
||||
/// Requests the usage, seek and error counters, and resets them
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -168,7 +168,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Fills the Adaptec controller RAM with 1K bytes of data
|
||||
/// Fills the Adaptec controller RAM with 1K bytes of data
|
||||
/// </summary>
|
||||
/// <param name="buffer">Data to fill the buffer with.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -194,7 +194,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads 1K bytes of data from the Adaptec controller RAM
|
||||
/// Reads 1K bytes of data from the Adaptec controller RAM
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
|
||||
@@ -37,7 +37,7 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets the underlying drive cylinder, head and index bytes for the specified SCSI LBA.
|
||||
/// Gets the underlying drive cylinder, head and index bytes for the specified SCSI LBA.
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -67,7 +67,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the underlying drive cylinder, head and index bytes for the specified SCSI LBA.
|
||||
/// Gets the underlying drive cylinder, head and index bytes for the specified SCSI LBA.
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="lba">Logical Block Address, starting from 1.</param>
|
||||
@@ -79,7 +79,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the tape at the specified block address
|
||||
/// Positions the tape at the specified block address
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="immediate">If set to <c>true</c>, return from the command immediately.</param>
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Parks the load arm in preparation for transport
|
||||
/// Parks the load arm in preparation for transport
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
@@ -50,7 +50,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Unparks the load arm prior to operation
|
||||
/// Unparks the load arm prior to operation
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
@@ -61,7 +61,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Parks the load arm in preparation for transport or unparks it prior to operation
|
||||
/// Parks the load arm in preparation for transport or unparks it prior to operation
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="park">If set to <c>true</c>, parks the load arm</param>
|
||||
|
||||
@@ -62,11 +62,9 @@ namespace DiscImageChef.Devices
|
||||
|
||||
if(mode != FujitsuDisplayModes.Half)
|
||||
if(!ArrayHelpers.ArrayIsNullOrWhiteSpace(firstHalfBytes) &&
|
||||
!ArrayHelpers.ArrayIsNullOrWhiteSpace(secondHalfBytes))
|
||||
displayLen = true;
|
||||
!ArrayHelpers.ArrayIsNullOrWhiteSpace(secondHalfBytes)) displayLen = true;
|
||||
else if(!ArrayHelpers.ArrayIsNullOrWhiteSpace(firstHalfBytes) &&
|
||||
ArrayHelpers.ArrayIsNullOrWhiteSpace(secondHalfBytes))
|
||||
halfMsg = true;
|
||||
ArrayHelpers.ArrayIsNullOrWhiteSpace(secondHalfBytes)) halfMsg = true;
|
||||
|
||||
buffer[0] = (byte)((byte)mode << 5);
|
||||
if(displayLen) buffer[0] += 0x10;
|
||||
|
||||
@@ -37,9 +37,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Reads a "raw" sector from DVD on HL-DT-ST drives.
|
||||
/// Reads a "raw" sector from DVD on HL-DT-ST drives.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the HL-DT-ST READ DVD (RAW) response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
|
||||
@@ -37,9 +37,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Sends the HP READ LONG vendor command
|
||||
/// Sends the HP READ LONG vendor command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ LONG response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="relAddr">If set to <c>true</c> address contain two's complement offset from last read address.</param>
|
||||
@@ -56,9 +56,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the HP READ LONG vendor command
|
||||
/// Sends the HP READ LONG vendor command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ LONG response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="relAddr">If set to <c>true</c> address contain two's complement offset from last read address.</param>
|
||||
@@ -66,7 +66,10 @@ namespace DiscImageChef.Devices
|
||||
/// <param name="transferLen">How many blocks/bytes to read.</param>
|
||||
/// <param name="blockBytes">How many bytes per block.</param>
|
||||
/// <param name="pba">If set to <c>true</c> address contain physical block address.</param>
|
||||
/// <param name="sectorCount">If set to <c>true</c> <paramref name="transferLen"/> is a count of secors to read. Otherwise it will be ignored</param>
|
||||
/// <param name="sectorCount">
|
||||
/// If set to <c>true</c> <paramref name="transferLen" /> is a count of secors to read. Otherwise
|
||||
/// it will be ignored
|
||||
/// </param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
public bool HpReadLong(out byte[] buffer, out byte[] senseBuffer, bool relAddr, uint address,
|
||||
|
||||
@@ -38,9 +38,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Sets the drive to the xtreme unlocked state
|
||||
/// Sets the drive to the xtreme unlocked state
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -65,9 +65,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the drive to the locked state.
|
||||
/// Sets the drive to the locked state.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -77,9 +77,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the drive to the xtreme unlocked state
|
||||
/// Sets the drive to the xtreme unlocked state
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -89,9 +89,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the drive to the wxripper unlocked state
|
||||
/// Sets the drive to the wxripper unlocked state
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -101,9 +101,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the drive to the specified lock state
|
||||
/// Sets the drive to the specified lock state
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -130,9 +130,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets a list of supported features
|
||||
/// Gets a list of supported features
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -205,9 +205,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the SS sector.
|
||||
/// Gets the SS sector.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
|
||||
@@ -38,9 +38,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Sends the MMC GET CONFIGURATION command for all Features
|
||||
/// Sends the MMC GET CONFIGURATION command for all Features
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI GET CONFIGURATION response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -52,9 +52,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC GET CONFIGURATION command for all Features starting with specified one
|
||||
/// Sends the MMC GET CONFIGURATION command for all Features starting with specified one
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI GET CONFIGURATION response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="startingFeatureNumber">Feature number where the feature list should start from</param>
|
||||
@@ -68,15 +68,15 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC GET CONFIGURATION command
|
||||
/// Sends the MMC GET CONFIGURATION command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI GET CONFIGURATION response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
/// <param name="startingFeatureNumber">Starting Feature number.</param>
|
||||
/// <param name="rt">Return type, <see cref="MmcGetConfigurationRt"/>.</param>
|
||||
/// <param name="rt">Return type, <see cref="MmcGetConfigurationRt" />.</param>
|
||||
public bool GetConfiguration(out byte[] buffer, out byte[] senseBuffer, ushort startingFeatureNumber,
|
||||
MmcGetConfigurationRt rt, uint timeout, out double duration)
|
||||
{
|
||||
@@ -114,9 +114,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ DISC STRUCTURE command
|
||||
/// Sends the MMC READ DISC STRUCTURE command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ DISC STRUCTURE response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="mediaType">Medium type for requested disc structure</param>
|
||||
@@ -168,9 +168,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get formatted TOC from disc, in MM:SS:FF format
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get formatted TOC from disc, in MM:SS:FF format
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ TOC/PMA/ATIP response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="track">Start TOC from this track</param>
|
||||
@@ -182,9 +182,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get formatted TOC from disc
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get formatted TOC from disc
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ TOC/PMA/ATIP response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="msf">If <c>true</c>, request data in MM:SS:FF units, otherwise, in blocks</param>
|
||||
@@ -198,9 +198,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get multi-session information, in MM:SS:FF format
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get multi-session information, in MM:SS:FF format
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ TOC/PMA/ATIP response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -211,9 +211,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get multi-session information
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get multi-session information
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ TOC/PMA/ATIP response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="msf">If <c>true</c>, request data in MM:SS:FF units, otherwise, in blocks</param>
|
||||
@@ -226,9 +226,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get raw TOC subchannels
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get raw TOC subchannels
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ TOC/PMA/ATIP response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="sessionNumber">Session which TOC to get</param>
|
||||
@@ -241,9 +241,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get PMA
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get PMA
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ TOC/PMA/ATIP response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -254,9 +254,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get ATIP
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get ATIP
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ TOC/PMA/ATIP response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -267,9 +267,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get Lead-In CD-TEXT
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command to get Lead-In CD-TEXT
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ TOC/PMA/ATIP response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -280,9 +280,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command
|
||||
/// Sends the MMC READ TOC/PMA/ATIP command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ TOC/PMA/ATIP response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="msf">If <c>true</c>, request data in MM:SS:FF units, otherwise, in blocks</param>
|
||||
@@ -331,9 +331,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ DISC INFORMATION command
|
||||
/// Sends the MMC READ DISC INFORMATION command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ DISC INFORMATION response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -345,9 +345,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ DISC INFORMATION command
|
||||
/// Sends the MMC READ DISC INFORMATION command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ DISC INFORMATION response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="dataType">Which disc information to read</param>
|
||||
@@ -379,9 +379,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ CD command
|
||||
/// Sends the MMC READ CD command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the MMC READ CD response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -436,9 +436,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the MMC READ CD MSF command
|
||||
/// Sends the MMC READ CD MSF command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the MMC READ CD MSF response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
|
||||
@@ -37,9 +37,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Sends the NEC READ CD-DA command
|
||||
/// Sends the NEC READ CD-DA command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the NEC READ CD-DA response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
|
||||
@@ -37,9 +37,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Sends the Pioneer READ CD-DA command
|
||||
/// Sends the Pioneer READ CD-DA command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the Pioneer READ CD-DA response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -77,9 +77,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the Pioneer READ CD-DA MSF command
|
||||
/// Sends the Pioneer READ CD-DA MSF command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the Pioneer READ CD-DA MSF response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -116,14 +116,17 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the Pioneer READ CD-XA command
|
||||
/// Sends the Pioneer READ CD-XA command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the Pioneer READ CD-XA response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
/// <param name="errorFlags">If set to <c>true</c>, returns all sector data with 294 bytes of error flags. Superseedes <paramref name="wholeSector"/></param>
|
||||
/// <param name="errorFlags">
|
||||
/// If set to <c>true</c>, returns all sector data with 294 bytes of error flags. Superseedes
|
||||
/// <paramref name="wholeSector" />
|
||||
/// </param>
|
||||
/// <param name="wholeSector">If set to <c>true</c>, returns all 2352 bytes of sector data.</param>
|
||||
/// <param name="lba">Start block address.</param>
|
||||
/// <param name="transferLength">How many blocks to read.</param>
|
||||
|
||||
@@ -37,9 +37,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Sends the Plasmon READ LONG vendor command
|
||||
/// Sends the Plasmon READ LONG vendor command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the Plasmon READ LONG response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="relAddr">If set to <c>true</c> address contain two's complement offset from last read address.</param>
|
||||
@@ -56,9 +56,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the Plasmon READ LONG vendor command
|
||||
/// Sends the Plasmon READ LONG vendor command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the Plasmon READ LONG response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="relAddr">If set to <c>true</c> address contain two's complement offset from last read address.</param>
|
||||
@@ -66,7 +66,10 @@ namespace DiscImageChef.Devices
|
||||
/// <param name="transferLen">How many blocks/bytes to read.</param>
|
||||
/// <param name="blockBytes">How many bytes per block.</param>
|
||||
/// <param name="pba">If set to <c>true</c> address contain physical block address.</param>
|
||||
/// <param name="sectorCount">If set to <c>true</c> <paramref name="transferLen"/> is a count of secors to read. Otherwise it will be ignored</param>
|
||||
/// <param name="sectorCount">
|
||||
/// If set to <c>true</c> <paramref name="transferLen" /> is a count of secors to read. Otherwise
|
||||
/// it will be ignored
|
||||
/// </param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
public bool PlasmonReadLong(out byte[] buffer, out byte[] senseBuffer, bool relAddr, uint address,
|
||||
@@ -78,9 +81,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Retrieves the logical or physical block address for the specified <paramref name="address"/>
|
||||
/// Retrieves the logical or physical block address for the specified <paramref name="address" />
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the block address will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="address">PBA/LBA to read.</param>
|
||||
|
||||
@@ -38,9 +38,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Sends the Plextor READ CD-DA command
|
||||
/// Sends the Plextor READ CD-DA command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the Plextor READ CD-DA response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -79,9 +79,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a "raw" sector from DVD on Plextor drives. Does it reading drive's cache.
|
||||
/// Reads a "raw" sector from DVD on Plextor drives. Does it reading drive's cache.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the Plextor READ DVD (RAW) response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -114,7 +114,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads the statistics EEPROM from Plextor CD recorders
|
||||
/// Reads the statistics EEPROM from Plextor CD recorders
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if EEPROM is correctly read, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
@@ -140,7 +140,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads the statistics EEPROM from Plextor PX-708 and PX-712 recorders
|
||||
/// Reads the statistics EEPROM from Plextor PX-708 and PX-712 recorders
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if EEPROM is correctly read, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
@@ -166,7 +166,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a block from the statistics EEPROM from Plextor DVD recorders
|
||||
/// Reads a block from the statistics EEPROM from Plextor DVD recorders
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if EEPROM is correctly read, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
@@ -198,7 +198,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets speeds set by Plextor PoweRec
|
||||
/// Gets speeds set by Plextor PoweRec
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if speeds were got correctly, <c>false</c> otherwise.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -238,7 +238,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the Plextor PoweRec status
|
||||
/// Gets the Plextor PoweRec status
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if PoweRec is supported, <c>false</c> otherwise.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -276,7 +276,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the Plextor SilentMode status
|
||||
/// Gets the Plextor SilentMode status
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if SilentMode is supported, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
@@ -305,7 +305,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the Plextor GigaRec status
|
||||
/// Gets the Plextor GigaRec status
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if GigaRec is supported, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
@@ -333,7 +333,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the Plextor VariRec status
|
||||
/// Gets the Plextor VariRec status
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if VariRec is supported, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
@@ -366,7 +366,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the Plextor SecuRec status
|
||||
/// Gets the Plextor SecuRec status
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if SecuRec is supported, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
@@ -393,7 +393,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the Plextor SpeedRead status
|
||||
/// Gets the Plextor SpeedRead status
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if SpeedRead is supported, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
@@ -421,7 +421,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the Plextor CD-R and multi-session hiding status
|
||||
/// Gets the Plextor CD-R and multi-session hiding status
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if CD-R and multi-session hiding is supported, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
@@ -449,7 +449,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the Plextor DVD+ book bitsetting status
|
||||
/// Gets the Plextor DVD+ book bitsetting status
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if DVD+ book bitsetting is supported, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
@@ -482,7 +482,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the Plextor DVD+ test writing status
|
||||
/// Gets the Plextor DVD+ test writing status
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if DVD+ test writing is supported, <c>false</c> otherwise.</returns>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
|
||||
@@ -38,9 +38,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Sends the SBC READ (6) command
|
||||
/// Sends the SBC READ (6) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -54,9 +54,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SBC READ (6) command
|
||||
/// Sends the SBC READ (6) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -89,17 +89,23 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SBC READ (10) command
|
||||
/// Sends the SBC READ (10) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
/// <param name="rdprotect">Instructs the drive how to check for protection information on the medium.</param>
|
||||
/// <param name="dpo">If set to <c>true</c> requested blocks shall be assigned the lowest retention priority on cache fetch/retain.</param>
|
||||
/// <param name="dpo">
|
||||
/// If set to <c>true</c> requested blocks shall be assigned the lowest retention priority on cache
|
||||
/// fetch/retain.
|
||||
/// </param>
|
||||
/// <param name="fua">If set to <c>true</c> requested blocks MUST bu read from medium and not the cache.</param>
|
||||
/// <param name="fuaNv">If set to <c>true</c> requested blocks will be returned from non-volatile cache. If they're not present they shall be stored there.</param>
|
||||
/// <param name="fuaNv">
|
||||
/// If set to <c>true</c> requested blocks will be returned from non-volatile cache. If they're not
|
||||
/// present they shall be stored there.
|
||||
/// </param>
|
||||
/// <param name="lba">Starting block.</param>
|
||||
/// <param name="blockSize">Block size in bytes.</param>
|
||||
/// <param name="groupNumber">Group number where attributes associated with this command should be collected.</param>
|
||||
@@ -138,17 +144,23 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SBC READ (12) command
|
||||
/// Sends the SBC READ (12) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
/// <param name="rdprotect">Instructs the drive how to check for protection information on the medium.</param>
|
||||
/// <param name="dpo">If set to <c>true</c> requested blocks shall be assigned the lowest retention priority on cache fetch/retain.</param>
|
||||
/// <param name="dpo">
|
||||
/// If set to <c>true</c> requested blocks shall be assigned the lowest retention priority on cache
|
||||
/// fetch/retain.
|
||||
/// </param>
|
||||
/// <param name="fua">If set to <c>true</c> requested blocks MUST bu read from medium and not the cache.</param>
|
||||
/// <param name="fuaNv">If set to <c>true</c> requested blocks will be returned from non-volatile cache. If they're not present they shall be stored there.</param>
|
||||
/// <param name="fuaNv">
|
||||
/// If set to <c>true</c> requested blocks will be returned from non-volatile cache. If they're not
|
||||
/// present they shall be stored there.
|
||||
/// </param>
|
||||
/// <param name="lba">Starting block.</param>
|
||||
/// <param name="blockSize">Block size in bytes.</param>
|
||||
/// <param name="groupNumber">Group number where attributes associated with this command should be collected.</param>
|
||||
@@ -191,17 +203,23 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SBC READ (16) command
|
||||
/// Sends the SBC READ (16) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
/// <param name="rdprotect">Instructs the drive how to check for protection information on the medium.</param>
|
||||
/// <param name="dpo">If set to <c>true</c> requested blocks shall be assigned the lowest retention priority on cache fetch/retain.</param>
|
||||
/// <param name="dpo">
|
||||
/// If set to <c>true</c> requested blocks shall be assigned the lowest retention priority on cache
|
||||
/// fetch/retain.
|
||||
/// </param>
|
||||
/// <param name="fua">If set to <c>true</c> requested blocks MUST bu read from medium and not the cache.</param>
|
||||
/// <param name="fuaNv">If set to <c>true</c> requested blocks will be returned from non-volatile cache. If they're not present they shall be stored there.</param>
|
||||
/// <param name="fuaNv">
|
||||
/// If set to <c>true</c> requested blocks will be returned from non-volatile cache. If they're not
|
||||
/// present they shall be stored there.
|
||||
/// </param>
|
||||
/// <param name="lba">Starting block.</param>
|
||||
/// <param name="blockSize">Block size in bytes.</param>
|
||||
/// <param name="groupNumber">Group number where attributes associated with this command should be collected.</param>
|
||||
@@ -247,17 +265,20 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SBC READ LONG (10) command
|
||||
/// Sends the SBC READ LONG (10) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ LONG response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name = "relAddr"></param>
|
||||
/// <param name="relAddr"></param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
/// <param name="correct">If set to <c>true</c> ask the drive to try to correct errors in the sector.</param>
|
||||
/// <param name="lba">LBA to read.</param>
|
||||
/// <param name="transferBytes">How many bytes to read. If the number is not exactly the drive's size, the command will fail and incidate a delta of the size in SENSE.</param>
|
||||
/// <param name="transferBytes">
|
||||
/// How many bytes to read. If the number is not exactly the drive's size, the command will
|
||||
/// fail and incidate a delta of the size in SENSE.
|
||||
/// </param>
|
||||
public bool ReadLong10(out byte[] buffer, out byte[] senseBuffer, bool correct, bool relAddr, uint lba,
|
||||
ushort transferBytes, uint timeout, out double duration)
|
||||
{
|
||||
@@ -286,16 +307,19 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SBC READ LONG (16) command
|
||||
/// Sends the SBC READ LONG (16) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ LONG response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
/// <param name="correct">If set to <c>true</c> ask the drive to try to correct errors in the sector.</param>
|
||||
/// <param name="lba">LBA to read.</param>
|
||||
/// <param name="transferBytes">How many bytes to read. If the number is not exactly the drive's size, the command will fail and incidate a delta of the size in SENSE.</param>
|
||||
/// <param name="transferBytes">
|
||||
/// How many bytes to read. If the number is not exactly the drive's size, the command will
|
||||
/// fail and incidate a delta of the size in SENSE.
|
||||
/// </param>
|
||||
public bool ReadLong16(out byte[] buffer, out byte[] senseBuffer, bool correct, ulong lba, uint transferBytes,
|
||||
uint timeout, out double duration)
|
||||
{
|
||||
@@ -329,7 +353,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Moves the device reading element to the specified block address
|
||||
/// Moves the device reading element to the specified block address
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="lba">LBA.</param>
|
||||
@@ -356,7 +380,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Moves the device reading element to the specified block address
|
||||
/// Moves the device reading element to the specified block address
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="lba">LBA.</param>
|
||||
|
||||
@@ -37,11 +37,11 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Reads an attribute from the medium auxiliary memory, or reports which elements in the changer contain one
|
||||
/// Reads an attribute from the medium auxiliary memory, or reports which elements in the changer contain one
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction"/>.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction" />.</param>
|
||||
/// <param name="element">Element address.</param>
|
||||
/// <param name="elementType">Element type.</param>
|
||||
/// <param name="volume">Volume number.</param>
|
||||
@@ -79,8 +79,7 @@ namespace DiscImageChef.Devices
|
||||
|
||||
if(sense) return true;
|
||||
|
||||
uint attrLen = (uint)((buffer[0] << 24) + (buffer[1] << 16) + (buffer[2] << 8) + buffer[3] +
|
||||
4);
|
||||
uint attrLen = (uint)((buffer[0] << 24) + (buffer[1] << 16) + (buffer[2] << 8) + buffer[3] + 4);
|
||||
buffer = new byte[attrLen];
|
||||
cdb[10] = (byte)((buffer.Length & 0xFF000000) >> 24);
|
||||
cdb[11] = (byte)((buffer.Length & 0xFF0000) >> 16);
|
||||
|
||||
@@ -41,9 +41,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Sends the SPC INQUIRY command to the device using default device timeout.
|
||||
/// Sends the SPC INQUIRY command to the device using default device timeout.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI INQUIRY response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
public bool ScsiInquiry(out byte[] buffer, out byte[] senseBuffer)
|
||||
@@ -52,9 +52,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC INQUIRY command to the device using default device timeout.
|
||||
/// Sends the SPC INQUIRY command to the device using default device timeout.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI INQUIRY response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
@@ -64,9 +64,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC INQUIRY command to the device.
|
||||
/// Sends the SPC INQUIRY command to the device.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI INQUIRY response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -76,9 +76,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC INQUIRY command to the device.
|
||||
/// Sends the SPC INQUIRY command to the device.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI INQUIRY response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -111,9 +111,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC INQUIRY command to the device with an Extended Vital Product Data page using default device timeout.
|
||||
/// Sends the SPC INQUIRY command to the device with an Extended Vital Product Data page using default device timeout.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI INQUIRY response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="page">The Extended Vital Product Data</param>
|
||||
@@ -123,9 +123,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC INQUIRY command to the device with an Extended Vital Product Data page using default device timeout.
|
||||
/// Sends the SPC INQUIRY command to the device with an Extended Vital Product Data page using default device timeout.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI INQUIRY response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
@@ -136,9 +136,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC INQUIRY command to the device with an Extended Vital Product Data page.
|
||||
/// Sends the SPC INQUIRY command to the device with an Extended Vital Product Data page.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI INQUIRY response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -149,9 +149,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC INQUIRY command to the device with an Extended Vital Product Data page.
|
||||
/// Sends the SPC INQUIRY command to the device with an Extended Vital Product Data page.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI INQUIRY response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -188,7 +188,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC TEST UNIT READY command to the device
|
||||
/// Sends the SPC TEST UNIT READY command to the device
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if unit is NOT ready, <c>false</c> otherwise.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -210,9 +210,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC MODE SENSE(6) command to the device as introduced in SCSI-1
|
||||
/// Sends the SPC MODE SENSE(6) command to the device as introduced in SCSI-1
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI MODE SENSE(6) response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -224,9 +224,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC MODE SENSE(6) command to the device as introduced in SCSI-2
|
||||
/// Sends the SPC MODE SENSE(6) command to the device as introduced in SCSI-2
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI MODE SENSE(6) response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -241,9 +241,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC MODE SENSE(6) command to the device as introduced in SCSI-3 SPC-3
|
||||
/// Sends the SPC MODE SENSE(6) command to the device as introduced in SCSI-3 SPC-3
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI MODE SENSE(6) response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -289,9 +289,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC MODE SENSE(10) command to the device as introduced in SCSI-2
|
||||
/// Sends the SPC MODE SENSE(10) command to the device as introduced in SCSI-2
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI MODE SENSE(10) response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -307,9 +307,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC MODE SENSE(10) command to the device as introduced in SCSI-3 SPC-2
|
||||
/// Sends the SPC MODE SENSE(10) command to the device as introduced in SCSI-3 SPC-2
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI MODE SENSE(10) response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -326,9 +326,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC MODE SENSE(10) command to the device as introduced in SCSI-3 SPC-3
|
||||
/// Sends the SPC MODE SENSE(10) command to the device as introduced in SCSI-3 SPC-3
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI MODE SENSE(10) response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -378,9 +378,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC PREVENT ALLOW MEDIUM REMOVAL command to prevent medium removal
|
||||
/// Sends the SPC PREVENT ALLOW MEDIUM REMOVAL command to prevent medium removal
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
@@ -390,9 +390,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC PREVENT ALLOW MEDIUM REMOVAL command to allow medium removal
|
||||
/// Sends the SPC PREVENT ALLOW MEDIUM REMOVAL command to allow medium removal
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
@@ -402,9 +402,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC PREVENT ALLOW MEDIUM REMOVAL command
|
||||
/// Sends the SPC PREVENT ALLOW MEDIUM REMOVAL command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
@@ -420,9 +420,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC PREVENT ALLOW MEDIUM REMOVAL command
|
||||
/// Sends the SPC PREVENT ALLOW MEDIUM REMOVAL command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
@@ -447,9 +447,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC READ CAPACITY command
|
||||
/// Sends the SPC READ CAPACITY command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ CAPACITY response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -460,13 +460,13 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC READ CAPACITY command
|
||||
/// Sends the SPC READ CAPACITY command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ CAPACITY response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="relAddr">Indicates that <paramref name="address"/> is relative to current medium position</param>
|
||||
/// <param name="address">Address where information is requested from, only valid if <paramref name="pmi"/> is set</param>
|
||||
/// <param name="relAddr">Indicates that <paramref name="address" /> is relative to current medium position</param>
|
||||
/// <param name="address">Address where information is requested from, only valid if <paramref name="pmi" /> is set</param>
|
||||
/// <param name="pmi">If set, it is requesting partial media capacity</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
@@ -500,9 +500,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC READ CAPACITY(16) command
|
||||
/// Sends the SPC READ CAPACITY(16) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ CAPACITY(16) response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -513,12 +513,12 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC READ CAPACITY(16) command
|
||||
/// Sends the SPC READ CAPACITY(16) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ CAPACITY(16) response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="address">Address where information is requested from, only valid if <paramref name="pmi"/> is set</param>
|
||||
/// <param name="address">Address where information is requested from, only valid if <paramref name="pmi" /> is set</param>
|
||||
/// <param name="pmi">If set, it is requesting partial media capacity</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
/// <param name="duration">Duration in milliseconds it took for the device to execute the command.</param>
|
||||
@@ -561,9 +561,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC READ MEDIA SERIAL NUMBER command
|
||||
/// Sends the SPC READ MEDIA SERIAL NUMBER command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ MEDIA SERIAL NUMBER response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -587,8 +587,7 @@ namespace DiscImageChef.Devices
|
||||
|
||||
if(sense) return true;
|
||||
|
||||
uint strctLength = (uint)((buffer[0] << 24) + (buffer[1] << 16) + (buffer[2] << 8) +
|
||||
buffer[3] + 4);
|
||||
uint strctLength = (uint)((buffer[0] << 24) + (buffer[1] << 16) + (buffer[2] << 8) + buffer[3] + 4);
|
||||
buffer = new byte[strctLength];
|
||||
cdb[6] = (byte)((buffer.Length & 0xFF000000) >> 24);
|
||||
cdb[7] = (byte)((buffer.Length & 0xFF0000) >> 16);
|
||||
@@ -606,11 +605,11 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction"/>.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction" />.</param>
|
||||
/// <param name="partition">Partition number.</param>
|
||||
/// <param name="firstAttribute">First attribute identifier.</param>
|
||||
/// <param name="cache">If set to <c>true</c> device can return cached data.</param>
|
||||
@@ -624,11 +623,11 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction"/>.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction" />.</param>
|
||||
/// <param name="firstAttribute">First attribute identifier.</param>
|
||||
/// <param name="cache">If set to <c>true</c> device can return cached data.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
@@ -641,11 +640,11 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction"/>.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction" />.</param>
|
||||
/// <param name="partition">Partition number.</param>
|
||||
/// <param name="firstAttribute">First attribute identifier.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
@@ -658,11 +657,11 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction"/>.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction" />.</param>
|
||||
/// <param name="firstAttribute">First attribute identifier.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -674,11 +673,11 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction"/>.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction" />.</param>
|
||||
/// <param name="volume">Volume number.</param>
|
||||
/// <param name="partition">Partition number.</param>
|
||||
/// <param name="firstAttribute">First attribute identifier.</param>
|
||||
@@ -692,11 +691,11 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// Reads an attribute from the medium auxiliary memory
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction"/>.</param>
|
||||
/// <param name="action">What to do, <see cref="ScsiAttributeAction" />.</param>
|
||||
/// <param name="volume">Volume number.</param>
|
||||
/// <param name="partition">Partition number.</param>
|
||||
/// <param name="firstAttribute">First attribute identifier.</param>
|
||||
@@ -711,9 +710,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC MODE SELECT(6) command
|
||||
/// Sends the SPC MODE SELECT(6) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer with the data to be sent to the device</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="savePages">Set to save pages between resets.</param>
|
||||
@@ -730,8 +729,7 @@ namespace DiscImageChef.Devices
|
||||
{
|
||||
if(PlatformId != PlatformID.Win32NT && PlatformId != PlatformID.Win32S &&
|
||||
PlatformId != PlatformID.Win32Windows && PlatformId != PlatformID.WinCE &&
|
||||
PlatformId != PlatformID.WindowsPhone &&
|
||||
PlatformId != PlatformID.Xbox) LastError = 75;
|
||||
PlatformId != PlatformID.WindowsPhone && PlatformId != PlatformID.Xbox) LastError = 75;
|
||||
else LastError = 111;
|
||||
Error = true;
|
||||
duration = 0;
|
||||
@@ -755,9 +753,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SPC MODE SELECT(10) command
|
||||
/// Sends the SPC MODE SELECT(10) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer with the data to be sent to the device</param>
|
||||
/// <param name="savePages">Set to save pages between resets.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -774,8 +772,7 @@ namespace DiscImageChef.Devices
|
||||
{
|
||||
if(PlatformId != PlatformID.Win32NT && PlatformId != PlatformID.Win32S &&
|
||||
PlatformId != PlatformID.Win32Windows && PlatformId != PlatformID.WinCE &&
|
||||
PlatformId != PlatformID.WindowsPhone &&
|
||||
PlatformId != PlatformID.Xbox) LastError = 75;
|
||||
PlatformId != PlatformID.WindowsPhone && PlatformId != PlatformID.Xbox) LastError = 75;
|
||||
else LastError = 111;
|
||||
Error = true;
|
||||
duration = 0;
|
||||
|
||||
@@ -38,7 +38,7 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Prepares the medium for reading
|
||||
/// Prepares the medium for reading
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if load was successful, <c>false</c> otherwise.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -50,7 +50,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Prepares the medium for ejection
|
||||
/// Prepares the medium for ejection
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if unload was successful, <c>false</c> otherwise.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -62,7 +62,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Prepares the medium for reading or ejection
|
||||
/// Prepares the medium for reading or ejection
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if load/unload was successful, <c>false</c> otherwise.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -70,7 +70,10 @@ namespace DiscImageChef.Devices
|
||||
/// <param name="load">If set to <c>true</c> load the medium for reading.</param>
|
||||
/// <param name="retense">If set to <c>true</c> retense the tape.</param>
|
||||
/// <param name="endOfTape">If set to <c>true</c> move the medium to the EOT mark.</param>
|
||||
/// <param name="hold">If set to <c>true</c> and <paramref name="load"/> is also set to <c>true</c>, moves the medium to the drive but does not prepare it for reading.</param>
|
||||
/// <param name="hold">
|
||||
/// If set to <c>true</c> and <paramref name="load" /> is also set to <c>true</c>, moves the medium to
|
||||
/// the drive but does not prepare it for reading.
|
||||
/// </param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
public bool LoadUnload(out byte[] senseBuffer, bool immediate, bool load, bool retense, bool endOfTape,
|
||||
@@ -97,7 +100,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the medium to the specified block in the current partition
|
||||
/// Positions the medium to the specified block in the current partition
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="lba">Logical block address.</param>
|
||||
@@ -109,7 +112,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the medium to the specified block in the specified partition
|
||||
/// Positions the medium to the specified block in the specified partition
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="partition">Partition to position to.</param>
|
||||
@@ -122,7 +125,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the medium to the specified block in the current partition
|
||||
/// Positions the medium to the specified block in the current partition
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="immediate">If set to <c>true</c>, return from the command immediately.</param>
|
||||
@@ -135,7 +138,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the medium to the specified block in the specified partition
|
||||
/// Positions the medium to the specified block in the specified partition
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="immediate">If set to <c>true</c>, return from the command immediately.</param>
|
||||
@@ -150,7 +153,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the medium to the specified object identifier
|
||||
/// Positions the medium to the specified object identifier
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="immediate">If set to <c>true</c>, return from the command immediately.</param>
|
||||
@@ -187,7 +190,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the medium to the specified block in the current partition
|
||||
/// Positions the medium to the specified block in the current partition
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="lba">Logical block address.</param>
|
||||
@@ -200,7 +203,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the medium to the specified block in the specified partition
|
||||
/// Positions the medium to the specified block in the specified partition
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="partition">Partition to position to.</param>
|
||||
@@ -214,7 +217,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the medium to the specified block in the current partition
|
||||
/// Positions the medium to the specified block in the current partition
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="immediate">If set to <c>true</c>, return from the command immediately.</param>
|
||||
@@ -228,7 +231,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the medium to the specified block in the specified partition
|
||||
/// Positions the medium to the specified block in the specified partition
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="immediate">If set to <c>true</c>, return from the command immediately.</param>
|
||||
@@ -244,7 +247,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the medium to the specified object identifier
|
||||
/// Positions the medium to the specified object identifier
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="immediate">If set to <c>true</c>, return from the command immediately.</param>
|
||||
@@ -303,7 +306,7 @@ namespace DiscImageChef.Devices
|
||||
}*/
|
||||
|
||||
/// <summary>
|
||||
/// Reads the specified number of bytes or of blocks from the medium
|
||||
/// Reads the specified number of bytes or of blocks from the medium
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -319,13 +322,19 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads the specified number of bytes or of blocks from the medium
|
||||
/// Reads the specified number of bytes or of blocks from the medium
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="sili">If set to <c>true</c> suppress the incorrect-length indication. Cannot be set while <paramref name="fixedLen"/> is set also.</param>
|
||||
/// <param name="fixedLen">If set to <c>true</c> <paramref name="transferLen"/> indicates how many blocks to read of a fixed size.</param>
|
||||
/// <param name="transferLen">Transfer length in blocks or bytes depending of <paramref name="fixedLen"/> status.</param>
|
||||
/// <param name="sili">
|
||||
/// If set to <c>true</c> suppress the incorrect-length indication. Cannot be set while
|
||||
/// <paramref name="fixedLen" /> is set also.
|
||||
/// </param>
|
||||
/// <param name="fixedLen">
|
||||
/// If set to <c>true</c> <paramref name="transferLen" /> indicates how many blocks to read of a
|
||||
/// fixed size.
|
||||
/// </param>
|
||||
/// <param name="transferLen">Transfer length in blocks or bytes depending of <paramref name="fixedLen" /> status.</param>
|
||||
/// <param name="blockSize">Block size in bytes.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -353,7 +362,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a number of fixed-length blocks starting at specified object
|
||||
/// Reads a number of fixed-length blocks starting at specified object
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -371,7 +380,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a number of fixed-length blocks starting at specified block from the specified partition
|
||||
/// Reads a number of fixed-length blocks starting at specified block from the specified partition
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -390,7 +399,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a number of fixed-length blocks starting at specified object
|
||||
/// Reads a number of fixed-length blocks starting at specified object
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -407,7 +416,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a number of fixed-length blocks starting at specified block from the specified partition
|
||||
/// Reads a number of fixed-length blocks starting at specified block from the specified partition
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -425,15 +434,21 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a number of bytes or objects starting at specified object from the specified partition
|
||||
/// Reads a number of bytes or objects starting at specified object from the specified partition
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="sili">If set to <c>true</c> suppress the incorrect-length indication. Cannot be set while <paramref name="fixedLen"/> is set also.</param>
|
||||
/// <param name="fixedLen">If set to <c>true</c> <paramref name="transferLen"/> indicates how many blocks to read of a fixed size.</param>
|
||||
/// <param name="sili">
|
||||
/// If set to <c>true</c> suppress the incorrect-length indication. Cannot be set while
|
||||
/// <paramref name="fixedLen" /> is set also.
|
||||
/// </param>
|
||||
/// <param name="fixedLen">
|
||||
/// If set to <c>true</c> <paramref name="transferLen" /> indicates how many blocks to read of a
|
||||
/// fixed size.
|
||||
/// </param>
|
||||
/// <param name="partition">Partition to read object from.</param>
|
||||
/// <param name="objectId">Object identifier.</param>
|
||||
/// <param name="transferLen">Transfer length in blocks or bytes depending of <paramref name="fixedLen"/> status.</param>
|
||||
/// <param name="transferLen">Transfer length in blocks or bytes depending of <paramref name="fixedLen" /> status.</param>
|
||||
/// <param name="objectSize">Object size in bytes.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -471,7 +486,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Requests the drive the maximum and minimum block size
|
||||
/// Requests the drive the maximum and minimum block size
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -495,7 +510,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reports current reading/writing elements position on the medium
|
||||
/// Reports current reading/writing elements position on the medium
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -507,7 +522,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reports current reading/writing elements position on the medium using 32 bytes response
|
||||
/// Reports current reading/writing elements position on the medium using 32 bytes response
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -519,7 +534,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reports current reading/writing elements position on the medium
|
||||
/// Reports current reading/writing elements position on the medium
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -540,7 +555,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reports current reading/writing elements position on the medium
|
||||
/// Reports current reading/writing elements position on the medium
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -591,7 +606,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads the specified number of blocks from the medium, backwards
|
||||
/// Reads the specified number of blocks from the medium, backwards
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -607,7 +622,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads the specified number of bytes or of blocks from the medium, backwards
|
||||
/// Reads the specified number of bytes or of blocks from the medium, backwards
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -624,14 +639,20 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads the specified number of bytes or of blocks from the medium, backwards
|
||||
/// Reads the specified number of bytes or of blocks from the medium, backwards
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="byteOrder">If set to <c>true</c> drive should un-reverse the blocks and bytes</param>
|
||||
/// <param name="sili">If set to <c>true</c> suppress the incorrect-length indication. Cannot be set while <paramref name="fixedLen"/> is set also.</param>
|
||||
/// <param name="fixedLen">If set to <c>true</c> <paramref name="transferLen"/> indicates how many blocks to read of a fixed size.</param>
|
||||
/// <param name="transferLen">Transfer length in blocks or bytes depending of <paramref name="fixedLen"/> status.</param>
|
||||
/// <param name="sili">
|
||||
/// If set to <c>true</c> suppress the incorrect-length indication. Cannot be set while
|
||||
/// <paramref name="fixedLen" /> is set also.
|
||||
/// </param>
|
||||
/// <param name="fixedLen">
|
||||
/// If set to <c>true</c> <paramref name="transferLen" /> indicates how many blocks to read of a
|
||||
/// fixed size.
|
||||
/// </param>
|
||||
/// <param name="transferLen">Transfer length in blocks or bytes depending of <paramref name="fixedLen" /> status.</param>
|
||||
/// <param name="blockSize">Block size in bytes.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -660,7 +681,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a number of fixed-length blocks starting at specified object, backwards
|
||||
/// Reads a number of fixed-length blocks starting at specified object, backwards
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -678,7 +699,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a number of fixed-length blocks starting at specified block from the specified partition, backwards
|
||||
/// Reads a number of fixed-length blocks starting at specified block from the specified partition, backwards
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -697,7 +718,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a number of fixed-length blocks starting at specified object, backwards
|
||||
/// Reads a number of fixed-length blocks starting at specified object, backwards
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -714,7 +735,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a number of fixed-length blocks starting at specified block from the specified partition, backwards
|
||||
/// Reads a number of fixed-length blocks starting at specified block from the specified partition, backwards
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -732,16 +753,22 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads a number of bytes or objects starting at specified object from the specified partition, backwards
|
||||
/// Reads a number of bytes or objects starting at specified object from the specified partition, backwards
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="byteOrder">If set to <c>true</c> drive should un-reverse the blocks and bytes</param>
|
||||
/// <param name="sili">If set to <c>true</c> suppress the incorrect-length indication. Cannot be set while <paramref name="fixedLen"/> is set also.</param>
|
||||
/// <param name="fixedLen">If set to <c>true</c> <paramref name="transferLen"/> indicates how many blocks to read of a fixed size.</param>
|
||||
/// <param name="sili">
|
||||
/// If set to <c>true</c> suppress the incorrect-length indication. Cannot be set while
|
||||
/// <paramref name="fixedLen" /> is set also.
|
||||
/// </param>
|
||||
/// <param name="fixedLen">
|
||||
/// If set to <c>true</c> <paramref name="transferLen" /> indicates how many blocks to read of a
|
||||
/// fixed size.
|
||||
/// </param>
|
||||
/// <param name="partition">Partition to read object from.</param>
|
||||
/// <param name="objectId">Object identifier.</param>
|
||||
/// <param name="transferLen">Transfer length in blocks or bytes depending of <paramref name="fixedLen"/> status.</param>
|
||||
/// <param name="transferLen">Transfer length in blocks or bytes depending of <paramref name="fixedLen" /> status.</param>
|
||||
/// <param name="objectSize">Object size in bytes.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -781,7 +808,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads the specified number of blocks from the device's buffer
|
||||
/// Reads the specified number of blocks from the device's buffer
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -797,7 +824,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads the specified number of bytes or of blocks from the device's buffer
|
||||
/// Reads the specified number of bytes or of blocks from the device's buffer
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -814,13 +841,19 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reads the specified number of bytes or of blocks from the device's buffer
|
||||
/// Reads the specified number of bytes or of blocks from the device's buffer
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="sili">If set to <c>true</c> suppress the incorrect-length indication. Cannot be set while <paramref name="fixedLen"/> is set also.</param>
|
||||
/// <param name="fixedLen">If set to <c>true</c> <paramref name="transferLen"/> indicates how many blocks to read of a fixed size.</param>
|
||||
/// <param name="transferLen">Transfer length in blocks or bytes depending of <paramref name="fixedLen"/> status.</param>
|
||||
/// <param name="sili">
|
||||
/// If set to <c>true</c> suppress the incorrect-length indication. Cannot be set while
|
||||
/// <paramref name="fixedLen" /> is set also.
|
||||
/// </param>
|
||||
/// <param name="fixedLen">
|
||||
/// If set to <c>true</c> <paramref name="transferLen" /> indicates how many blocks to read of a
|
||||
/// fixed size.
|
||||
/// </param>
|
||||
/// <param name="transferLen">Transfer length in blocks or bytes depending of <paramref name="fixedLen" /> status.</param>
|
||||
/// <param name="blockSize">Block size in bytes.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
/// <param name="duration">Duration.</param>
|
||||
@@ -848,7 +881,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Requests the device to return descriptors for supported densities or medium types
|
||||
/// Requests the device to return descriptors for supported densities or medium types
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -860,7 +893,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Requests the device to return descriptors for supported densities or medium types
|
||||
/// Requests the device to return descriptors for supported densities or medium types
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -874,7 +907,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Requests the device to return descriptors for supported densities or medium types
|
||||
/// Requests the device to return descriptors for supported densities or medium types
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -917,7 +950,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the reading/writing element to the beginning of current partition
|
||||
/// Positions the reading/writing element to the beginning of current partition
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout.</param>
|
||||
@@ -928,7 +961,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Positions the reading/writing element to the beginning of current partition
|
||||
/// Positions the reading/writing element to the beginning of current partition
|
||||
/// </summary>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="immediate">If set to <c>true</c> return from the command immediately.</param>
|
||||
@@ -953,7 +986,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Selects the specified track
|
||||
/// Selects the specified track
|
||||
/// </summary>
|
||||
/// <returns><c>true</c>, if select was tracked, <c>false</c> otherwise.</returns>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
|
||||
@@ -37,9 +37,9 @@ namespace DiscImageChef.Devices
|
||||
public partial class Device
|
||||
{
|
||||
/// <summary>
|
||||
/// Sends the SyQuest READ (6) command
|
||||
/// Sends the SyQuest READ (6) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -53,9 +53,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SyQuest READ LONG (6) command
|
||||
/// Sends the SyQuest READ LONG (6) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -69,9 +69,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SyQuest READ (6) command
|
||||
/// Sends the SyQuest READ (6) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -120,7 +120,7 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Requests the usage, seek and error counters, and resets them
|
||||
/// Requests the usage, seek and error counters, and resets them
|
||||
/// </summary>
|
||||
/// <param name="buffer">Buffer.</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
@@ -133,9 +133,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SyQuest READ LONG (10) command
|
||||
/// Sends the SyQuest READ LONG (10) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
@@ -149,9 +149,9 @@ namespace DiscImageChef.Devices
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends the SyQuest READ (10) command
|
||||
/// Sends the SyQuest READ (10) command
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer"/> contains the sense buffer.</returns>
|
||||
/// <returns><c>true</c> if the command failed and <paramref name="senseBuffer" /> contains the sense buffer.</returns>
|
||||
/// <param name="buffer">Buffer where the SCSI READ response will be stored</param>
|
||||
/// <param name="senseBuffer">Sense buffer.</param>
|
||||
/// <param name="timeout">Timeout in seconds.</param>
|
||||
|
||||
Reference in New Issue
Block a user