luxlabs header browser preview


@class PKInputPointWeightedAverageFilter, PKInputPointAltitudeAndAzimuthEdgeFilter, PKInputPointAltitudeAndAzimuthBucketingFilter, PKInputPointExtraLatencyFilter, UIView, NSString, UIHoverGestureRecognizer, PKInputPointAltitudeAndAzimuthZLimitFilter, NSTimer, PKInputPointPredictionFilter, NSAttributedString, NSArray, PKInputPointReduceFramerateFilter, CADisplayLink, PKInputPointAltitudeAndAzimuthNoiseFilter;
@protocol PKHoverControllerDelegate;

@interface PKHoverController : NSObject <PKPencilObserverGestureRecognizerDelegate, PKInputPointAltitudeAndAzimuthEdgeFilterDelegate> {
    struct { unsigned char delegateSupportsDidBegin : 1; unsigned char delegateSupportsDidUpdate : 1; unsigned char delegateSupportsDidEnd : 1; unsigned char delegateSupportsDidLift : 1; unsigned char delegateSupportsHoldGestureMeanInputPointLatestInputPoint : 1; unsigned char delegateSupportsHoldGestureEnded : 1; unsigned char delegateSupportsIntentionalHoverWithDuration : 1; unsigned char delegateSupportsShouldBeActiveAt : 1; } _delegateFlags;
    struct { unsigned char gestureSupportsAzimuth : 1; unsigned char gestureSupportsAltitude : 1; unsigned char gestureSupportsTimestamp : 1; unsigned char gestureSupportsZOffset : 1; } _gestureRecognizerFlags;
    UIView *_view;
    struct vector<PKInputPoint, std::allocator<PKInputPoint>> { struct *__begin_; struct *__end_; struct __compressed_pair<PKInputPoint *, std::allocator<PKInputPoint>> { struct *__value_; } __end_cap_; } _inputPoints;
    BOOL _activeInputPoint;
    BOOL _activeHoverHold;
    BOOL _waitingForHoverHold;
    double _waitingForHoverHoldTimestamp;
    double _latestInputPointTimestamp;
    double _latestHoldTimestamp;
    double _latestInputPointSentTimestamp;
    struct { union { struct CGPoint { double x; double y; } point; struct CGPoint { double x; double y; } location; } ; double force; double azimuth; double altitude; double velocity; double directionAngle; double zPosition; double timestamp; BOOL predicted; long long estimationUpdateIndex; double length; BOOL hasEstimatedAltitudeAndAzimuth; } _cachedLatestInputPoint;
    struct CGPoint { double x; double y; } _latestHoldLocation;
    double _latestHoldZPosition;
    BOOL _didPauseOtherControllers;
    BOOL _isPaused;
    UIView *_hoverLabelView;
    unsigned long long _currentInputPointCounter;
    UIHoverGestureRecognizer *_gestureRecognizer;
    NSTimer *_eventGeneratorTimer;
    PKInputPointWeightedAverageFilter *_weightedAverageFilter;
    PKInputPointAltitudeAndAzimuthNoiseFilter *_altitudeAndAzimuthNoiseFilter;
    PKInputPointAltitudeAndAzimuthBucketingFilter *_altitudeAndAzimuthBucketingFilter;
    PKInputPointAltitudeAndAzimuthZLimitFilter *_altitudeAndAzimuthZLimitFilter;
    PKInputPointAltitudeAndAzimuthEdgeFilter *_altitudeAndAzimuthEdgeFilter;
    PKInputPointExtraLatencyFilter *_extraLatencyFilter;
    PKInputPointReduceFramerateFilter *_reduceFramerateFilter;
    PKInputPointPredictionFilter *_predictionFilter;
    NSArray *_allInputPointFilters;
    double _intentionalHoverStartTimestamp;
    double _intentionalHoverMinZValue;
    double _intentionalHoverMaxZValue;
    BOOL _didReceiveNewPointToPredict;
    double _timestampForLatestGestureUpdate;
    CADisplayLink *_displayLink;
    BOOL _shouldShowHoverDebugLayer;
    BOOL _hasSeenAnyHoverEvent;
    BOOL _hasSeenAnyHoverEventWithAltitude;
    BOOL _shouldLogHoverEvents;
    BOOL _shouldGenerate120HzEvents;
    id<PKHoverControllerDelegate> _delegate;
    NSAttributedString *_currentLabel;
    double _maximumTimeIntervalBetweenEvents;
}

