@class CAMThumbnailGenerator, CAMCaptureRequestIntervalometer, PLCameraDeferredProcessingCoordinator, CAMVideoCaptureRequest, CAMLocationController, CAMBurstController, NSMutableSet, NSString, CAMSystemPressureState, CAMIrisVideoController, NSMutableDictionary, CAMCaptureEngine, CAMStillImageCaptureRequest, NSCountedSet, NSObject, CAMPanoramaCaptureRequest, CAMProtectionController, CAMRemoteShutterController, CAMMotionController, CAMPowerController, CAMKeyValueCoalescer, CAMPanoramaPreviewView, AVCaptureVideoPreviewLayer; @protocol CAMPanoramaChangeDelegate, CAMConfigurationDelegate, CAMZoomDelegate, CAMAvailabilityDelegate, CAMExposureDelegate, CAMShallowDepthOfFieldStatusDelegate, CAMSuggestionDelegate, CAMFocusDelegate, CAMHistogramDelegate, CAMCaptureControllerSystemPressureStateDelegate, OS_dispatch_queue, CAMCaptureRunningDelegate, CAMStillImageCapturingVideoDelegate, CAMMachineReadableCodeDelegate, CAMPreviewLayerOverCaptureStatusDelegate, CAMTextRegionResultDelegate, CAMCaptureInterruptionDelegate, CAMCaptureRecoveryDelegate, CAMFacesDelegate, CAMCaptureResultDelegate, CAMBurstDelegate; @interface CUCaptureController : NSObject { CAMPanoramaPreviewView *_panoramaPreviewView; _Atomic int _uniqueRequestIDForConfigurationChange; } @property (readonly, nonatomic) CAMCaptureEngine *_captureEngine; @property (readonly, nonatomic) NSObject *_responseQueue; @property (readonly, nonatomic) CAMThumbnailGenerator *_responseThumbnailGenerator; @property (nonatomic, getter=_isCapturingPairedVideoPaused, setter=_setCapturingPairedVideoPaused:) BOOL _capturingPairedVideoPaused; @property (nonatomic, setter=_setNeedsInitialPairedVideoUpdate:) BOOL _needsInitialPairedVideoUpdate; @property (retain, nonatomic, setter=_setCapturingCTMVideoRequest:) CAMStillImageCaptureRequest *_capturingCTMVideoRequest; @property (retain, nonatomic, setter=_setCapturingVideoRequest:) CAMVideoCaptureRequest *_capturingVideoRequest; @property (retain, nonatomic, setter=_setPendingVideoCaptureRequest:) CAMVideoCaptureRequest *_pendingVideoCaptureRequest; @property (retain, nonatomic, setter=_setCapturingPanoramaRequest:) CAMPanoramaCaptureRequest *_capturingPanoramaRequest; @property (retain, nonatomic, setter=_setCapturingLowLightStillImageRequest:) CAMStillImageCaptureRequest *_capturingLowLightStillImageRequest; @property (retain, nonatomic, setter=_setCurrentBurstIntervalometer:) CAMCaptureRequestIntervalometer *currentBurstIntervalometer; @property (readonly, nonatomic) CAMKeyValueCoalescer *_focusCoalescer; @property (readonly, nonatomic) CAMKeyValueCoalescer *_exposureCoalescer; @property (nonatomic, getter=isRampingVideoZoom) BOOL rampingVideoZoom; @property (nonatomic, getter=isFlashActive, setter=_setFlashActive:) BOOL flashActive; @property (nonatomic, getter=isTorchActive, setter=_setTorchActive:) BOOL torchActive; @property (nonatomic, getter=isHDRSuggested, setter=_setHDRSuggested:) BOOL HDRSuggested; @property (nonatomic, setter=_setLowLightStatus:) long long lowLightStatus; @property (nonatomic, getter=isAutoMacroActive) BOOL autoMacroActive; @property (nonatomic, getter=isAutoMacroSuggested) BOOL autoMacroSuggested; @property (readonly, nonatomic) NSCountedSet *_numberOfInflightRequestsByType; @property (nonatomic, setter=_setMaximumNumberOfStillImageRequests:) long long _maximumNumberOfStillImageRequests; @property (nonatomic, getter=isCaptureAvailable, setter=_setCaptureAvailable:) BOOL captureAvailable; @property (nonatomic, setter=_setDidCompleteInitialConfiguration:) BOOL _didCompleteInitialConfiguration; @property (nonatomic, getter=_isFailedConfigurationPreventingCapture, setter=_setFailedConfigurationPreventingCapture:) BOOL failedConfigurationPreventingCapture; @property (nonatomic, getter=_isVideoCaptureAvailable, setter=_setVideoCaptureAvailable:) BOOL _isVideoCaptureAvailable; @property (nonatomic, getter=isConfigurationAvailable, setter=_setConfigurationAvailable:) BOOL configurationAvailable; @property (nonatomic, getter=isFlashAvailable, setter=_setFlashAvailable:) BOOL flashAvailable; @property (nonatomic, getter=isTorchAvailable, setter=_setTorchAvailable:) BOOL torchAvailable; @property (nonatomic, setter=_setFlashCompromise:) unsigned long long flashCompromise; @property (readonly, nonatomic) NSMutableSet *_identifiersForActiveLivePhotoVideoCaptures; @property (readonly, nonatomic) NSMutableSet *_identifiersForActiveCTMVideoCaptures; @property (readonly, nonatomic) BOOL _shouldResetFocusAndExposureAfterCapture; @property (readonly, nonatomic) NSMutableDictionary *_persistenceUUIDToSignpostID; @property (nonatomic, setter=_setNextSignpostID:) unsigned long long _nextSignpostID; @property (retain, nonatomic, setter=_setDeferredProcessingCoordinator:) PLCameraDeferredProcessingCoordinator *_deferredProcessingCoordinator; @property (retain, nonatomic, setter=_setCurrentCameraSystemPressureState:) CAMSystemPressureState *currentCameraSystemPressureState; @property (readonly, nonatomic) CAMLocationController *_locationController; @property (readonly, nonatomic) CAMMotionController *_motionController; @property (readonly, nonatomic) CAMBurstController *_burstController; @property (readonly, nonatomic) CAMProtectionController *_protectionController; @property (readonly, nonatomic) CAMPowerController *_powerController; @property (readonly, nonatomic) CAMIrisVideoController *_irisVideoController; @property (readonly, nonatomic) CAMRemoteShutterController *_remoteShutterController; @property (readonly, nonatomic, getter=isPreviewDisabled) BOOL previewDisabled; @property (readonly, nonatomic) AVCaptureVideoPreviewLayer *videoPreviewLayer; @property (readonly, nonatomic) CAMPanoramaPreviewView *panoramaPreviewView; @property (weak, nonatomic) id previewLayerOverCaptureStatusDelegate; @property (readonly, nonatomic, getter=isCapturingStillImage) BOOL capturingStillImage; @property (weak, nonatomic) id stillImageCapturingVideoDelegate; @property (readonly, nonatomic, getter=isCapturingLivePhotoVideo) BOOL capturingLivePhotoVideo; @property (readonly, nonatomic, getter=isCapturingCTMVideo) BOOL capturingCTMVideo; @property (readonly, nonatomic, getter=isCapturingLowLightImage) BOOL capturingLowLightImage; @property (readonly, nonatomic, getter=isCapturingVideo) BOOL capturingVideo; @property (readonly, nonatomic, getter=isCapturingStandardVideo) BOOL capturingStandardVideo; @property (readonly, nonatomic, getter=isCapturingPanorama) BOOL capturingPanorama; @property (weak, nonatomic) id panoramaChangeDelegate; @property (readonly, nonatomic, getter=isCapturingBurst) BOOL capturingBurst; @property (readonly, nonatomic) unsigned long long currentBurstCount; @property (weak, nonatomic) id burstDelegate; @property (readonly, nonatomic, getter=isCapturingTimelapse) BOOL capturingTimelapse; @property (weak, nonatomic) id configurationDelegate; @property (weak, nonatomic) id suggestionDelegate; @property (weak, nonatomic) id availabilityDelegate; @property (weak, nonatomic) id focusDelegate; @property (weak, nonatomic) id exposureDelegate; @property (weak, nonatomic) id shallowDepthOfFieldStatusDelegate; @property (readonly, nonatomic) BOOL shouldAllowUserToChangeFocusAndExposure; @property (weak, nonatomic) id facesDelegate; @property (weak, nonatomic) id machineReadableCodeDelegate; @property (weak, nonatomic) id histogramDelegate; @property (weak, nonatomic) id textRegionResultDelegate; @property (weak, nonatomic) id resultDelegate; @property (weak, nonatomic) id zoomDelegate; @property (weak, nonatomic) id recoveryDelegate; @property (weak, nonatomic) id runningDelegate; @property (weak, nonatomic) id interruptionDelegate; @property (readonly, nonatomic, getter=isInterrupted) BOOL interrupted; @property (weak, nonatomic) id systemPressureStateDelegate; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (float)focusLensPositionCurrentSentinel; - (void)stillImageRequestDidStartCapturing:(id)a0 resolvedSettings:(id)a1; - (void)panoramaRequestDidStartCapturing:(id)a0; - (void)panoramaRequestDidStopCapturing:(id)a0 interrupted:(BOOL)a1; - (void)stillImageRequestDidStopCapturingStillImage:(id)a0; - (void)videoRequestDidStartCapturing:(id)a0; - (id)_thumbnailImageFromVideoCaptureResult:(id)a0 previewOrientation:(long long)a1 previewImage:(out id *)a2; - (void)videoRequestDidStopCapturing:(id)a0; - (void)stillImageRequestDidCompleteCapture:(id)a0 error:(id)a1; - (void)stillImageRequestDidBeginCaptureBeforeResolvingSettings:(id)a0; - (id)_exposureKVOKeyPaths; - (BOOL)_kvoDidStartForChange:(id)a0; - (void)forceDisableSubjectAreaChangeMonitoring; - (void)changeToTorchMode:(long long)a0; - (void)updateRealtimeMetadataConfigurationForGraphConfiguration:(id)a0 isCapturing:(BOOL)a1; - (void)changeToPanoramaDirection:(long long)a0; - (void)unregisterEffectsPreviewSampleBufferDelegate:(id)a0; - (void)_setupZoomPIPMonitoring; - (void)registerEffectsPreviewSampleBufferDelegate:(id)a0; - (BOOL)intervalometer:(id)a0 didGenerateCaptureRequest:(id)a1; - (void)dealloc; - (void)changeToLockedExposure; - (id)_suggestionKeyPaths; - (void)_updateMaximumNumberOfStillImageRequestsAfterCapturedRequestIfNecessary:(id)a0; - (void)stillImageRequestWillStartCapturingVideo:(id)a0; - (void)cancelCTMCaptureForSettings:(id)a0; - (void)focusAndExposeAtPoint:(struct CGPoint { double x0; double x1; })a0 lockFocus:(BOOL)a1 resetExposureTargetBias:(BOOL)a2; - (BOOL)_shouldLockWhiteBalanceForVideoCaptureRequest:(id)a0; - (void)_focusResultChangedForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2; - (void)prepareDeferredProcessingWithStillImageRequest:(id)a0; - (void)_updateAvailabilityWhenPreparingToStopCapturingForRequest:(id)a0; - (id)_commandForResetFocus:(BOOL)a0 resetExposure:(BOOL)a1 resetExposureTargetBias:(BOOL)a2; - (void)_beginTrackingCTMVideoRecordingForIdentifier:(id)a0; - (BOOL)_internalStartCapturingVideoWithRequest:(id)a0 error:(id *)a1; - (void)_beginTrackingLivePhotoVideoRecordingForIdentifier:(id)a0; - (void)_suggestionResultChangedForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2; - (BOOL)stopCapturingPanoramaInterrupted:(BOOL)a0; - (int)_uniqueRequestIDForChangeToModeAndDevice; - (void)changeToVideoZoomFactor:(double)a0 graphConfiguration:(id)a1; - (BOOL)startCapturingPanoramaWithRequest:(id)a0 error:(id *)a1; - (void)stillImageRequestDidUnblockResponsiveCapture:(id)a0; - (void)setCinematicFocusAtPoint:(struct CGPoint { double x0; double x1; })a0 useFixedOpticalFocus:(BOOL)a1 useHardFocus:(BOOL)a2; - (void)videoRequest:(id)a0 didCompleteCaptureWithResult:(id)a1; - (id)_availabilityKeyPaths; - (void)_setupSystemPressureStateMonitoring; - (BOOL)_wantsMachineReadableCodesForGraphConfiguration:(id)a0; - (void)panoramaRequest:(id)a0 didCompleteCaptureWithResult:(id)a1; - (void)unregisterCaptureService:(id)a0; - (void)_tearDownOverCapturePreviewMonitoring; - (BOOL)stopCapturingVideo; - (void)_setupAvailabilityMonitoring; - (id)_updateFocusAndExposureForStartPanorama; - (void)notifyTimelapseControllerFinishedUpdatingWithLocation; - (BOOL)_canBeginCaptureCheckAvailability:(BOOL)a0 error:(id *)a1; - (void)_systemPressureStateMonitoringChangedForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2; - (void)_resetFocusAndExposureIfAppropriateForReason:(long long)a0; - (void)stopMonitoringForHDRSuggestions; - (void)_setupFocusMonitoring; - (id)initWithCaptureConfiguration:(id)a0 zoomFactor:(double)a1 outputToExternalStorage:(BOOL)a2 engineOptions:(long long)a3 locationController:(id)a4 motionController:(id)a5 burstController:(id)a6 protectionController:(id)a7 powerController:(id)a8 irisVideoController:(id)a9 remoteShutterController:(id)a10; - (id)_commandForLockingExposureIncludingFocus:(BOOL)a0; - (void)_subjectAreaDidChange:(id)a0; - (void)handleSessionInterruptionForReason:(long long)a0; - (void)_resetFocusAndExposureAfterCapture; - (BOOL)_wantsImageAnalysisForGraphConfiguration:(id)a0; - (BOOL)initiateCTMCaptureWithSettings:(id)a0 error:(id *)a1; - (void)stopRampToVideoZoomFactor; - (void)_setupExposureMonitoring; - (void)intervalometer:(id)a0 didReachMaximumCountWithRequest:(id)a1; - (BOOL)_shouldTrackInflightCountForRequest:(id)a0; - (BOOL)commitCTMCaptureWithRequest:(id)a0 error:(id *)a1; - (id)_sanitizePanoramaRequest:(id)a0; - (void)changeToPanoramaEncodingBehavior:(long long)a0; - (void)stillImageRequest:(id)a0 didStopCapturingLivePhotoVideoForCoordinationInfo:(id)a1; - (void)_didPlayBeginVideoRecordingSound; - (void)_teardownZoomMonitoring; - (void)changeToPortraitLightingEffectStrength:(double)a0; - (BOOL)startCapturingVideoWithRequest:(id)a0 error:(id *)a1; - (void)willPerformRecoveryFromRuntimeError:(id)a0; - (void)_updateMaximumNumberOfStillImageRequestsAfterBurst; - (BOOL)_useSmoothFocus; - (void)_updateAutoMacroActive; - (void)_notifyDelegateOfConfigurationAvailabilityChanged:(BOOL)a0; - (void)setCinematicFocusForMetadataObject:(id)a0 atPoint:(struct CGPoint { double x0; double x1; })a1 useFixedOpticalFocus:(BOOL)a2 useHardFocus:(BOOL)a3; - (id)_commandForChangeToGraphConfiguration:(id)a0 zoomFactor:(double)a1 minimumExecutionTime:(double)a2 outputToExternalStorage:(BOOL)a3 outRequestID:(int *)a4; - (void)prepareToCaptureStillImageAtSystemTime:(long long)a0; - (void)_handleSystemPressureState:(id)a0; - (id)_sanitizeStillImageRequest:(id)a0; - (void)_teardownFocusAndExposureMonitoring; - (void)_zoomPIPChangedForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2; - (void)changeToVideoRecordingCaptureOrientation:(long long)a0; - (void)_availabilityResultChangedForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2; - (void)_updateAvailabilityAfterEnqueuedRequest:(id)a0; - (void)changeToFlashMode:(long long)a0; - (void)changeToTorchLevel:(float)a0; - (void)setFallbackPrimaryConstituentDeviceSelection:(long long)a0; - (void)unregisterVideoThumbnailContentsDelegate:(id)a0; - (BOOL)_internalCaptureStillImageWithRequest:(id)a0 error:(id *)a1; - (unsigned long long)_maximumNumberOfStillImageRequestsDuringBurst; - (void)resumeCapturingStillImagePairedVideo; - (void)_processCapturedBurstRequest:(id)a0 withResult:(id)a1; - (void)invalidateController; - (id)_systemPressureStateMonitoringKeyPaths; - (void)startRampToVideoZoomFactor:(double)a0 withDuration:(double)a1 zoomRampTuning:(long long)a2 graphConfiguration:(id)a3; - (void)startRampToVideoZoomFactor:(double)a0 withRate:(float)a1 graphConfiguration:(id)a2; - (void)queryTimelapseDimensionsWithCompletionBlock:(id /* block */)a0; - (void)focusAtCenterForVideoRecording; - (void)_updateAvailabilityAfterCapturedRequest:(id)a0; - (void)handleSessionDidStopRunning; - (void)panoramaRequest:(id)a0 didReceiveNotification:(long long)a1; - (void)pauseCapturingStillImagePairedVideo; - (void)_teardownSystemPressureStateMonitoring; - (void)_overCapturePreviewStatusChangedForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2; - (void)changeToAspectRatioCrop:(long long)a0; - (void)observeValueForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2 context:(void *)a3; - (void)_teardownZoomPIPMonitoring; - (void)_endTrackingLivePhotoVideoRecordingForIdentifier:(id)a0; - (void)_zoomResultChangedForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2; - (BOOL)captureStillImageWithRequest:(id)a0 error:(id *)a1; - (void)changeToPreviewFilters:(id)a0; - (void).cxx_destruct; - (void)_setupZoomMonitoring; - (id)_zoomMonitoringKeyPaths; - (void)cancelDelayedFocusAndExposureReset; - (void)_handleShallowDepthOfFieldStatusChangedNotification:(id)a0; - (void)handleSessionDidStartRunning; - (BOOL)_kvoDidEndForChange:(id)a0; - (void)changeToTimelapseCaptureRate:(float)a0; - (void)logCaptureAvailabilityDescription; - (void)changeToLowLightMode:(long long)a0; - (BOOL)_shouldManageFocusForMode:(long long)a0; - (BOOL)_shouldMonitorSystemPressureState; - (void)_updateMaximumNumberOfStillImageRequestsAfterEnqueuingRequest:(id)a0; - (void)stillImageRequest:(id)a0 didCompleteVideoCaptureWithResult:(id)a1; - (BOOL)_shouldLockWhiteBalanceForCTMVideoRequest:(id)a0; - (int)changeToGraphConfiguration:(id)a0 zoomFactor:(double)a1 minimumExecutionTime:(double)a2 outputToExternalStorage:(BOOL)a3; - (void)_handleCaptureEngineExecutionNotification:(id)a0; - (id)_updateFocusAndExposureForStartBurstCapture; - (void)_teardownSuggestionMonitoring; - (void)_exposureResultChangedForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2; - (void)startCaptureSessionWithRetryCount:(unsigned long long)a0 retryInterval:(double)a1 logReason:(id)a2 completion:(id /* block */)a3; - (void)_startCaptureSignpostIntervalForPersistenceUUID:(id)a0; - (void)changeExposureTargetBias:(float)a0; - (void)changeToVideoHDRSuspended:(BOOL)a0; - (void)changeToPreviewConfiguration:(unsigned long long)a0; - (void)_updateAvailabilityAfterStopCapturingForRequest:(id)a0; - (void)stopCapturingBurst; - (id)_commandForConfiguration:(id)a0 zoomFactor:(double)a1 outputToExternalStorage:(BOOL)a2 outRequestID:(int *)a3; - (void)lockFocusAtLensPosition:(float)a0 completionBlock:(id /* block */)a1; - (void)metadataWasRecognized:(id)a0 forMetadataObjectTypes:(id)a1 deviceFormat:(id)a2; - (void)resetFocusAndExposure; - (void)stopCaptureSession; - (void)handleSessionInterruptionEnded; - (id)_identifierForPendingVideoForStillImageRequest:(id)a0; - (id)_thumbnailImageFromStillImageCaptureResult:(id)a0 imageOrientation:(long long)a1; - (void)_teardownAvailabilityMonitoring; - (void)attemptToEndInterruptions; - (void)changeToPortraitAperture:(double)a0; - (void)focusAtPoint:(struct CGPoint { double x0; double x1; })a0 lockFocus:(BOOL)a1; - (void)startMonitoringForHDRSuggestions; - (void)_resetFocusAndExposureAfterCaptureForType:(long long)a0; - (void)_setupSuggestionMonitoring; - (void)endCTMVideoCapture; - (void)changeToPreviewEnabledWithConfiguration:(unsigned long long)a0; - (void)queryVideoDimensionsWithCompletionBlock:(id /* block */)a0; - (void)_notifyDelegateOfCaptureAvailabilityChanged:(BOOL)a0; - (BOOL)_shouldLockWhiteBalanceForActiveVideoRequest; - (void)_setupFocusAndExposureMonitoring; - (void)cancelAutoResumeAfterDate:(id)a0; - (void)registerCaptureService:(id)a0; - (void)changeToLockedFocusAndExposure; - (void)stopCaptureSessionWithCompletion:(id /* block */)a0; - (void)stillImageRequest:(id)a0 didCompleteStillImageCaptureWithResult:(id)a1; - (id)_focusKVOKeyPaths; - (BOOL)hasActiveCTMVideoCaptures; - (void)_endTrackingCTMVideoRecordingForIdentifier:(id)a0; - (id)_realtimeMetadataCommandsForMode:(long long)a0 videoConfiguration:(long long)a1 capturing:(BOOL)a2 wantsMachineReadableCodes:(BOOL)a3 wantsImageAnalysis:(BOOL)a4; - (id)_sanitizeVideoRequest:(id)a0; - (void)_processPendingVideoCaptureRequest:(id)a0; - (BOOL)startCapturingBurstWithRequest:(id)a0 error:(id *)a1; - (void)_updateAutoMacroSuggested; - (void)_updateAvailabilityForRequestType:(long long)a0; - (int)applyCaptureConfiguration:(id)a0 zoomFactor:(double)a1 outputToExternalStorage:(BOOL)a2; - (void)setCapturingTimelapse:(BOOL)a0 forDevicePosition:(long long)a1; - (long long)_cinematicMetadataObjectIDForMetadataObject:(id)a0; - (void)_endCaptureSignpostIntervalForPersistenceUUID:(id)a0; - (void)_scheduleFocusAndExposureResetAfterCaptureIfNecessaryForType:(long long)a0; - (void)startCaptureSession; - (void)_setupOverCapturePreviewMonitoring; - (id)_textAnalysisImageFromStillImageResult:(id)a0 imageOrientation:(long long)a1; - (void)panoramaConfigurationDidChangeWithImageQueue:(struct _CAImageQueue { } *)a0 direction:(long long)a1; - (void)registerVideoThumbnailContentsDelegate:(id)a0; - (void)changeToPreviewDisabled; - (void)stillImageRequest:(id)a0 didStopCapturingCTMVideoForCoordinationInfo:(id)a1; @end