luxlabs header browser preview


@class JFXPixelRotationSession, NSObject, JFXRemoteCommandServer, CFXThermalPolicyManager, UIView, CFXCameraControlsViewController, NSString, UIColor, CFXEffectBrowserViewController, NSTimer, JFXThreadSafeDictionary, JFXMetadataValidator, CFXCaptureViewController, CFXStageManagerWarningViewController, CFXCameraStreamBufferQueue;
@protocol OS_dispatch_queue, CFXCameraViewControllerDelegate;

@interface CFXCameraViewController : UIViewController <CFXCaptureViewControllerDelegate, JFXRemoteCommandServerDelegate, CFXEffectBrowserContentPresenterViewControllerDelegate, CFXStageManagerWarningViewControllerDelegate, CFXEffectBrowserViewControllerDelegate>

@property (retain, nonatomic) CFXCaptureViewController *captureViewController;
@property (retain, nonatomic) CFXEffectBrowserViewController *effectBrowserViewController;
@property (retain, nonatomic) CFXCameraControlsViewController *cameraControlsViewController;
@property (nonatomic) long long cameraPosition;
@property (nonatomic) long long initialFlashMode;
@property (nonatomic) BOOL cameraControlsShown;
@property (nonatomic) BOOL capturingFunCamMedia;
@property (retain, nonatomic) NSString *effectBrowserPresentedAppIdentifier;
@property (retain, nonatomic) JFXRemoteCommandServer *remoteCommandServer;
@property (retain, nonatomic) UIView *effectsPickerSnapshotContainerView;
@property (readonly, nonatomic) NSObject<OS_dispatch_queue> *externalCaptureSessionInputDeserializationQueue;
@property (readonly, nonatomic) NSObject<OS_dispatch_queue> *externalCaptureSessionInputProcessingQueue;
@property (readonly, nonatomic) NSObject<OS_dispatch_queue> *externalCaptureSessionOutputProcessingQueue;
@property (retain, nonatomic) JFXPixelRotationSession *externalCaptureSessionRotationSession;
@property (nonatomic) long long lastDeviceOrientation;
@property (nonatomic) long long externalCaptureSessionCameraPosition;
@property (nonatomic) BOOL externalCaptureSessionCameraPositionSet;
@property (retain, nonatomic) JFXThreadSafeDictionary *externalCaptureSessionInputFrameTimestamps;
@property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } externalPresentationRect;
@property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } externalContentRect;
@property (retain, nonatomic) NSTimer *effectsInStreamTimer;
@property (retain, nonatomic) CFXThermalPolicyManager *thermalPolicyManager;
@property (retain, nonatomic) JFXMetadataValidator *metadataValidator;
@property (retain, nonatomic) CFXCameraStreamBufferQueue *outputBufferQueue;
@property (retain, nonatomic) CFXStageManagerWarningViewController *stageManagerWarning;
@property (nonatomic) BOOL isEffectsAnalyticsRunning;
@property (readonly, nonatomic) long long aspectRatioCrop;
@property (readonly, nonatomic) long long captureMode;
@property (weak, nonatomic) id<CFXCameraViewControllerDelegate> delegate;
@property (readonly, nonatomic) long long devicePosition;
@property (retain, nonatomic) UIView *effectsPickerDrawer;
@property (readonly, nonatomic, getter=isEffectsPickerHidden) BOOL effectsPickerHidden;
@property (readonly, nonatomic) long long effectsState;
@property (readonly, nonatomic) long long flashMode;
@property (readonly, nonatomic) long long mode;
@property (nonatomic) BOOL showsViewfinder;
@property (nonatomic) double userInterfaceAlpha;
@property (nonatomic) BOOL usesInternalCaptureSession;
@property (retain, nonatomic) UIColor *animojiOnlyBackgroundColor;
@property (retain, nonatomic) NSString *animojiOnlyEffectID;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (void)initialize;
+ (void)preheatWithWindow:(id)a0 captureMode:(long long)a1 devicePosition:(long long)a2 aspectRatioCrop:(long long)a3;

