luxlabs header browser preview


@class SCNNode, UIGestureRecognizer;

@interface SCNCameraControlEventHandler : SCNEventHandler {
    SCNNode *_freeViewCameraNode;
    struct CGPoint { double x; double y; } _initialPoint;
    union C3DMatrix4x4 { float components[16]; void /* unknown type, empty encoding */ m[4]; struct { void /* unknown type, empty encoding */ columns[4]; } simd; } _initialMatrix;
    float _initialZoom;
    float _originalFovX;
    float _originalFovY;
    float _originalOrthoScale;
    float _zoomFactor;
    void /* unknown type, empty encoding */ _clickOrigin;
    int _lastGestureFingerCount;
    BOOL _isDraggingWithOneFinger;
    float _roll;
    union C3DMatrix4x4 { float components[16]; void /* unknown type, empty encoding */ m[4]; struct { void /* unknown type, empty encoding */ columns[4]; } simd; } _initialMatrixForRoll;
    UIGestureRecognizer *_pressGesture;
    UIGestureRecognizer *_tapGesture;
    UIGestureRecognizer *_pinchGesture;
    UIGestureRecognizer *_panGesture;
    UIGestureRecognizer *_rotateGesture;
    unsigned long long _stickyAxis;
    struct C3DSphere { void /* unknown type, empty encoding */ vector; } _viewedObjectSphere;
    unsigned char _isViewedObjectSphereComputed : 1;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _stateLock;
    unsigned char _enabled : 1;
    unsigned char _hasAutomaticCameraTarget : 1;
    unsigned char _automaticCameraTargetUpToDate : 1;
    unsigned char _inertia : 1;
    unsigned char _didEverFocusNode : 1;
    unsigned char _allowsTranslation : 1;
    unsigned char _pinchShouldMoveCamera : 1;
    unsigned char _alternateMode : 1;
    unsigned char _upDirIsSet : 1;
    unsigned char _gimbalLockMode : 1;
    unsigned char _inertiaRunning : 1;
    long long _browseMode;
    void /* unknown type, empty encoding */ _upDir;
    struct SCNVector3 { float x; float y; float z; } _cameraTarget;
    struct SCNVector3 { float x; float y; float z; } _autoCameraTarget;
    float _browseScaleFactor;
    double _friction;
    struct CGPoint { double x; double y; } _totalDragWithInertia;
    struct CGPoint { double x; double y; } _inertiaVelocity;
    double _lastSimulationTime;
}

@property BOOL gimbalLockMode;
@property struct SCNVector3 { float x0; float x1; float x2; } gimbalLockVector;
@property unsigned long long stickyAxis;
@property BOOL enableInertia;
@property double friction;
@property BOOL allowsTranslation;
@property BOOL automaticCameraTarget;
@property struct SCNVector3 { float x0; float x1; float x2; } cameraTarget;

+ (void /* unknown type, empty encoding */)frontVectorWithPointOfView:(id)a0;
+ (struct SCNMatrix4 { float x0; float x1; float x2; float x3; float x4; float x5; float x6; float x7; float x8; float x9; float x10; float x11; float x12; float x13; float x14; float x15; })matrixWithNoRoll:(struct SCNMatrix4 { float x0; float x1; float x2; float x3; float x4; float x5; float x6; float x7; float x8; float x9; float x10; float x11; float x12; float x13; float x14; float x15; })a0;

- (void)_handlePan:(id)a0;
- (id)init;
- (void)dealloc;
- (BOOL)enabled;
- (double)zoomFactor;
- (void)setZoomFactor:(double)a0;
- (void)setEnabled:(BOOL)a0;
- (BOOL)gestureRecognizerShouldBegin:(id)a0;
- (void)_handleDoubleTap:(id)a0;
- (void)_handlePress:(id)a0;
- (id)gestureRecognizers;
- (void)_handlePinch:(id)a0;
- (BOOL)gestureRecognizer:(id)a0 shouldRecognizeSimultaneouslyWithGestureRecognizer:(id)a1;
- (void)cameraDidChange;
- (void)sceneWillChange;
- (void)_beginTranslateAtLocation:(struct CGPoint { double x0; double x1; })a0;
- (void)zoomBy:(float)a0;
- (void)_onInertiaTimer;
- (BOOL)_3DConnexionIsPressed;
- (void)zoomBy:(float)a0 animate:(BOOL)a1;
- (double)_browseScale;
- (BOOL)_freeCameraActivated;
- (void)_handleRotation:(id)a0;
- (void)_installFreeViewCameraIfNeeded;
- (BOOL)_isInertiaRunning;
- (void)_prepareFreeViewCamera;
- (void)_resetBrowseScaleFactor;
- (void)_resetFreeViewCamera;
- (void)_rotateWithDrag:(struct CGPoint { double x0; double x1; })a0 mode:(long long)a1 stickyAxis:(unsigned long long)a2;
- (void)_setInertiaRunning:(BOOL)a0;
- (void)_startBrowsingIfNeeded:(struct CGPoint { double x0; double x1; })a0;
- (void)_switchToFreeViewCamera;
- (void)_translateTo:(struct CGPoint { double x0; double x1; })a0;
- (float)_translationCoef;
- (void)activateFreeCamera;
- (void)beginGesture:(id)a0;
- (struct SCNVector3 { float x0; float x1; float x2; })cameraAutomaticTargetPoint;
- (void)cameraWillChange;
- (void)clearRoll;
- (void)computeAutomaticTargetPoint;
- (BOOL)computeBoundingSphereOmittingFloorsForNode:(struct __C3DNode { } *)a0 sphere:(struct C3DSphere { } *)a1;
- (void)endDraggingWithVelocity:(struct CGPoint { double x0; double x1; })a0;
- (void)focusNode:(id)a0;
- (id)freeCamera;
- (void /* unknown type, empty encoding */)frontVector;
- (void)invalidateCameraTarget;
- (void)panWithGestureRecognizer:(id)a0;
- (void)pinchWithGestureRecognizer:(id)a0;
- (void)rotateOf:(double)a0;
- (void)rotateWithGestureRecognizer:(id)a0;
- (void)rotateWithVector:(SEL)a0 mode:(long long)a1;
- (void)sceneDidChange;
- (void)setEnableFreeCamera:(BOOL)a0;
- (void)translateByX:(float)a0 Y:(float)a1 Z:(float)a2;
- (void)updateBrowseScaleFactor;
- (void)viewWillDrawAtTime:(double)a0;
- (struct C3DSphere { })viewedObjectSphere;
- (BOOL)wantsRedraw;

@end