luxlabs header browser preview


@class SCNNode, SCNView, NSString, SCNCameraController, NSDictionary, UIGestureRecognizer;
@protocol SCNCameraNavigationControllerDelegate;

@interface SCNCameraNavigationController : NSObject <SCNEventHandler, SCNCameraControllerDelegate> {
    UIGestureRecognizer *_pressGesture;
    UIGestureRecognizer *_tapGesture;
    UIGestureRecognizer *_pinchGesture;
    UIGestureRecognizer *_panGesture;
    UIGestureRecognizer *_rotateGesture;
    BOOL _isDraggingWithOneFinger;
    long long _lastGestureFingerCount;
    long long _browseMode;
    float _cameraOriginalFieldOfView;
    float _fieldOfViewZoomFactor;
    float _originalOrthoScale;
    float _orthographicZoomFactor;
    BOOL _enabled;
    BOOL _translationAllowed;
    BOOL _didEverFocusNode;
    BOOL _isSceneBoundingSphereComputed;
    BOOL _cameraTargetComputed;
    BOOL _pinchShouldMoveCamera;
    BOOL _shouldUpdateTarget;
    BOOL _shouldIgnoreMomentumEvents;
    BOOL _isOrbiting;
    BOOL _recordingPointOfViewEvents;
    BOOL _mouseDown;
    union { void /* unknown type, empty encoding */ vector; void /* unknown type, empty encoding */ center; struct { float x; float y; float z; float radius; } ; } _sceneBoundingSphere;
    void /* unknown type, empty encoding */ _translationOrigin;
    float _initialZoom;
    void /* unknown type, empty encoding */ _initialPointOfViewWorldPosition;
    double _lastKeyInputTime;
    struct CGPoint { double x; double y; } _initialInputLocation;
    struct CGPoint { double x; double y; } _lastInputLocation;
    struct CGPoint { double x; double y; } _accumulatedDrag;
    double _lastRotationAngle;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _drawAtTimeLock;
    struct { BOOL stickyMoveEnabled; void /* unknown type, empty encoding */ direction; unsigned long long pickedAxis; unsigned long long userStickyAxis; } _stickyAxis;
    struct { BOOL automaticLocationUpToDate; BOOL hasAutomatic; } _target;
    struct { struct CGPoint { double x; double y; } lastDragLocation; struct CGPoint { double x; double y; } velocity; double lastDragTime; } _inertia;
    struct { struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } lock; NSDictionary *keyCodeConfiguration; struct set<unsigned short, std::less<unsigned short>, std::allocator<unsigned short>> { struct __tree<unsigned short, std::less<unsigned short>, std::allocator<unsigned short>> { void *__begin_node_; struct __compressed_pair<std::__tree_end_node<std::__tree_node_base<void *> *>, std::allocator<std::__tree_node<unsigned short, void *>>> { struct __tree_end_node<std::__tree_node_base<void *> *> { void *__left_; } __value_; } __pair1_; struct __compressed_pair<unsigned long, std::less<unsigned short>> { unsigned long long __value_; } __pair3_; } __tree_; } keyDown; struct vector<unsigned short, std::allocator<unsigned short>> { unsigned short *__begin_; unsigned short *__end_; struct __compressed_pair<unsigned short *, std::allocator<unsigned short>> { unsigned short *__value_; } __end_cap_; } forward; struct vector<unsigned short, std::allocator<unsigned short>> { unsigned short *__begin_; unsigned short *__end_; struct __compressed_pair<unsigned short *, std::allocator<unsigned short>> { unsigned short *__value_; } __end_cap_; } backward; struct vector<unsigned short, std::allocator<unsigned short>> { unsigned short *__begin_; unsigned short *__end_; struct __compressed_pair<unsigned short *, std::allocator<unsigned short>> { unsigned short *__value_; } __end_cap_; } left; struct vector<unsigned short, std::allocator<unsigned short>> { unsigned short *__begin_; unsigned short *__end_; struct __compressed_pair<unsigned short *, std::allocator<unsigned short>> { unsigned short *__value_; } __end_cap_; } right; } _keyboard;
    struct { BOOL hasShift; BOOL hasOption; } _scrollWheelModifiers;
}

