luxlabs header browser preview


@class PXScrollViewSpeedometer, PXGAXCoalescingResponder, PXMediaProvider, PXScrollViewController, PXGTungstenEngineRecordingSession, NSObject, PXGEntityManager, NSMutableArray, PXGTextureManager, UIView, NSString, PXGLayout, PXGViewEnvironment, PXGSpriteDataStore, NSMutableSet, PXGAnimator, NSArray, PXGChangeDetails, PXGSpriteMetadataStore;
@protocol PXGRenderer, PXGHitTestEnvironment, PXGEngineDelegate, OS_dispatch_queue, PXDisplayLinkProtocol;

@interface PXGEngine : NSObject <PXGLayoutUpdateDelegate, PXGTextureManagerDelegate, PXGRendererDelegate, PXTilingScrollControllerUpdateDelegate, PXChangeObserver> {
    PXGAnimator *_animator;
    struct { BOOL updateDebugHUDWithStats; } _delegateRespondsTo;
    PXGSpriteDataStore *_layoutSpriteDataStore;
    PXGChangeDetails *_layoutChangeDetails;
    struct CGPoint { double x; double y; } _viewportShift;
    struct CGPoint { double x; double y; } _previousVisibleOrigin;
    PXGSpriteDataStore *_animationPresentationSpriteDataStore;
    PXGSpriteDataStore *_animationTargetSpriteDataStore;
    PXGLayout *_animationLayout;
    PXGChangeDetails *_animationChangeDetails;
    PXGSpriteMetadataStore *_presentationSpriteMetadaStore;
    struct { unsigned long long needsUpdate; unsigned long long updated; BOOL isPerformingUpdate; BOOL willPerformUpdate; } _updateFlags;
    unsigned long long _previousUpdateEntities;
    struct { long long scrollRegime; BOOL isAnimatingScroll; BOOL isScrubbing; BOOL isAnimatingContent; unsigned long long contentChangeTrend; BOOL isViewBoundsChanging; BOOL isInitialLoad; BOOL isVisible; struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } targetRect; } _previousInteractionState;
    unsigned long long _pendingUpdateEntities;
    BOOL _keepDisplayLinkAlive;
    double _renderForTargetTimestamp;
    double _lastRenderCompletionTimestamp;
    BOOL _animatorWasAnimatingAtBeginningOfFrame;
    BOOL _isUpdatingScrollView;
    BOOL _isUpdatingTextureManager;
    BOOL _isUpdatingRenderer;
    BOOL _viewSizeDidChange;
    BOOL _lowMemoryMode;
    id /* block */ _pendingIsInvisibleForSomeTimeBlock;
    BOOL _extensionHostIsInBackground;
    PXGViewEnvironment *_pendingViewEnvironment;
}

@property (readonly, nonatomic) struct _PXGEngineScrollState { struct CGSize { double width; double height; } referenceSize; struct UIEdgeInsets { double top; double left; double bottom; double right; } contentInsets; struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } visibleRect; struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } targetRect; struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } constrainedVisibleRect; struct CGPoint { double x; double y; } lastScrollDirection; long long scrollSpeedRegime; } scrollState;
@property (readonly, nonatomic) long long currentFrameTime;
@property (nonatomic) BOOL didDisappear;
@property (nonatomic) BOOL didRenderThisFrame;
@property (nonatomic) BOOL expectingScrollEvents;
@property (nonatomic) BOOL gotScrollEventThisFrame;
@property (nonatomic) double lastScrollEventTime;
@property (nonatomic) BOOL missedScrollEventThisFrame;
@property (nonatomic) BOOL isInvisibleForSomeTime;
@property (nonatomic) BOOL isExporting;
@property (readonly, nonatomic) id<PXGRenderer> drivingRenderer;
@property (readonly, nonatomic) NSMutableSet *interactions;
@property (readonly, nonatomic) NSMutableSet *activeInteractions;
@property (readonly, nonatomic) NSMutableArray *pendingContentLoadedNotificationBlocks;
@property (retain, nonatomic) PXGTungstenEngineRecordingSession *recordingSession;
@property (nonatomic) BOOL recursiveUpdateRescheduled;
@property (weak, nonatomic) id<PXGEngineDelegate> delegate;
@property (readonly, nonatomic) NSArray *renderers;
@property (nonatomic, getter=isVisible) BOOL visible;
@property (retain, nonatomic) PXGViewEnvironment *viewEnvironment;
@property (weak, nonatomic) UIView<PXGHitTestEnvironment> *interactionView;
@property (nonatomic) BOOL statsTrackingEnabled;
@property (readonly, nonatomic) struct { double x0[6]; double x1[6]; long long x2[6]; double x3[6]; double x4[6]; } *stats;
@property (readonly, nonatomic) BOOL debugEngineUpdates;
@property (nonatomic) BOOL slowAnimationsEnabled;
@property (readonly, nonatomic) PXGAnimator *ppt_animator;
@property (nonatomic) BOOL wantsImmediateUpdates;
@property (nonatomic) BOOL isInitialLoad;
@property (nonatomic) BOOL lowMemoryMode;
@property (nonatomic) BOOL disableMetalViewDisplayCompositing;
@property (nonatomic) BOOL allowLargerImagesDuringScrollingInLowMemoryMode;
@property (readonly, nonatomic) PXGAXCoalescingResponder *coalescingAXResponder;
@property (retain, nonatomic) PXMediaProvider *mediaProvider;
@property (nonatomic) struct { long long scrollRegime; BOOL isAnimatingScroll; BOOL isScrubbing; BOOL isAnimatingContent; unsigned long long contentChangeTrend; BOOL isViewBoundsChanging; BOOL isInitialLoad; BOOL isVisible; struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } targetRect; } interactionState;
@property (retain, nonatomic) PXScrollViewController *scrollViewController;
@property (retain, nonatomic) PXScrollViewSpeedometer *scrollViewSpeedometer;
@property (retain, nonatomic) PXGLayout *layout;
@property (readonly, nonatomic) PXGEntityManager *entityManager;
@property (readonly, nonatomic) NSObject<OS_dispatch_queue> *layoutQueue;
@property (readonly, nonatomic) PXGTextureManager *textureManager;
@property (readonly, nonatomic) id<PXDisplayLinkProtocol> displayLink;
@property (copy, nonatomic) id /* block */ renderingCompletionHandler;
@property (copy, nonatomic) id /* block */ animationRenderingCompletionHandler;
@property (nonatomic) BOOL isSuspended;
@property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } normalizedVisibleRect;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

