luxlabs header browser preview


@class NUScrollView, NSString, NSArray, NURenderView, UIView, PFCoalescer, NSTimer, CADisplayLink, NUAVPlayerController, NUAVPlayerView, NUComposition, NUMediaViewRenderer;
@protocol NUMediaViewDelegate, NUMediaPlayer;

@interface NUMediaView : UIView <NUAVPlayerControllerDelegate, NUAVPlayerViewDelegate> {
    NURenderView *_renderView;
    NUScrollView *_scrollView;
    NUMediaViewRenderer *_renderer;
    NUAVPlayerController *_nuAVPlayerController;
    NUAVPlayerView *_playerView;
    UIView *_livePhotoView;
    struct { BOOL hasDidFinishRendering; BOOL hasDidUpdateLivePhoto; BOOL hasDidFinishRenderingWithStatistics; BOOL hasDidZoom; BOOL hasDidScroll; BOOL hasWillBeginZooming; BOOL hasDidEndZooming; BOOL hasIsReadyForVideoPlayback; BOOL hasDidStartPreparingVideo; BOOL hasDidFinishPreparingVideo; BOOL hasFailedToPlayToEnd; BOOL hasWillBeginLivePhotoPlayback; BOOL hasDidEndLivePhotoPlayback; } _delegateFlags;
    PFCoalescer *_renderCoalescer;
    BOOL _loopsVideo;
    long long _transitionCount;
    struct CGSize { double width; double height; } _transitionTargetSize;
    id /* block */ _renderingCompletionBlock;
    BOOL _lastVideoPlayerVisibilityChangeWasAnimated;
    NSTimer *_displayEDRMonitorTimer;
    CADisplayLink *_displayEDRMonitorLink;
}

@property (nonatomic) struct CGSize { double width; double height; } _masterSizeWithoutGeometry;
@property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } cropRect;
@property (nonatomic) double angle;
@property (nonatomic) NSArray *pipelineFilters;
@property (nonatomic) BOOL centerContent;
@property (nonatomic) BOOL loopsVideoPlayback;
@property (nonatomic, getter=isMuted) BOOL muted;
@property (nonatomic, getter=isDebugEnabled) BOOL debugEnabled;
@property (nonatomic, getter=isHDREnabled) BOOL hdrEnabled;
@property (nonatomic) BOOL scrollUpdatesSuppressed;
@property (readonly, nonatomic, getter=isVideoEnabled) BOOL videoEnabled;
@property (readonly, nonatomic, getter=isVideoPlayerVisible) BOOL videoPlayerVisible;
@property (weak, nonatomic) id<NUMediaViewDelegate> delegate;
@property (readonly) id<NUMediaPlayer> player;
@property (copy, nonatomic) NUComposition *composition;
@property (nonatomic) struct UIEdgeInsets { double top; double left; double bottom; double right; } edgeInsets;
@property (nonatomic) double zoomScale;
@property (nonatomic) double minimumZoomScale;
@property (nonatomic) double maximumZoomScale;
@property (readonly, nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } imageFrame;
@property (nonatomic) BOOL alwaysBounceScrollView;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (struct UIEdgeInsets { double x0; double x1; double x2; double x3; })_proposedInsetsForInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a0 contentSize:(struct CGSize { double x0; double x1; })a1 inFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a2 centerContent:(BOOL)a3;

