luxlabs header browser preview


@class NSMutableDictionary, BWFigCaptureDevice, BWSphereModeSelector, NSDictionary, NSObject, BWFigCaptureStream, BWStillImageTimeMachine, BWStillImageCaptureSettings, BWStillImageCaptureStreamSettings, NSMutableArray, NSString, NSSet, BWFigCaptureSynchronizedStreamsGroup, BWNoiseReductionAndSharpeningParameters, NSArray, NSData, NSNumber, BWNondisruptiveSwitchingFormatSelector;
@protocol BWFigVideoCaptureStreamDelegate, BWFigVideoCaptureStreamStillImageCaptureDelegate, OS_tcc_identity, BWFaceDetector, BWObjectDetector, OS_dispatch_queue, OS_dispatch_group;

@interface BWFigVideoCaptureStream : NSObject <BWFigCaptureStreamStartStopDelegate, BWPortraitEffectPropertiesDelegate> {
    BWFigCaptureDevice *_parentDevice;
    BOOL _streamHasBeenSuspended;
    NSString *_portType;
    NSDictionary *_cachedVideoOutputConfigurations;
    NSDictionary *_cachedVideoOutputsEnabled;
    float _minimumFrameRate;
    float _maximumFrameRate;
    float _minimumSupportedFrameRate;
    BOOL _rawBufferCompandingEnabled;
    unsigned int _sensorInterfaceRawPixelFormat;
    NSDictionary *_supportedProperties;
    NSArray *_supportedFormats;
    NSArray *_supportedOutputs;
    int _activeFormatIndex;
    int _activeNondisruptiveSwitchingFormatIndex;
    int _activeNondisruptiveSwitchingCommandID;
    NSDictionary *_moduleInfo;
    BOOL _usePinholeCameraFocalLengthInIntrinsicMatrixCalculation;
    BOOL _hasFocus;
    NSDictionary *_sensorIDDictionary;
    float _baseZoomFactor;
    float _baseZoomFactorAfterGDC;
    int _deviceType;
    BOOL _isSlave;
    NSData *_ambientViewingEnvironment;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _cameraAccessLock;
    BOOL _clientProcessHasAccessToCamera;
    int _clientPID;
    NSString *_applicationID;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _sphereLock;
    BOOL _sphereEnabled;
    BOOL _motionDataInvalid;
    BWSphereModeSelector *_sphereModeSelector;
    int _motionDataDeliveryEnabled;
    BOOL _isStationary;
    BOOL _timeMachineEnabled;
    int _timeMachineCapacity;
    BWStillImageTimeMachine *_timeMachine;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _stillImageCaptureStateLock;
    BOOL _grabNextFrame;
    BWStillImageCaptureSettings *_activeResolvedStillImageCaptureSettings;
    BWStillImageCaptureStreamSettings *_activeResolvedStillImageCaptureStreamSettings;
    struct { long long value; int timescale; unsigned int flags; long long epoch; } _largestStillImagePTS;
    NSMutableArray *_stillFusionBracketFramesMetadata;
    struct { long long value; int timescale; unsigned int flags; long long epoch; } _stillCaptureReferenceFramePTS;
    int _skippedFramesCountForAF;
    int _expectedImagesOrErrorsForCaptureStillImageNow;
    int _receivedImagesOrErrorsForCaptureStillImageNow;
    id /* block */ _stillImageBufferTimeMachineHandler;
    BOOL _stillImageCaptureEnabled;
    NSObject<OS_dispatch_queue> *_streamNotificationDispatchQueue;
    NSObject<OS_dispatch_group> *_stillImageCaptureDelegateDispatchGroup;
    NSMutableDictionary *_sifrRAWThumbnailsByTimeMachineIndex;
    struct CGPoint { double x; double y; } _lastDigitalFlashSphereOffsetOpticalCenter;
    NSSet *_detectedObjectTypes;
    BOOL _objectDetectionStartupDeferred;
    NSDictionary *_faceDetectionConfiguration;
    BOOL _faceDetectionEnabled;
    BOOL _eyeDetectionRequired;
    NSDictionary *_lastObjectDetectionConfiguration;
    NSDictionary *_lastFaceDetectionConfiguration;
    NSNumber *_lastFaceDetectionEnabled;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _faceAndObjectDetectionLock;
    BWFigCaptureSynchronizedStreamsGroup *_synchronizedStreamsGroup;
    int _masterToSlaveFrameRateRatio;
    BOOL _streamingRequiredWhenConfiguredAsSlave;
    NSDictionary *_geometricDistortionCoefficients;
    NSDictionary *_geometricDistortionCoefficientsCalibratedForNarrowerFieldOfView;
    BOOL _lumaHistogramMetadataEnabled;
    NSMutableDictionary *_keypointDetectionConfiguration;
    BOOL _keypointDetectionConfigured;
    BOOL _keypointDetectionEnabled;
    BOOL _stillImageKeypointDetectionEnabled;
    BOOL _highlightRecoverySuspended;
    BOOL _highlightRecoveryEnabledWhenConfiguredAsMasterOrSingleStream;
    BOOL _highlightRecoveryEnabledWhenConfiguredAsSlave;
    BOOL _videoHDRFusionEnabled;
    BOOL _videoHDRImageStatisticsEnabled;
    BWNoiseReductionAndSharpeningParameters *_stillImageNoiseAndSharpeningParameters;
    int _band0StrengthModulation;
    BOOL _unifiedBracketingEnabled;
    BOOL _aeStatisticsEnabled;
    BOOL _rawFocusScoresEnabled;
    BOOL _focusBlurMapEnabled;
    BOOL _zeroShutterLagEnabled;
    BOOL _maxExposureDurationHasBeenSet;
    BOOL _variableFrameRateVideoEnabled;
    BOOL _cinematicFramingEnabled;
    struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } _centerStageRectOfInterest;
    int _centerStageFramingMode;
    BOOL _backgroundBlurEnabled;
    BOOL _studioLightingEnabled;
    BOOL _reactionEffectsEnabled;
    BOOL _gesturesEnabled;
    NSDictionary *_zoomFactorToNondisruptiveSwitchingFormatIndexSIFRBinned;
    NSDictionary *_zoomFactorToNondisruptiveSwitchingFormatIndexSIFRNonBinned;
    BWNondisruptiveSwitchingFormatSelector *_nondisruptiveSwitchingFormatSelector;
    BOOL _nonDisruptiveSwitchOverPreventingStillImageCaptureEnabled;
    int _mainFormatSIFRBinningFactor;
    struct CGPoint { double x; double y; } _previewShift;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _averageFrameRateCalculationLock;
    struct { long long value; int timescale; unsigned int flags; long long epoch; } _firstValidPTS;
    struct { long long value; int timescale; unsigned int flags; long long epoch; } _lastValidPTS;
    unsigned int _numberOfBuffersEmitted;
    BOOL _deskCamActive;
}