- (void)_updateLayout;
- (void)_updateDisplayLink;
- (void)handleDisplayLink:(id)a0;
- (id)init;
- (void)updateIfNeeded;
- (void)_notifyContentLoadedObserversIfNeeded;
- (void)tilingScrollControllerDidScroll:(id)a0;
- (BOOL)_shouldDeferRenderUntilNextFrame;
- (void)test_installRenderSnapshotHandler:(id /* block */)a0;
- (void)_updateAnimatorWithTargetTimestamp:(double)a0;
- (id)startRecordingToDirectoryURL:(id)a0;
- (void)_releaseResources;
- (void)observable:(id)a0 didChange:(unsigned long long)a1 context:(void *)a2;
- (id)initForExportWithPixelBufferDestination:(id)a0 layoutQueue:(id)a1 displayLinkClass:(Class)a2;
- (void)dealloc;
- (void)rendererNeedsUpdate:(id)a0;
- (void)registerAllTextureProvidersWithMediaProvider:(id)a0;
- (void)_recursiveUpdateDetected;
- (void)textureManagerNeedsUpdate:(id)a0;
- (void)allowSecondRenderThisFrame;
- (BOOL)_shouldDeferContentOffsetUpdates;
- (void)_updateLayoutInteractions;
- (void)registerAllTextureProvidersWithMediaProvider:(id)a0 namedImagesBundle:(id)a1;
- (void)renderer:(id)a0 viewportSizeWillChange:(struct CGSize { double x0; double x1; })a1;
- (BOOL)_isInBackground;
- (void)_updateScrollStateWithReason:(unsigned long long)a0;
- (void)registerTextureProvider:(id)a0 forMediaKind:(unsigned char)a1;
- (void)ensureUpdatedLayout;
- (void)_retargetAnimations;
- (void)_updateInteractionState;
- (void)_updateInvisibleTextureManager;
- (void)rendererPerformRender:(id)a0;
- (void)enumerateSpritesInRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 usingBlock:(id /* block */)a1;
- (void)notifyContentFullyLoadedWithTimeout:(double)a0 block:(id /* block */)a1;
- (void)_updateIfNeededWithReason:(id)a0;
- (void)layoutNeedsUpdate:(id)a0;
- (void)_performRender;
- (void)_resetChangeDetails;
- (void)_setNeedsRender;
- (BOOL)_shouldWaitForScrollEvent;
- (void).cxx_destruct;
- (void)__setNeedsUpdate;
- (void)_deferredInvalidate:(unsigned long long)a0;
- (void)_extensionHostWillEnterForeground:(id)a0;
- (void)_updateTextureManager;
- (BOOL)copyPresentedSpriteFor:(id)a0 geometry:(struct { struct { double x0; double x1; double x2; } x0; } *)a1 style:(struct { float x0; struct { union { struct { float x0; float x1; float x2; float x3; } x0; float x1[4]; } x0; } x1; float x2; float x3; float x4; float x5; unsigned short x6; unsigned char x7; float x8; struct { void /* unknown type, empty encoding */ x0[4]; } x9; } *)a2 info:(struct { unsigned char x0; unsigned char x1; float x2; long long x3; unsigned short x4; unsigned char x5; } *)a3;
- (void)rendererDidChangeTextureConverter:(id)a0;
- (void)handleScreensDidWakeNotification:(id)a0;
- (void)_enumerateRenderers:(id /* block */)a0;
- (void)_forceInvalidate:(unsigned long long)a0;
- (void)_handleTimeoutForNotificationBlock:(id /* block */)a0;
- (id)initWithAnimator:(id)a0 renderers:(id)a1 displayLinkClass:(Class)a2 layoutQueue:(id)a3;
- (void)layoutNeedsRenderUpdate:(id)a0;
- (void)_invalidateOrDefer:(unsigned long long)a0;
- (void)tilingScrollControllerDidUpdate:(id)a0;
- (void)_extensionHostDidEnterBackground:(id)a0;
- (void)_propagateTextureConverters;
- (void)_hasBeenInvisibleForSomeTime;
- (void)_handleRescheduledRecursiveUpdate;

@end