- (void)scrollViewDidEndDecelerating:(id)a0;
- (void)scrollViewWillBeginZooming:(id)a0 withView:(id)a1;
- (void)scrollViewDidEndZooming:(id)a0 withView:(id)a1 atScale:(double)a2;
- (BOOL)isReady;
- (void)willMoveToWindow:(id)a0;
- (id)_scrollView;
- (id)snapshotImage;
- (void)scrollViewDidZoom:(id)a0;
- (id)viewForZoomingInScrollView:(id)a0;
- (void)_updateContentInsets;
- (struct CGSize { double x0; double x1; })_imageSize;
- (void)scrollViewDidEndDragging:(id)a0 willDecelerate:(BOOL)a1;
- (id)initWithFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0;
- (void)_setupViews;
- (void)_endTransition;
- (void).cxx_destruct;
- (id)_livePhotoView;
- (void)_beginTransition;
- (void)layoutSubviews;
- (void)scrollViewDidScroll:(id)a0;
- (id)initWithCoder:(id)a0;
- (void)didMoveToWindow;
- (void)scrollViewWillBeginDragging:(id)a0;
- (id)_geometry;
- (id)_imageLayer;
- (void)setZoomScale:(double)a0 animated:(BOOL)a1;
- (void)zoomToRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 animated:(BOOL)a1;
- (id)_renderer;
- (id)_renderView;
- (void)_releaseAVObjects;
- (id)_videoPlayerController;
- (id)_videoPlayerView;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })convertNormalizedViewRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 fromSpace:(id)a1;
- (struct CGPoint { double x0; double x1; })convertPoint:(struct CGPoint { double x0; double x1; })a0 fromSpace:(id)a1 toView:(id)a2;
- (struct CGPoint { double x0; double x1; })convertPoint:(struct CGPoint { double x0; double x1; })a0 toNormalizedYDownSourceSpaceFromView:(id)a1;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })convertRectFromImage:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0;
- (void)installRenderingCompletionBlock:(id /* block */)a0;
- (double)_currentEDRHeadroomForScreen:(id)a0;
- (BOOL)_didReleaseAVObjects;
- (struct UIEdgeInsets { double x0; double x1; double x2; double x3; })_edgeInsetsForContentSize:(struct CGSize { double x0; double x1; })a0 inFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 alwaysCenterContent:(BOOL)a2;
- (double)_maximumEDRHeadroomForScreen:(id)a0;
- (void)_setPipelineFilters:(id)a0 shouldUpdateContent:(BOOL)a1;
- (void)_startVideoPlayback;
- (void)_stopVideoPlayback;
- (void)_transitionToInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a0 duration:(double)a1 animationCurve:(long long)a2 updateRenderContent:(BOOL)a3;
- (struct CGPoint { double x0; double x1; })convertPoint:(struct CGPoint { double x0; double x1; })a0 fromView:(id)a1 toSpace:(id)a2;
- (void)setVideoEnabled:(BOOL)a0 animated:(BOOL)a1;
- (void)setZoomScaleToFit;
- (void)waitForRender;
- (void)setVideoPlayerVisible:(BOOL)a0 animated:(BOOL)a1;
- (void)_rendererDidStartPreparingVideo;
- (id)_videoPlayerViewWithoutControls;
- (struct UIEdgeInsets { double x0; double x1; double x2; double x3; })_edgeInsetsForContentSize:(struct CGSize { double x0; double x1; })a0 inFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1;
- (void)_invalidateDisplayEDRHeadroomMonitor;
- (id)_layerRecursiveDescription;
- (void)_livephotoPlaybackDidEnd;
- (void)_livephotoPlaybackWillBegin;
- (void)_monitorDisplayEDRHeadroom:(id)a0;
- (void)_rendererDidCreateAVPlayerController:(id)a0;
- (void)_rendererDidFinishPreparingVideo;
- (void)_rendererDidFinishWithStatistics:(id)a0;
- (void)_rendererDidUpdateLivePhoto;
- (void)_scheduleDisplayEDRHeadroomMonitor;
- (void)_setLayerFilters:(id)a0;
- (void)_updateRenderContent;
- (void)_updateVideoPlayerAlpha:(BOOL)a0;
- (id)_viewRecursiveDescription;
- (void)_withComposition:(id)a0 visitRenderClient:(id /* block */)a1;
- (struct CGPoint { double x0; double x1; })convertPointFromImage:(struct CGPoint { double x0; double x1; })a0;
- (struct CGPoint { double x0; double x1; })convertPointToImage:(struct CGPoint { double x0; double x1; })a0;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })convertRectToImage:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })convertViewRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 fromSpace:(id)a1;
- (void)playerController:(id)a0 didUpdateElapsedTime:(double)a1 duration:(double)a2;
- (void)playerControllerDidFinishPlaying:(id)a0 duration:(double)a1;
- (void)playerControllerFailedToPlayToEnd:(id)a0 error:(id)a1;
- (void)playerControllerIsReadyForPlayback:(id)a0;
- (void)playerViewReadyForDisplayDidChange:(id)a0;

@end