luxlabs header browser preview


@class ISLivePhotoUIView, ISPlayerItem, UIView, ISLivePhotoPlayer, NSString, PHLivePhoto, NSNumber, UIGestureRecognizer;
@protocol PHLivePhotoViewDelegate;

@interface PHLivePhotoView : UIView <ISChangeObserver, ISLivePhotoUIViewDelegate> {
    struct { BOOL respondsToCanBeginPlayback; BOOL respondsToWillBeginPlaybackWithStyle; BOOL respondsToDidEndPlayback; BOOL respondsToExtraMinimumTouchDuration; } _delegateFlags;
    struct { BOOL respondsToDidEndPlayingVitality; BOOL respondsToDidBeginHinting; BOOL respondsToDidBeginScrubbing; BOOL respondsToDidEndScrubbing; } _delegatePrivateFlags;
    long long _currentPlaybackStyle;
}

@property (retain, nonatomic, setter=_setPlayerItem:) ISPlayerItem *_playerItem;
@property (nonatomic, setter=_setPlayingVitality:) BOOL _playingVitality;
@property (nonatomic, setter=_setPlaybackRequested:) BOOL _playbackRequested;
@property (nonatomic, setter=_setScrubbing:) BOOL scrubbing;
@property (nonatomic) long long videoFilterUpdateCounter;
@property (nonatomic) long long targetReadiness;
@property (nonatomic) BOOL shouldApplyTargetReadiness;
@property (retain, nonatomic) UIView *photoView;
@property (nonatomic) struct CGPoint { double x; double y; } scaleAnchorOffset;
@property (retain, nonatomic) ISLivePhotoUIView *playerView;
@property (retain, nonatomic) ISLivePhotoPlayer *player;
@property (nonatomic) BOOL showsStatusBorder;
@property (nonatomic) struct { struct { long long value; int timescale; unsigned int flags; long long epoch; } start; struct { long long value; int timescale; unsigned int flags; long long epoch; } duration; } trimmedTimeRange;
@property (nonatomic) struct CGImage { } *overridePhoto;
@property (nonatomic) struct { long long x0; int x1; unsigned int x2; long long x3; } seekTime;
@property (readonly, nonatomic, getter=isDisplayingPhoto) BOOL displayingPhoto;
@property (retain, nonatomic) NSNumber *overrideSRLCompensationAmount;
@property (weak, nonatomic) id<PHLivePhotoViewDelegate> delegate;
@property (retain, nonatomic) PHLivePhoto *livePhoto;
@property (nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } contentsRect;
@property (nonatomic, getter=isMuted) BOOL muted;
@property (readonly, nonatomic) UIGestureRecognizer *playbackGestureRecognizer;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (id)livePhotoBadgeImageWithOptions:(unsigned long long)a0;

- (void)setContentMode:(long long)a0;
- (void)_updateVideoFilter;
- (void)_updateCurrentPlaybackStyleAndSeeking;
- (void)observable:(id)a0 didChange:(unsigned long long)a1 context:(void *)a2;
- (void)_applySRLCompensationAmount:(id)a0 updateCount:(long long)a1;
- (void)stopPlayback;
- (double)livePhotoViewExtraMinimumTouchDuration:(id)a0 touch:(id)a1;
- (BOOL)livePhotoViewCanBeginInteractivePlayback:(id)a0;
- (id)initWithFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0;
- (void)_updateStatusBorder;
- (void)_updatePlayerTargetReadiness;
- (void)_playerDidBeginHinting;
- (void)_updatePlayingVitality;
- (void).cxx_destruct;
- (void)_updatePlayerAudioEnabled;
- (void)startPlaybackWithStyle:(long long)a0;
- (void)_commonPHLivePhotoViewInitialization;
- (id)generateSnapshotImage;
- (void)_handlePlayerItemStatusChanged;
- (id)initWithCoder:(id)a0;

@end