@property (readonly, nonatomic) SCNCameraController *cameraController;
@property (nonatomic) id<SCNCameraNavigationControllerDelegate> delegate;
@property (nonatomic) unsigned long long stickyAxis;
@property (nonatomic) struct SCNVector3 { float x0; float x1; float x2; } cameraTarget;
@property (nonatomic) BOOL gimbalLockMode;
@property (nonatomic) BOOL enableInertia;
@property (nonatomic) double friction;
@property (nonatomic) BOOL automaticCameraTarget;
@property (nonatomic) BOOL enabled;
@property (nonatomic) BOOL enableFreeCamera;
@property (readonly, nonatomic) SCNNode *freeCamera;
@property (nonatomic) SCNView *view;
@property (nonatomic) BOOL autoSwitchToFreeCamera;
@property (nonatomic) BOOL allowsTranslation;
@property (nonatomic) double flyModeVelocity;
@property (nonatomic) double panSensitivity;
@property (nonatomic) double truckSensitivity;
@property (nonatomic) double rotationSensitivity;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

- (id)initWithView:(id)a0;
- (void)_handlePan:(id)a0;
- (void)dealloc;
- (double)zoomFactor;
- (void)setZoomFactor:(double)a0;
- (id).cxx_construct;
- (BOOL)gestureRecognizerShouldBegin:(id)a0;
- (void)_handleDoubleTap:(id)a0;
- (void)_handlePress:(id)a0;
- (void).cxx_destruct;
- (id)gestureRecognizers;
- (void)_handlePinch:(id)a0;
- (id)pointOfView;
- (BOOL)gestureRecognizer:(id)a0 shouldRecognizeSimultaneouslyWithGestureRecognizer:(id)a1;
- (float)_targetDistance;
- (void)cameraDidChange;
- (void)__didChangePointOfView;
- (void)__willChangePointOfView;
- (void)sceneWillChange;
- (void)zoomBy:(float)a0;
- (void)zoomBy:(float)a0 animate:(BOOL)a1;
- (float)_cappedTranslationDelta:(float)a0;
- (void)_computeAutomaticTargetPointIfNeeded;
- (BOOL)_computeBoundingSphereOmittingFloorsForNode:(struct __C3DNode { } *)a0 sphere:(struct C3DSphere { } *)a1;
- (void)_computeStickyAxisIfNeeded:(struct CGPoint { double x0; double x1; })a0;
- (void)_computeTranslationOrigin3DFromPoint:(struct CGPoint { double x0; double x1; })a0;
- (void /* unknown type, empty encoding */)_defaultTargetForScene:(id)a0;
- (unsigned long long)_effectiveStickyAxis;
- (BOOL)_freeCameraActivated;
- (void)_handleRotation:(id)a0;
- (void)_installFreeViewCameraIfNeeded;
- (double)_modeSensitivity;
- (float)_orthographicScaleForZoomFactor:(float)a0;
- (float)_orthographicZoomFactorForProposedZoomFactor:(float)a0;
- (float)_pointOfViewOrthographicScale;
- (BOOL)_pointOfViewUsesOrthographicProjection;
- (void)_prepareFreeViewCamera;
- (void)_resetFreeViewCamera;
- (union { struct { float x0; float x1; float x2; float x3; } x0; })_sceneBoundingSphere;
- (void)_setPointOfViewOrthographicScale:(float)a0;
- (void)_setupUpVector;
- (void)_startBrowsingIfNeeded:(struct CGPoint { double x0; double x1; })a0;
- (void)_stopInertia;
- (void)_switchToFreeViewCamera;
- (void)_translateToViewPoint:(struct CGPoint { double x0; double x1; })a0;
- (float)_translationCoef;
- (void)_willBeginInteraction;
- (void)activateFreeCamera;
- (void)beginGesture:(id)a0;
- (struct SCNVector3 { float x0; float x1; float x2; })cameraAutomaticTargetPoint;
- (void)cameraInertiaDidEndForController:(id)a0;
- (void)cameraInertiaWillStartForController:(id)a0;
- (void)cameraWillChange;
- (void)focusNode:(id)a0;
- (void)focusNodes:(id)a0;
- (struct SCNVector3 { float x0; float x1; float x2; })gimbalLockVector;
- (void)invalidateCameraTarget;
- (void)panWithGestureRecognizer:(id)a0;
- (void)pinchWithGestureRecognizer:(id)a0;
- (void)rotateOf:(double)a0;
- (void)rotateWithGestureRecognizer:(id)a0;
- (void)sceneDidChange;
- (void)setGimbalLockVector:(struct SCNVector3 { float x0; float x1; float x2; })a0;
- (void)translateByX:(float)a0 Y:(float)a1 Z:(float)a2;
- (void)viewDidDrawAtTime:(double)a0;
- (void)viewWillDrawAtTime:(double)a0;
- (BOOL)wantsRedraw;
- (void /* unknown type, empty encoding */)worldFront;

@end