- (void)dealloc;
- (void)viewDidLayoutSubviews;
- (void)viewDidLoad;
- (id)initWithMode:(long long)a0;
- (void)loadView;
- (void).cxx_destruct;
- (void)viewDidAppear:(BOOL)a0;
- (void)stopCaptureSession;
- (void)viewWillTransitionToSize:(struct CGSize { double x0; double x1; })a0 withTransitionCoordinator:(id)a1;
- (void)willMoveToParentViewController:(id)a0;
- (void)startCaptureSession;
- (void)removeAllEffects;
- (void)effectBrowserViewController:(id)a0 didSelectAppWithIdentifier:(id)a1;
- (void)effectBrowserViewController:(id)a0 didSelectEffect:(id)a1;
- (void)effectBrowserViewController:(id)a0 willChangeDockHeight:(double)a1;
- (id)initWithCaptureMode:(long long)a0 devicePosition:(long long)a1 flashMode:(long long)a2 aspectRatioCrop:(long long)a3;
- (void)renderFrameWithImageDataArchive:(id)a0 imagePixelBuffer:(struct __CVBuffer { } *)a1 depthPixelBuffer:(struct __CVBuffer { } *)a2 orientation:(long long)a3 presentationRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a4 contentsRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a5;
- (void)resign;
- (void)setEffectsPickerHidden:(BOOL)a0 animated:(BOOL)a1;
- (BOOL)shouldAlwaysPresentExpandedAppsForEffectBrowserViewController:(id)a0;
- (id)animojiEffectID;
- (void)JFX_exitAnalytics;
- (void)CFX_automationAddEffectWithEffectTypeIdentifier:(id)a0 identifier:(id)a1 string:(id)a2;
- (BOOL)allowLandscapeForEffectBrowserViewController:(id)a0;
- (id)cameraControlsViewControllerForCaptureViewController:(id)a0;
- (void)captureViewController:(id)a0 didCaptureMediaItem:(id)a1;
- (void)captureViewController:(id)a0 didChangeEffectComposition:(id)a1;
- (void)captureViewController:(id)a0 didRenderFrame:(id)a1;
- (void)captureViewController:(id)a0 presentationRectWasPinchedWithState:(long long)a1 scale:(double)a2 velocity:(double)a3;
- (void)captureViewController:(id)a0 switchedToCameraPosition:(long long)a1;
- (void)captureViewControllerCameraFlipButtonWasTapped:(id)a0;
- (void)captureViewControllerDidStartVideoRecording:(id)a0;
- (void)captureViewControllerDidStopVideoRecording:(id)a0;
- (void)captureViewControllerDoneButtonWasTapped:(id)a0;
- (void)captureViewControllerEffectsButtonWasTapped:(id)a0;
- (void)captureViewControllerPresentationRectWasDoubleTapped:(id)a0;
- (void)captureViewControllerStartCaptureSession:(id)a0;
- (void)captureViewControllerStopCaptureSession:(id)a0;
- (void)effectBrowserViewController:(id)a0 didDropOverlayEffect:(id)a1 atScreenLocation:(struct CGPoint { double x0; double x1; })a2 atScreenSize:(struct CGSize { double x0; double x1; })a3 rotationAngle:(double)a4;
- (void)effectBrowserViewController:(id)a0 didRemoveAllEffectsOfType:(id)a1;
- (void)effectBrowserViewController:(id)a0 filterPickerPreviewBackgroundImageAtSizeInPixels:(struct CGSize { double x0; double x1; })a1 completion:(id /* block */)a2;
- (double)effectBrowserViewController:(id)a0 screenTopBarHeightForWindowBounds:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 orientation:(long long)a2;
- (void)effectBrowserViewControllerDidStartCaptureSession:(id)a0;
- (void)effectBrowserViewControllerDidStopCaptureSession:(id)a0;
- (id)initWithCaptureMode:(long long)a0;
- (id)localizedPromptForHidingAnimojiForEffectBrowserViewController:(id)a0;
- (void)noteInputFrameWithTimestamp:(double)a0;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })noteOutputFrameWithTimestamp:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0;
- (void)remoteCommandServer:(id)a0 didReceiveAddShapeCommandWithIdentifier:(id)a1;
- (void)remoteCommandServer:(id)a0 didReceiveAddStickerCommandWithData:(id)a1 offset:(struct CGPoint { double x0; double x1; })a2 scale:(double)a3 rotation:(double)a4;
- (void)remoteCommandServer:(id)a0 didReceiveAddStickerCommandWithIdentifier:(id)a1 offset:(struct CGPoint { double x0; double x1; })a2 scale:(double)a3 rotation:(double)a4;
- (void)remoteCommandServer:(id)a0 didReceiveAddTextCommandWithIdentifier:(id)a1 string:(id)a2;
- (void)remoteCommandServer:(id)a0 didReceiveRemoveEffectsCommandWithTypeIdentifiers:(id)a1;
- (void)remoteCommandServer:(id)a0 didReceiveSetAnimojiCommandWithIdentifier:(id)a1;
- (void)remoteCommandServer:(id)a0 didReceiveSetFilterCommandWithIdentifier:(id)a1;
- (void)remoteCommandServer:(id)a0 didReceiveSetMemojiCommandWithContentsOfFile:(id)a1;
- (void)renderFrameWithImageData:(id)a0 orientation:(long long)a1 presentationRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a2 contentsRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a3;
- (id)selectedAnimojiIdentifierForEffectBrowserViewController:(id)a0;
- (id)selectedFilterIdentifierForEffectBrowserViewController:(id)a0;
- (void)setTransitionState:(long long)a0 animated:(BOOL)a1;
- (BOOL)shouldRotateCellsForDeviceOrientation;
- (void)stageManagerWarningDoneButtonWasTapped:(id)a0;
- (void)updateUIForVideoRecording:(BOOL)a0;

@end