@property (readonly) BWFigCaptureStream *stream;
@property (nonatomic) id<BWFigVideoCaptureStreamDelegate> delegate;
@property (readonly) NSString *portType;
@property (readonly) int deviceType;
@property (readonly) NSArray *supportedFormats;
@property (readonly) NSArray *supportedOutputs;
@property (readonly) NSDictionary *moduleInfo;
@property (readonly) BOOL usePinholeCameraFocalLengthInIntrinsicMatrixCalculation;
@property (readonly) BOOL hasFocus;
@property (readonly) NSString *sensorIDString;
@property (readonly) NSDictionary *sensorIDDictionary;
@property (readonly) NSDictionary *geometricDistortionCoefficients;
@property (readonly) NSDictionary *geometricDistortionCoefficientsCalibratedForNarrowerFieldOfView;
@property (readonly) BOOL synchronizedStreamsEnabled;
@property (readonly) NSDictionary *sensorColorCalibrationData;
@property (readonly) NSData *flashCalibrationData;
@property (readonly) struct CGPoint { double x; double y; } opticalCenterOffset;
@property (readonly) struct CGPoint { double x; double y; } opticalCenterOffsetInPhysicalSensorDimensions;
@property (readonly) struct CGPoint { double x; double y; } opticalCenterOffsetCalibratedForNarrowerFieldOfView;
@property (readonly) struct CGPoint { double x; double y; } opticalCenterOffsetCalibratedForNarrowerFieldOfViewInPhysicalSensorDimensions;
@property (readonly) BOOL hasOpticalCenterOffsetCalibratedForNarrowerFieldOfView;
@property (readonly) float pixelSize;
@property (readonly) float pixelsPerMicron;
@property (readonly) float focalLength;
@property (readonly) float lensFNumber;
@property (readonly) float gravityFactor;
@property (readonly) NSData *cameraViewMatrix;
@property (readonly) NSData *cameraViewMatrixCalibratedForNarrowerFieldOfView;
@property (readonly) NSNumber *calibrationValidRadiusForNarrowerFieldOfView;
@property (readonly) NSNumber *calibrationValidRadiusForFullFieldOfView;
@property (readonly) NSData *cameraPoseMatrix;
@property (readonly) NSString *nonLocalizedName;
@property (readonly, nonatomic) int activeQuadraBinningFactor;
@property (nonatomic) float aeMaxGain;
@property (nonatomic) float momentCaptureVideoRecordingAEMaxGain;
@property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } maxExposureDurationClientOverride;
@property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } maxExposureDurationFrameworkOverride;
@property (readonly, nonatomic) struct { long long x0; int x1; unsigned int x2; long long x3; } maxExposureDuration;
@property (readonly, nonatomic) float maxEIT;
@property (nonatomic) float minimumFrameRate;
@property (nonatomic) float maximumFrameRate;
@property (nonatomic) float maximumSupportedFrameRate;
@property (nonatomic) float minimumSupportedFrameRate;
@property (readonly, nonatomic) BOOL rawBufferCompandingEnabled;
@property (readonly, nonatomic) unsigned int sensorInterfaceRawPixelFormat;
@property (readonly) BOOL hasSphere;
@property (nonatomic) BOOL enablesSphereWhenAvailable;
@property (readonly) BOOL sphereEnabled;
@property (readonly) BOOL sphereVideoSupported;
@property (nonatomic) BOOL sphereVideoEnabled;
@property (nonatomic) BOOL avoidsSphereRecentering;
@property (nonatomic) BOOL depthDataDeliveryEnabled;
@property (nonatomic) int sphereThermalLevel;
@property (nonatomic) BOOL isStationary;
@property (readonly, nonatomic) struct __CFString { } *currentSphereMode;
@property (readonly, nonatomic) struct __CFString { } *currentNonLowPowerSphereMode;
@property (nonatomic) BOOL motionDataDeliveryEnabled;
@property (readonly) BOOL motionDataInvalid;
@property (nonatomic) BOOL faceDetectionEnabled;
@property (nonatomic) BOOL eyeDetectionRequired;
@property (copy) NSDictionary *faceDetectionConfiguration;
@property (copy, nonatomic) NSSet *detectedObjectTypes;
@property (nonatomic) BOOL objectDetectionStartupDeferred;
@property (readonly, nonatomic) BOOL suspendingSupported;
@property (readonly, nonatomic) BOOL suspended;
@property (readonly, nonatomic) BOOL started;
@property (nonatomic) BOOL stillImageCaptureEnabled;
@property (nonatomic) id<BWFigVideoCaptureStreamStillImageCaptureDelegate> stillImageCaptureDelegate;
@property (nonatomic) BOOL usesStillFusionReferenceFramePTSForDidCaptureCallback;
@property (readonly) int timeMachineCapacity;
@property (nonatomic) BOOL timeMachineEnabled;
@property (copy, nonatomic) id /* block */ stillImageBufferTimeMachineHandler;
@property (readonly, nonatomic) int activeStillImageCaptureType;
@property (readonly, nonatomic) float activeStillImageScaleFactor;
@property (readonly, nonatomic) BOOL providesPreBracketedEV0;
@property (readonly, nonatomic) int lastStillImageCaptureType;
@property (readonly, nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } lastStillImagePTS;
@property (readonly, nonatomic) struct { unsigned int val[8]; } clientAuditToken;
@property (readonly, retain, nonatomic) NSObject<OS_tcc_identity> *tccIdentity;
@property (readonly, nonatomic) BOOL clientProcessHasAccessToCamera;
@property (readonly, nonatomic, getter=isSynchronizationMaster) BOOL synchronizationMaster;
@property (nonatomic) int masterToSlaveFrameRateRatio;
@property (nonatomic) BOOL streamingRequiredWhenConfiguredAsSlave;
@property (nonatomic) BOOL firmwareTimeMachineEnabledWhenConfiguredAsSlave;
@property (nonatomic) BOOL keypointDetectionEnabled;
@property (nonatomic) BOOL stillImageKeypointDetectionEnabled;
@property (nonatomic) int multiBandNoiseReductionMode;
@property (nonatomic) int mainToSIFRFrameRateRatio;
@property (nonatomic) BOOL highlightRecoverySuspended;
@property (readonly, nonatomic) BOOL highlightRecoveryEnabled;
@property (nonatomic) BOOL highlightRecoveryEnabledWhenConfiguredAsMasterOrSingleStream;
@property (nonatomic) BOOL highlightRecoveryEnabledWhenConfiguredAsSlave;
@property (nonatomic) BOOL unifiedBracketingEnabled;
@property (nonatomic) BOOL aeStatisticsEnabled;
@property (nonatomic) BOOL rawFocusScoresEnabled;
@property (nonatomic) BOOL focusBlurMapEnabled;
@property (nonatomic) BOOL digitalFlashEnabled;
@property (nonatomic) BOOL zeroShutterLagEnabled;
@property (nonatomic) BOOL overCaptureEnabled;
@property (retain, nonatomic) id<BWFaceDetector> faceDetector;
@property (retain, nonatomic) id<BWObjectDetector> objectDetector;
@property (nonatomic) BOOL timeLapseEnabled;
@property (nonatomic) BOOL lowLightVideoEnabled;
@property (nonatomic) BOOL cinematicVideoEnabled;
@property (nonatomic) BOOL variableFrameRateVideoEnabled;
@property (readonly, nonatomic) int autoFocusPositionSensorMode;
@property float baseZoomFactor;
@property float baseZoomFactorAfterGDC;
@property (nonatomic) BOOL videoHDRImageStatisticsEnabled;
@property (nonatomic) BOOL videoHDRFusionEnabled;
@property (nonatomic) BOOL pixelFormatIsTenBit;
@property (nonatomic) BOOL colorSpaceIsAppleLog;
@property (nonatomic) struct { int width; int height; } videoCaptureDimensions;
@property (nonatomic) struct { int width; int height; } sensorDimensions;
@property (nonatomic) struct { int width; int height; } physicalSensorDimensions;
@property (nonatomic) BOOL cinematicFramingEnabled;
@property (nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } centerStageRectOfInterest;
@property (nonatomic) int centerStageFramingMode;
@property (nonatomic) BOOL backgroundBlurEnabled;
@property (nonatomic) BOOL studioLightingEnabled;
@property (nonatomic) BOOL reactionEffectsEnabled;
@property (nonatomic) BOOL gesturesEnabled;
@property (nonatomic, getter=isDeskCamActive) BOOL deskCamActive;
@property (readonly, nonatomic) float averageFrameRate;
@property (nonatomic) BOOL continuityCameraIsWired;
@property (nonatomic) int continuityCameraClientDeviceClass;
@property (readonly, nonatomic) NSString *uniqueID;
@property (readonly, nonatomic, getter=isCMIOZoomFactorSupported) BOOL cmioZoomFactorSupported;
@property (nonatomic) float cmioZoomFactor;
@property (nonatomic) int videoStabilizationStrength;
@property (readonly, nonatomic) NSDictionary *zoomFactorToNondisruptiveSwitchingFormatIndexSIFRBinned;
@property (readonly, nonatomic) NSDictionary *zoomFactorToNondisruptiveSwitchingFormatIndexSIFRNonBinned;
@property (readonly, nonatomic) NSArray *nondisruptiveSwitchingZoomFactors;
@property (nonatomic) struct CGPoint { double x0; double x1; } previewShift;
@property (nonatomic) float streamingFrameRateForZoomPIPOverlay;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (void)initialize;

