PrimoBurner(tm) for C++  5.0
CD, DVD and Blu-ray Software Development Kit
Loading...
Searching...
No Matches
scsi2.h File Reference

Classes

struct  ScsiCommandSense
 SCSI command sense structure. More...
 
class  ScsiInterface
 Allows an application to send SCSI command to a device. More...
 

Namespaces

namespace  primo
 Top namespace for all libraries developed by Primo Software Corp.
 
namespace  primo::scsi
 PrimoScsi(tm) Application Programming Interface.
 
namespace  primo::scsi::ScsiCommandDirection
 Direction of SCSI command data transfer.
 
namespace  primo::scsi::ScsiCommandLength
 SCSI command descriptor block length.
 
namespace  primo::scsi::ScsiCommandTimeout
 Short and long SCSI command timeout values.
 
namespace  primo::scsi::ScsiInterfaceError
 ScsiInterfaceError error codes.
 
namespace  primo::scsi::ScsiSense
 SCSI Sense Data.
 
namespace  primo::scsi::SenseKey
 SCSI Sense Keys.
 

Enumerations

enum  Enum {
  NoSense = 0x00 ,
  RecoveredError = 0x01 ,
  NotReady = 0x02 ,
  MediumError = 0x03 ,
  HardwareError = 0x04 ,
  IllegalRequest = 0x05 ,
  UnitAttention = 0x06 ,
  DataProtect = 0x07 ,
  BlankCheck = 0x08 ,
  VendorSpecific = 0x09 ,
  CopyAborted = 0x0A ,
  AbortedCommand = 0x0B ,
  Equal = 0x0C ,
  VolumeOverflow = 0x0D ,
  Miscompare = 0x0E ,
  Reserved = 0x0F
}
 SenseKey::Enum. More...
 
