Source-SCCamera/ManagedCapturer/SCManagedCaptureDevice.h

61 lines
1.5 KiB
Objective-C

//
// SCManagedCaptureDevice.h
// Snapchat
//
// Created by Liu Liu on 4/22/15.
// Copyright (c) 2015 Liu Liu. All rights reserved.
//
#import <SCCameraFoundation/SCManagedCaptureDevicePosition.h>
#import <SCCameraFoundation/SCManagedCaptureDeviceProtocol.h>
#import <AVFoundation/AVFoundation.h>
#import <Foundation/Foundation.h>
extern CGFloat const kSCMaxVideoZoomFactor;
extern CGFloat const kSCMinVideoZoomFactor;
@class SCManagedCaptureDevice;
@protocol SCManagedCaptureDeviceDelegate <NSObject>
@optional
- (void)managedCaptureDevice:(SCManagedCaptureDevice *)device didChangeAdjustingExposure:(BOOL)adjustingExposure;
- (void)managedCaptureDevice:(SCManagedCaptureDevice *)device didChangeExposurePoint:(CGPoint)exposurePoint;
- (void)managedCaptureDevice:(SCManagedCaptureDevice *)device didChangeFocusPoint:(CGPoint)focusPoint;
@end
@interface SCManagedCaptureDevice : NSObject <SCManagedCaptureDeviceProtocol>
@property (nonatomic, weak) id<SCManagedCaptureDeviceDelegate> delegate;
// These two class methods are thread safe
+ (instancetype)front;
+ (instancetype)back;
+ (instancetype)dualCamera;
+ (instancetype)deviceWithPosition:(SCManagedCaptureDevicePosition)position;
+ (BOOL)is1080pSupported;
+ (BOOL)isMixCaptureSupported;
+ (BOOL)isNightModeSupported;
+ (BOOL)isEnhancedNightModeSupported;
+ (CGSize)defaultActiveFormatResolution;
+ (CGSize)nightModeActiveFormatResolution;
- (BOOL)softwareZoom;
- (SCManagedCaptureDevicePosition)position;
- (BOOL)isAvailable;
@end