         self.cameraDevice.changeCurrentDevice(position)
         self.configureInputDevice()
     }
-
+    
     public func compatibleCameraFocus() -> [CameraEngineCameraFocus] {
         if let currentDevice = self.cameraDevice.currentDevice {
             return CameraEngineCameraFocus.availableFocus().filter {

    private var sessionQueue: dispatch_queue_t! = {
        dispatch_queue_create(cameraEngineSessionQueueIdentifier, DISPATCH_QUEUE_SERIAL)
    }()

    private var _torchMode: AVCaptureTorchMode = .Off
    public var torchMode: AVCaptureTorchMode! {
        get {

    public func compatibleDetectionMetadata() -> [CameraEngineCaptureOutputDetection] {
        return CameraEngineCaptureOutputDetection.availableDetection()
    }
    
    private func configureFlash(mode: AVCaptureFlashMode) {
        if let currentDevice = self.cameraDevice.currentDevice where currentDevice.flashAvailable && currentDevice.flashMode != mode {
            do {