enum  Enum {
  Start = (0x00000000) ,
  End = (0x00FFFFFF) ,
  Success = (Start + 0) ,
  IoProcessTerminated = 0x0B0006 ,
  OperationInProgress2 = 0x050016 ,
  CleaningRequested = 0x040017 ,
  NoSeekComplete = 0x030200 ,
  UnitNotReady = 0x020400 ,
  InProcessOfBecomingReady = 0x020401 ,
  InitializingCommandRequired = 0x020402 ,
  ManualInterventionRequired = 0x020403 ,
  FormatInProgress2 = 0x000404 ,
  FormatInProgress = 0x020404 ,
  OperationInProgress = 0x020407 ,
  LongWriteInProgress = 0x020408 ,
  SelfTestInProgress = 0x020409 ,
  NotRespondToSelection = 0x040500 ,
  NoReferencePositionFound = 0x030600 ,
  CommunicationFailure = 0x040800 ,
  CommunicationTimeout = 0x040801 ,
  CommunicationParityError = 0x040802 ,
  CommunicationCRCError = 0x040803 ,
  TrackFollowingError = 0x040900 ,
  TrackingServoFailure = 0x040901 ,
  FocusServoFailure = 0x040902 ,
  SpindleServoFailure = 0x040903 ,
  HeadSelectFault = 0x040904 ,
  ErrorLogOverflow = 0x060A00 ,
  Warning = 0x010B00 ,
  SpecifiedTemperatureExceeded = 0x010B01 ,
  EnclosureDegraded = 0x010B02 ,
  BackgroundSelfTestFailed = 0x010B03 ,
  BackgroundPreScanMediumError = 0x010B04 ,
  BackgroundMediumScanMediumError = 0x010B05 ,
  WriteError = 0x030C00 ,
  WriteErrorRecoveredWithAutoRealloc = 0x010C01 ,
  WriteErrorAutoReallocFailed = 0x030C02 ,
  WriteErrorRecommendReassignment = 0x030C03 ,
  WriteErrorRecoveryNeeded = 0x020C07 ,
  WriteErrorRecoveryNeeded2 = 0x030C07 ,
  WriteErrorRecoveryFailed = 0x030C08 ,
  WriteErrorLossOfStreaming = 0x030C09 ,
  WriteErrorPaddingBlocksAdded = 0x030C0A ,
  DefectsInErrorWindow = 0x020C0F ,
  UnrecoveredReadError = 0x031100 ,
  ReadRetriesExhausted = 0x031101 ,
  ErrorTooLongToCorrect = 0x031102 ,
  LecUncorrectableError = 0x031105 ,
  CircUnrecoveredError = 0x031106 ,
  ErrorReadingUpcEan = 0x03110F ,
  ErrorReadingIsrc = 0x031110 ,
  ReadErrorLossOfStreaming = 0x0B1111 ,
  RandomPositioningError = 0x031500 ,
  RandomPositioningError2 = 0x041500 ,
  MechanicalPositioningError = 0x031501 ,
  MechanicalPositioningError2 = 0x041501 ,
  PositioningErrorDetected = 0x031502 ,
  RecoveredDataNoErrorCorrectionApplied = 0x011700 ,
  RecoveredDataWithRetries = 0x011701 ,
  RecoveredDataPositiveHeadOffset = 0x011702 ,
  RecoveredDataNegativeHeadOffset = 0x011703 ,
  RecoveredDataRetriesCircApplied = 0x011704 ,
  RecoveredDataPreviousSectorID = 0x011705 ,
  RecoveredDataWithoutEccRecommendReassignment = 0x011707 ,
  RecoveredDataWithoutEccRecommendRewrite = 0x011708 ,
  RecoveredDataWithoutEccDataRewritten = 0x011709 ,
  RecoveredDataErrorCorrectionApplied = 0x011800 ,
  RecoveredDataErrorCorrectionRetriesApplied = 0x011801 ,
  RecoveredDataAutoReallocated = 0x011802 ,
  RecoveredDataWithCirc = 0x011803 ,
  RecoveredDataWithLec = 0x011804 ,
  RecoveredDataRecommendReassignment = 0x011805 ,
  RecoveredDataRecommendRewrite = 0x011806 ,
  RecoveredDataWithLinking = 0x011808 ,
  ParameterListLength = 0x051A00 ,
  SynchronousDataTransferError = 0x041B00 ,
  MiscompareDuringVerifyOperation = 0x0A1D00 ,
  InvalidCommandOperationCode = 0x052000 ,
  LbaOutOfRange = 0x052100 ,
  InvalidElementAddress = 0x052101 ,
  InvalidAddressForWrite = 0x052102 ,
  InvalidWriteCrossingLayerJump = 0x052103 ,
  IllegalFunction = 0x052200 ,
  InvalidFieldInCDB = 0x052400 ,
  NotSupported = 0x052500 ,
  InvalidFieldInParameterList = 0x052600 ,
  ParameterNotSupported = 0x052601 ,
  ParameterValueInvalid = 0x052602 ,
  ThresholdParametersNotSupported = 0x052603 ,
  InvalidReleaseOfPersistentReservation = 0x052604 ,
  WriteProtected = 0x072700 ,
  HardwareWriteProtected = 0x072701 ,
  SoftwareWriteProtected = 0x072702 ,
  AssociatedWriteProtect = 0x072703 ,
  PersistentWriteProtect = 0x072704 ,
  PermanentWriteProtect = 0x072705 ,
  ConditionalWriteProtect = 0x072706 ,
  MediumChanged = 0x062800 ,
  ImportOrExportElementAccessed = 0x062801 ,
  FormatLayerMayHaveChanged = 0x062802 ,
  PowerOnReset = 0x062900 ,
  PowerOnOccurred = 0x062901 ,
  BusResetOccurred = 0x062902 ,
  BusDeviceResetFunctionOccurred = 0x062903 ,
  DeviceInternalReset = 0x062904 ,
  ParametersChanged = 0x062A00 ,
  ModeParametersChanged = 0x062A01 ,
  LogParametersChanged = 0x062A02 ,
  ReservationsPreempted = 0x062A03 ,
  CommandSequenceError = 0x052C00 ,
  CurrentProgramAreaIsNotEmpty = 0x052C03 ,
  CurrentProgramAreaIsEmpty = 0x052C04 ,
  InsufficientTimeForOperation = 0x062E00 ,
  CommandsClearedByAnotherInitiator = 0x062F00 ,
  IncompatibleMedium = 0x023000 ,
  IncompatibleMedium2 = 0x053000 ,
  CannotReadUnknownFormat = 0x023001 ,
  CannotReadUnknownFormat2 = 0x053001 ,
  CannotReadIncompatibleFormat = 0x023002 ,
  CannotReadIncompatibleFormat2 = 0x053002 ,
  CleaningCartridgeInstalled = 0x023003 ,
  CleaningCartridgeInstalled2 = 0x053003 ,
  CannotWriteUnknownFormat = 0x023004 ,
  CannotWriteUnknownFormat2 = 0x053004 ,
  CannotWriteIncompatibleFormat = 0x023005 ,
  CannotWriteIncompatibleFormat2 = 0x053005 ,
  CannotFormatIncompatibleMedium = 0x023006 ,
  CannotFormatIncompatibleMedium2 = 0x053006 ,
  CleaningFailure = 0x023007 ,
  CleaningFailure2 = 0x053007 ,
  ApplicationCodeMismatch = 0x053008 ,
  CurrentSessionNotFixatedForAppend = 0x053009 ,
  MediumNotFormatted = 0x053010 ,
  CannotWriteUnsupportedMediumVersion = 0x023011 ,
  CannotWriteUnsupportedMediumVersion2 = 0x053011 ,
  MediumFormatCorrupted = 0x033100 ,
  FormatCommandFailed = 0x033101 ,
  ZonedFormattingFailedDueToSpareLinking = 0x033102 ,
  NoDefectSpareLocationAvailable = 0x033200 ,
  RoundedParameter = 0x013700 ,
  SavingParametersNotSupported = 0x053900 ,
  MediumNotPresent = 0x023A00 ,
  MediumNotPresentTrayClosed = 0x023A01 ,
  MediumNotPresentTrayOpen = 0x023A02 ,
  MediumNotPresentLoadable = 0x023A03 ,
  MediumDestinationElementFull = 0x063B0D ,
  MediumSourceElementEmpty = 0x063B0E ,
  EndOfMediumReached = 0x063B0F ,
  MediumMagazineNotAccessible = 0x063B11 ,
  MediumMagazineRemoved = 0x063B12 ,
  MediumMagazineInserted = 0x063B13 ,
  MediumMagazineLocked = 0x063B14 ,
  MediumMagazineUnlocked = 0x063B15 ,
  MechanicalPositioningOrChangerError = 0x043B16 ,
  InvalidBitsInIdentifyMessage = 0x053D00 ,
  NotSelfConfigured = 0x023E00 ,
  LogicalUnitFailure = 0x043E01 ,
  TimeoutOnLogicalUnit = 0x043E02 ,
  TargetOperatingConditionsHaveChanged = 0x063F00 ,
  MicrocodeHasBeenChanged = 0x063F01 ,
  ChangedOperatingDefinition = 0x063F02 ,
  InquiryDataHasChanged = 0x063F03 ,
  MessageError = 0x054300 ,
  InternalTargetFailure = 0x044400 ,
  SelectOrReselectFailure = 0x0B4500 ,
  UnsuccessfulSoftReset = 0x044600 ,
  ScsiParityError = 0x044700 ,
  InitiatorDetectedErrorMessageReceived = 0x0B4800 ,
  InvalidMessageError = 0x0B4900 ,
  CommandPhaseError = 0x044A00 ,
  DataPhaseError = 0x044B00 ,
  FailedSelfConfiguration = 0x044C00 ,
  OverlappedCommandsAttempted = 0x0B4E00 ,
  EraseFailure = 0x035100 ,
  EraseFailureIncompleteEraseOperationDetected = 0x035101 ,
  MediaLoadOrEjectFailed = 0x045300 ,
  MediumRemovalPrevented = 0x055302 ,
  SystemResourceFailure = 0x055500 ,
  UnableToRecoverTableOfContents = 0x035700 ,
  OperatorRequestOrStateChangeInput = 0x065A00 ,
  OperatorMediumRemovalRequest = 0x065A01 ,
  OperatorSelectedWriteProtect = 0x065A02 ,
  OperatorSelectedWritePermit = 0x065A03 ,
  LogException = 0x065B00 ,
  ThresholdConditionMet = 0x065B01 ,
  LogCounterAtMaximum = 0x065B02 ,
  LogListCodesExhausted = 0x065B03 ,
  FailurePredictionThresholdExceeded = 0x015D00 ,
  MediaFailurePredictionThresholdExceeded = 0x015D01 ,
  UnitFailurePredictionThresholdExceeded = 0x015D02 ,
  SpareAreaExhaustionFailurePredictionThresholdExceeded = 0x015D03 ,
  FailurePredictionThresholdExceededFalse = 0x015DFF ,
  LowPowerConditionOn = 0x065E00 ,
  IdleConditionActivatedByTimer = 0x065E01 ,
  StandbyConditionActivatedByTimer = 0x065E02 ,
  IdleConditionActivatedByCommand = 0x065E03 ,
  StandbyConditionActivatedByCommand = 0x065E04 ,
  EndOfUserAreaEncounteredOnThisTrack = 0x056300 ,
  PacketDoesNotFitInAvailableSpace = 0x056301 ,
  IllegalModeForThisTrack = 0x056400 ,
  InvalidPacketSize = 0x056401 ,
  VoltageFault = 0x046500 ,
  AuthenticationFailure = 0x056F00 ,
  KeyNotPresent = 0x056F01 ,
  KeyNotEstablished = 0x056F02 ,
  ReadWithoutAuthentication = 0x056F03 ,
  RegionCodeMismatch = 0x056F04 ,
  RegionResetError = 0x056F05 ,
  InsufficientBlockCount = 0x056F06 ,
  ConflictInBindingNonceRecording = 0x056F07 ,
  SessionFixationError = 0x037200 ,
  SessionFixationErrorWritingLeadIn = 0x037201 ,
  SessionFixationErrorWritingLeadOut = 0x037202 ,
  SessionFixationErrorIncompleteTrackInSession = 0x057203 ,
  RegionPartialReservedTrack = 0x057204 ,
  NoTrackReservations = 0x057205 ,
  RmzExtensionNotAllowed = 0x057206 ,
  NoMoreTestZoneExtensionsAreAllowed = 0x057207 ,
  CDControlError = 0x037300 ,
  PowerCalibrationAreaAlmostFull = 0x017301 ,
  PowerCalibrationAreaFull = 0x037302 ,
  PowerCalibrationAreaError = 0x037303 ,
  ProgramMemoryAreaUpdateFailure = 0x037304 ,
  ProgramMemoryAreaFull = 0x037305 ,
  RmaPmaAlmostFull = 0x017306 ,
  CurrentPowerCalibrationAreaAlmostFull = 0x037310 ,
  CurrentPowerCalibrationAreaFull = 0x037311 ,
  RdzFull = 0x057317
}
 ScsiSense::Enum. More...
 
enum  Enum {
  Unspecified = 0 ,
  Read = 1 ,
  Write = 2
}
 ScsiCommandDirection::Enum. More...
 
enum  Enum {
  CDB_6 = 6 ,
  CDB_10 = 10 ,
  CDB_12 = 12
}
 ScsiCommandLength::Enum. More...
 
enum  Enum {
  Short = 10000 ,
  Long = 180000
}
 ScsiCommandTimeout::Enum. More...
 
enum  Enum {
  Success = 0 ,
  SystemError = 1 ,
  DeviceNotSet = 3 ,
  InvalidParameters = 4 ,
  CheckSense = 5
}
 ScsiInterfaceError::Enum. More...