33 lines
1.0 KiB
Swift
33 lines
1.0 KiB
Swift
import Foundation
|
|
|
|
enum CameraError: Error {
|
|
case cameraUnavailable
|
|
case cannotAddInput
|
|
case cannotAddOutput
|
|
case createCaptureInput(Error)
|
|
case deniedAuthorization
|
|
case restrictedAuthorization
|
|
case unknownAuthorization
|
|
}
|
|
|
|
extension CameraError: LocalizedError {
|
|
var errorDescription: String? {
|
|
switch self {
|
|
case .cameraUnavailable:
|
|
return "Camera unavailable"
|
|
case .cannotAddInput:
|
|
return "Cannot add capture input to session"
|
|
case .cannotAddOutput:
|
|
return "Cannot add video output to session"
|
|
case .createCaptureInput(let error):
|
|
return "Creating capture input for camera: \(error.localizedDescription)"
|
|
case .deniedAuthorization:
|
|
return "Camera access denied"
|
|
case .restrictedAuthorization:
|
|
return "Attempting to access a restricted capture device"
|
|
case .unknownAuthorization:
|
|
return "Unknown authorization status for capture device"
|
|
}
|
|
}
|
|
}
|