@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

- (BOOL)gestureRecognizer:(id)a0 shouldReceiveTouch:(id)a1;
- (void)_resume:(id)a0;
- (id).cxx_construct;
- (BOOL)gestureRecognizer:(id)a0 shouldBeRequiredToFailByGestureRecognizer:(id)a1;
- (void).cxx_destruct;
- (BOOL)gestureRecognizer:(id)a0 shouldRequireFailureOfGestureRecognizer:(id)a1;
- (BOOL)gestureRecognizer:(id)a0 shouldRecognizeSimultaneouslyWithGestureRecognizer:(id)a1;
- (void)_pause:(id)a0;
- (void)_sendDidUpdate:(struct { union { struct CGPoint { double x0; double x1; } x0; struct CGPoint { double x0; double x1; } x1; } x0; double x1; double x2; double x3; double x4; double x5; double x6; double x7; BOOL x8; long long x9; double x10; BOOL x11; })a0;
- (void)_endIntentionalHoverTracking;
- (void)_handleHoverInputPoint:(struct { union { struct CGPoint { double x0; double x1; } x0; struct CGPoint { double x0; double x1; } x1; } x0; double x1; double x2; double x3; double x4; double x5; double x6; double x7; BOOL x8; long long x9; double x10; BOOL x11; })a0;
- (void)_hoverGesture:(id)a0;
- (void)_sendDidUpdateNow:(struct { union { struct CGPoint { double x0; double x1; } x0; struct CGPoint { double x0; double x1; } x1; } x0; double x1; double x2; double x3; double x4; double x5; double x6; double x7; BOOL x8; long long x9; double x10; BOOL x11; })a0;
- (void)_setupHoverGestureRecognizerInView:(id)a0;
- (void)_setupPredictorForNewPoint:(BOOL)a0;
- (void)_trackIntentionalHover:(struct { union { struct CGPoint { double x0; double x1; } x0; struct CGPoint { double x0; double x1; } x1; } x0; double x1; double x2; double x3; double x4; double x5; double x6; double x7; BOOL x8; long long x9; double x10; BOOL x11; })a0;
- (void)_triggerHoldGestureIfNecessary;
- (void)_updateInputPointFilters;
- (void)checkDidLiftAfterGestureEnd;
- (struct { union { struct CGPoint { double x0; double x1; } x0; struct CGPoint { double x0; double x1; } x1; } x0; double x1; double x2; double x3; double x4; double x5; double x6; double x7; BOOL x8; long long x9; double x10; BOOL x11; })currentInputPoint;
- (double)currentMovementSpeed;
- (void)hideLabel;
- (double)inputPointFilter:(id)a0 distanceToEdge:(struct { union { struct CGPoint { double x0; double x1; } x0; struct CGPoint { double x0; double x1; } x1; } x0; double x1; double x2; double x3; double x4; double x5; double x6; double x7; BOOL x8; long long x9; double x10; BOOL x11; })a1;
- (void)logInputPoint:(struct { union { struct CGPoint { double x0; double x1; } x0; struct CGPoint { double x0; double x1; } x1; } x0; double x1; double x2; double x3; double x4; double x5; double x6; double x7; BOOL x8; long long x9; double x10; BOOL x11; })a0;
- (void)updateCurrentInputPointWithInputPoint:(struct { union { struct CGPoint { double x0; double x1; } x0; struct CGPoint { double x0; double x1; } x1; } x0; double x1; double x2; double x3; double x4; double x5; double x6; double x7; BOOL x8; long long x9; double x10; BOOL x11; })a0;
- (void)vsync:(double)a0;

@end