PrimoBurner(tm) for C++  4.7
CD, DVD and Blu-ray Software Development Kit
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Pages
PrimoScsi2.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

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