- (void)performReactionEffect:(id)a0;
- (int)setSuspended:(BOOL)a0;
- (void)captureStreamDidStop;
- (int)setActiveNondisruptiveSwitchingFormatIndex:(int)a0;
- (void)dealloc;
- (void)setReactionsInProgressChangedHandler:(id /* block */)a0;
- (int)sourceNodeWillEmitDepthSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0;
- (int)start;
- (int)sourceNodeWillEmitVideoSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0 drivesCameraControls:(BOOL)a1 deliversStills:(BOOL)a2;
- (void)sourceNodeWillEmitDetectedFacesSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })updateMaxExposureDuration;
- (void)sourceNodeWillStopStreaming;
- (void)didBecomeSlaveStream;
- (void)sourceNodeWillEmitStillImageQuadraBufferProcessingError:(int)a0;
- (void)sourceNodeFailedToStartStreaming;
- (void)sourceNodeWillStartStreaming;
- (void)serviceNondisruptiveSwitchingFormatForZoomFactor:(float)a0 frameStatistics:(id)a1 stillImageDigitalFlashMode:(int)a2 isStationary:(BOOL)a3 binnedSIFROnSlaveAllowed:(BOOL)a4;
- (void)didChangeBackgroundBlurAperture:(float)a0;
- (void)sourceNodeWillDiscardVideoSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0;
- (int)stop;
- (void)didChangePortraitEffectStudioLightQuality:(long long)a0;
- (void)prepareForStillImageCaptureFromFirmwareWithStillImageSettings:(id)a0;
- (void)sourceNodeDidStartStreaming;
- (void)captureStillImageFromTimeMachineWithStillImageSettings:(id)a0;
- (void)setRuntimeUpdates:(id)a0;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })updateMaxExposureDurationClientOverride:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0;
- (int)setActiveFormatIndex:(int)a0;
- (int)sourceNodeWillEmitStillImageSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0;
- (void)setTemporalNoiseReductionConfigurationBand0Enabled:(BOOL)a0 rawEnabled:(BOOL)a1 modulation:(int)a2;
- (void)sourceNodeDidDropFrameWithPTS:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0;
- (void)triggerVisionDataBurst;
- (void)willBecomeMasterStream;
- (id)initWithCaptureStream:(id)a0 parentDevice:(id)a1 attributes:(id)a2 sensorIDDictionary:(id)a3 synchronizedStreamsGroup:(id)a4 applicationID:(id)a5 clientAuditToken:(struct { unsigned int x0[8]; })a6 tccIdentity:(id)a7 error:(int *)a8;
- (int)activeNondisruptiveSwitchingFormatIndex;
- (void)setVisionDataKeypointDetectionThreshold:(float)a0;
- (void)didChangeStudioLightingIntensity:(float)a0;
- (void)willCaptureStillImageFromFirmware;
- (void)setVisionDataSuspended:(BOOL)a0;
- (int)sourceNodeWillEmitPointCloudSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0;
- (int)synchronizedStreamsGroupDidUpdateActiveNondisruptiveSwitchingFormatIndex:(int)a0 activeNondisruptiveSwitchingCommandID:(int)a1;
- (void)sourceNodeDidStopStreaming;
- (void)didBecomeMasterStream;
- (BOOL)sourceNodeShouldDiscardStillImageSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0 sensorRawOutput:(BOOL)a1;
- (void)captureStreamDidStart;
- (void)failedToCaptureStillImageFromFirmwareWithError:(int)a0;
- (void)didChangeGesturesEnabled:(BOOL)a0;
- (int)activeFormatIndex;
- (int)activeNondisruptiveSwitchingCommandID;
- (void)setZoomFactorToNondisruptiveSwitchingFormatIndexSIFRBinned:(id)a0 zoomFactorToNondisruptiveSwitchingFormatIndexSIFRNonBinned:(id)a1 mainFormatSIFRBinningFactor:(int)a2;
- (id)noiseReductionAndSharpeningConfigurationForType:(int)a0 gain:(float)a1;
- (void)willBecomeSlaveStream;
- (void)updateAETables;

@end