|
Mac Dev Center
Mac OS X Reference Library Drivers, Kernel, & Hardware: User-Space Device Access Disc Recording Framework Reference
|
DRCoreErrors.h |
| Includes: | <CoreServices/CoreServices.h> <AvailabilityMacros.h> |
Disc Recording error codes and descriptions.
Disc Recording provides functions to map OS errors it defines and sense information returned from device command errors to localized string representations.
Maps the Additional Sense Code (ASC) and Additional Sense Key Qualifier (ASCQ) to a localized string.
Maps an operating system error code to a localized string.
Maps a SCSI sense code to a localized string.
DRCopyLocalizedStringForAdditionalSense |
Maps the Additional Sense Code (ASC) and Additional Sense Key Qualifier (ASCQ) to a localized string.
CFStringRef DRCopyLocalizedStringForAdditionalSense( UInt8 ASC, UInt8 ASCQ);
ASCThe Additional Sense Code generated by a device conforming the SCSI standard.
ASCQThe Additional Sense Code Qualifier generated by a device conforming to the SCSI standard.
A value of type CFStringRef containing the localized string. This reference is implicitly retained by the caller.
This function takes an ASC/ASCQ pair and finds the correct localized string corresponding to that pair. The function attempts to find the exact pair, followed by one of the range ASC codes. If neither of those can be found, it will determine if the pair is reserved or is a vendor specific pair and will return a string indicating that. If a localized string cannot be found, it will return the ASC and ASCQ codes as a string.
DRCopyLocalizedStringForDiscRecordingError |
Maps an operating system error code to a localized string.
osErrorThe OS error code.
A value of type CFStringRef which contains the localized string. This reference is implicitly retained by the caller.
If a localized string cannot be found, this function returns the error code as a string.
DRCopyLocalizedStringForSenseCode |
Maps a SCSI sense code to a localized string.
CFStringRef DRCopyLocalizedStringForSenseCode( UInt8 senseCode);
senseCodeA sense code generated by a device conforming to the SCSI standard.
A value of type CFStringRef containing the localized string. This reference is implicitly retained by the caller.
This function takes a sense code and finds the corresponding localized string. If a localized string cannot be found, it returns the sense code as a string.
kDRErrorStatusAdditionalSenseStringKey |
extern const CFStringRef kDRErrorStatusAdditionalSenseStringKey;
A key for the DRErrorStatus dictionary. The value of this key is a CFString object containing the localized string describing the additonal sense from the sense data for the failure. This value is optional and will not be present if the kDRErrorStatusSenseKey key is not present or if a suitable string does not exist to describe the failure.
kDRErrorStatusErrorInfoStringKey |
extern const CFStringRef kDRErrorStatusErrorInfoStringKey;
A key for the DRErrorStatus dictionary. The value of this key is a CFString object containing a string providing additional information for the error. This value is optional and may not be present if a suitable string does not exist to describe the failure.
kDRErrorStatusErrorKey |
extern const CFStringRef kDRErrorStatusErrorKey;
A key for the DRErrorStatus dictionary. The value of this key is a CFNumber object containing the OSStatus value corresponding to the failure.
kDRErrorStatusErrorStringKey |
extern const CFStringRef kDRErrorStatusErrorStringKey;
A key for the DRErrorStatus dictionary. The value of this key is a CFString object containing the localized string describing the kDRErrorStatusErrorKey key. This value is optional and may not be present if a suitable string does not exist to describe the failure.
kDRErrorStatusKey |
extern const CFStringRef kDRErrorStatusKey;
A key for the DRErrorStatus dictionary, returned by any of the DRxxxCopyStatus calls or kDRxxxStatusChangedNotifications, to describe a failure. The value of this key is a CFDictionary object containing error code and device sense information.
kDRErrorStatusSenseCodeStringKey |
extern const CFStringRef kDRErrorStatusSenseCodeStringKey;
A key for the DRErrorStatus dictionary. The value of this key is a CFString object containing the localized string describing the sense key from the sense data for the failure. This value is optional and will not be present if the kDRErrorStatusSenseKey key is not present or if a suitable string does not exist to describe the failure.
kDRErrorStatusSenseKey |
extern const CFStringRef kDRErrorStatusSenseKey;
A key for the DRErrorStatus dictionary. The value of this key is a CFData object containing the device sense data describing the failure. This value is optional and may not be present if the failure was not device-related, or if the device failed in a way which did not provide meaningful sense data.
DiscRecording Errors |
enum { kDRFirstErr = 0x80020000, kDRInternalErr = kDRFirstErr, /* device errors */ kDRDeviceAccessErr = 0x80020020, kDRDeviceBusyErr = 0x80020021, kDRDeviceCommunicationErr = 0x80020022, kDRDeviceInvalidErr = 0x80020023, kDRDeviceNotReadyErr = 0x80020024, kDRDeviceNotSupportedErr = 0x80020025, /* media errors */ kDRMediaBusyErr = 0x80020040, kDRMediaNotPresentErr = 0x80020041, kDRMediaNotWritableErr = 0x80020042, kDRMediaNotSupportedErr = 0x80020043, kDRMediaNotBlankErr = 0x80020044, kDRMediaNotErasableErr = 0x80020045, kDRMediaInvalidErr = 0x80020046, /* burn errors */ kDRBurnUnderrunErr = 0x80020060, kDRBurnNotAllowedErr = 0x80020061, kDRDataProductionErr = 0x80020062, kDRVerificationFailedErr = 0x80020063, kDRTooManyTracksForDVDErr = 0x80020064, kDRBadLayoutErr = 0x80020065, kDRUserCanceledErr = 0x80020066, kDRFunctionNotSupportedErr = 0x80020067, kDRSpeedTestAlreadyRunningErr = 0x80020068, kDRInvalidIndexPointsErr = 0x80020069, kDRDoubleLayerL0DataZoneBlocksParamErr = 0x8002006A, kDRDoubleLayerL0AlreadySpecifiedErr = 0x8002006B, kDRAudioFileNotSupportedErr = 0x8002006C, kDRBurnPowerCalibrationErr = 0x8002006D, kDRBurnMediaWriteFailureErr = 0x8002006E, kDRTrackReusedErr = 0x8002006F, /* content errors */ kDRFileModifiedDuringBurnErr = 0x80020100, kDRFileLocationConflictErr = 0x80020101, kDRTooManyNameConflictsErr = 0x80020102, kDRFilesystemsNotSupportedErr = 0x80020103, /* drive feature errors */ kDRDeviceBurnStrategyNotAvailableErr = 0x80020200, kDRDeviceCantWriteCDTextErr = 0x80020201, kDRDeviceCantWriteIndexPointsErr = 0x80020202, kDRDeviceCantWriteISRCErr = 0x80020203, kDRDeviceCantWriteSCMSErr = 0x80020204, kDRDevicePreGapLengthNotValidErr = 0x80020205 };
kDRInternalErrInternal Disc Recording error.
kDRDeviceAccessErrDevice is not accessible, hardware is disconnected, etc.
kDRDeviceBusyErrDevice is in use by another process
kDRDeviceCommunicationErrDevice failed to respond properly, unable to recover or retry.
kDRDeviceInvalidErrAttempt was made to use an invalid DRDeviceRef.
kDRDeviceNotReadyErrDevice is unable to respond now, please try again later.
kDRDeviceNotSupportedErrDevice is not supported for the requested burn operation.
kDRMediaBusyErrDisc is busy, usually indicating the volume is unmountable.
kDRMediaNotPresentErrDisc isn't present, and needs to be.
kDRMediaNotWritableErrDisc isn't writable, and needs to be.
kDRMediaNotSupportedErrDisc isn't supported for the requested burn operation.
kDRMediaNotBlankErrDisc isn't blank, and the requested operation needs it to be.
kDRMediaNotErasableErrDisc isn't erasable, and the requested operation needs it to be.
kDRMediaInvalidErrRequested operation attempted on invalid media.
kDRBurnUnderrunErrThe burn failed because the device drained its buffer without burn underrun protection.
kDRBurnNotAllowedErrUser is not allowed to burn to this device on this system.
kDRDataProductionErrError while producing data for the burn
kDRVerificationFailedErrData verification failed
kDRTooManyTracksForDVDErrDVD discs can contain only one track
kDRBadLayoutErrToo many tracks or sessions
kDRUserCanceledErrUser canceled the burn
kDRFunctionNotSupportedErrTrack producer cannot perform requested function
kDRSpeedTestAlreadyRunningErrSpeed test is already running on requested track
kDRInvalidIndexPointsErrIndex points were invalid (overlap, out-of-range, etc)
kDRDoubleLayerL0DataZoneBlocksParamErrLayer 0 transition point is invalid
kDRDoubleLayerL0AlreadySpecifiedErrLayer 0 transition point is already specified for this media
kDRAudioFileNotSupportedErrThe audio file producer does not support the requested file.
kDRBurnPowerCalibrationErrThe device failed to calibrate the laser power level for this media.
kDRBurnMediaWriteFailureErrThe burn failed because of a medium write error.
kDRTrackReusedErrOne or more tracks were included multiple times in the burn
kDRFileModifiedDuringBurnErrFile changed during flatten or burn
kDRFileLocationConflictErrConflicting locations specified for two files
kDRTooManyNameConflictsErrToo many filename conflicts to resolve (10,000,000 or more)
kDRFilesystemsNotSupportedErrThe selected filesystems are not valid for use on this media
kDRDeviceCantWriteCDTextErrDevice does not support writing CD-Text
kDRDeviceBurnStrategyNotAvailableErrDevice does not support the required burn strategy for this burn
kDRDeviceCantWriteIndexPointsErrDevice does not support writing index points
kDRDeviceCantWriteISRCErrDevice does not support writing ISRC
kDRDeviceCantWriteSCMSErrDevice does not support writing SCMS
kDRDevicePreGapLengthNotValidErrDevice does not support the required pregap length for the track
Errors returned from the Disc Recording framework. All errors returned by the Disc Recording framework will fall into the range of 0x80020000 -> 0x8002FFFF.
Last Updated: 2009-08-12