luxlabs header browser preview


@class NSXPCConnection, NSString, MPMusicPlayerControllerNowPlayingTimeSnapshot, NSArray, MPNowPlayingInfoAudioFormat, MPMusicPlayerApplicationController, MPMusicPlayerQueueDescriptor, MPMusicPlayerControllerNowPlaying, MPVolumeController, NSObject, MPMediaItem;
@protocol MPSystemMusicPlayerController, OS_dispatch_queue;

@interface MPMusicPlayerController : NSObject <MPArtworkDataSource, MPVolumeControllerDelegate, MPMusicPlayerControllerClient, MPMediaPlayback> {
    long long _shuffleMode;
    long long _repeatMode;
    BOOL _prioritizeStartupOverQuality;
    BOOL _serverValidated;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _lock;
}

@property (class, readonly, nonatomic) MPMusicPlayerController *applicationMusicPlayer;
@property (class, readonly, nonatomic) MPMusicPlayerApplicationController *applicationQueuePlayer;
@property (class, readonly, nonatomic) MPMusicPlayerController<MPSystemMusicPlayerController> *systemMusicPlayer;
@property (class, readonly, nonatomic) MPMusicPlayerController *iPodMusicPlayer;

@property (readonly, copy, nonatomic) NSString *clientIdentifier;
@property (readonly, nonatomic) NSXPCConnection *connection;
@property (readonly, nonatomic) MPMusicPlayerControllerNowPlaying *serverNowPlaying;
@property (readonly, nonatomic) MPMusicPlayerControllerNowPlayingTimeSnapshot *serverTimeSnapshot;
@property (readonly, nonatomic) MPMusicPlayerQueueDescriptor *serverQueueDescriptor;
@property (readonly, nonatomic) MPMusicPlayerControllerNowPlayingTimeSnapshot *lastServerTimeSnapshot;
@property (readonly, nonatomic) MPMusicPlayerControllerNowPlaying *lastServerNowPlaying;
@property (readonly, nonatomic) NSArray *lastContentItemIDs;
@property (readonly, nonatomic) MPMusicPlayerQueueDescriptor *targetQueueDescriptor;
@property (readonly, nonatomic) long long notificationsCounter;
@property (readonly, nonatomic) MPVolumeController *volumeController;
@property (readonly, nonatomic) NSObject<OS_dispatch_queue> *queue;
@property (nonatomic) long long playbackSpeed;
@property (readonly, nonatomic) BOOL isNowPlayingItemFromGeniusMix;
@property (nonatomic) unsigned long long currentChapterIndex;
@property (nonatomic) unsigned long long nowPlayingUID;
@property (nonatomic) BOOL userQueueModificationsDisabled;
@property (readonly, nonatomic) MPNowPlayingInfoAudioFormat *nowPlayingAudioFormat;
@property (nonatomic) BOOL prioritizeStartupOverQuality;
@property (readonly, nonatomic) long long playbackState;
@property (nonatomic) long long repeatMode;
@property (nonatomic) long long shuffleMode;
@property (nonatomic) float volume;
@property (copy, nonatomic) MPMediaItem *nowPlayingItem;
@property (readonly, nonatomic) unsigned long long indexOfNowPlayingItem;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;
@property (readonly, nonatomic) BOOL isPreparedToPlay;
@property (nonatomic) double currentPlaybackTime;
@property (nonatomic) float currentPlaybackRate;

+ (id)alloc;
+ (void)setRunLoopForNotifications:(id)a0;

- (void)play;
- (void)pause;
- (void)dealloc;
- (BOOL)areRepresentationsAvailableForCatalog:(id)a0;
- (void)cancelLoadingRepresentationForArtworkCatalog:(id)a0;
- (void)stop;
- (id)initWithClientIdentifier:(id)a0;
- (void)_clearConnection;
- (unsigned long long)numberOfItems;
- (void)loadRepresentationForArtworkCatalog:(id)a0 completionHandler:(id /* block */)a1;
- (id)visualIdenticalityIdentifierForCatalog:(id)a0;
- (void)volumeController:(id)a0 volumeValueDidChange:(float)a1;
- (BOOL)isRepresentation:(id)a0 bestRepresentationForArtworkCatalog:(id)a1;
- (void).cxx_destruct;
- (id)_snapshot;
- (id)existingRepresentationForArtworkCatalog:(id)a0;
- (void)prepareToPlay;
- (void)_validateServer;
- (void)skipToBeginning;
- (id)initWithClientIdentifier:(id)a0 queue:(id)a1;
- (void)shuffle;
- (void)_establishConnectionIfNeeded;
- (id)_mediaItemFromNowPlaying:(id)a0;
- (id)_nowPlaying;
- (void)_onQueue_applyServerStateUpdateRecord:(id)a0;
- (void)_postPrivateQueueDidChangeNotificationWithContentItemIDs:(id)a0;
- (id)_queueDescriptor;
- (long long)_serverRepeatMode;
- (long long)_serverShuffleMode;
- (void)_setNowPlayingItem:(id)a0 itemIdentifier:(id)a1;
- (void)_setNowPlayingItemWithIdentifier:(id)a0;
- (void)_setServerRepeatMode:(long long)a0;
- (void)_setServerShuffleMode:(long long)a0;
- (void)adjustLoadedQueueRangeToReverseCount:(long long)a0 forwardCount:(long long)a1;
- (void)appendQueueDescriptor:(id)a0;
- (void)applyServerStateUpdateRecord:(id)a0;
- (void)beginGeneratingPlaybackNotifications;
- (void)beginSeekingBackward;
- (void)beginSeekingForward;
- (void)endGeneratingPlaybackNotifications;
- (void)endSeeking;
- (BOOL)isGeniusAvailable;
- (BOOL)isGeniusAvailableForSeedItems:(id)a0;
- (id)nowPlayingAtIndex:(long long)a0;
- (id)nowPlayingItemAtIndex:(unsigned long long)a0;
- (unsigned long long)nowPlayingUIDAtIndex:(unsigned long long)a0;
- (void)onServer:(id /* block */)a0;
- (void)onServerAsync:(id /* block */)a0 errorHandler:(id /* block */)a1;
- (void)onServerAsync:(id /* block */)a0 errorHandler:(id /* block */)a1 timeout:(double)a2 retryEnabled:(BOOL)a3;
- (void)pauseWithFadeoutDuration:(double)a0;
- (void)prepareQueueForPlayback;
- (void)prepareToPlayWithCompletionHandler:(id /* block */)a0;
- (void)prepareToPlayWithCompletionHandler:(id /* block */)a0 timeout:(double)a1;
- (void)prependQueueDescriptor:(id)a0;
- (id)queueAsQuery;
- (id)queueAsRadioStation;
- (void)serverItemDidEnd;
- (void)serverPlaybackModeDidChangeAffectingQueue:(BOOL)a0;
- (void)serverQueueDidEnd;
- (void)setQueueWithDescriptor:(id)a0;
- (void)setQueueWithGeniusMixPlaylist:(id)a0;
- (void)setQueueWithItemCollection:(id)a0;
- (void)setQueueWithQuery:(id)a0;
- (void)setQueueWithQuery:(id)a0 firstItem:(id)a1;
- (void)setQueueWithRadioStation:(id)a0;
- (BOOL)setQueueWithSeedItems:(id)a0;
- (void)setQueueWithStoreIDs:(id)a0;
- (void)setServerNowPlaying:(id)a0;
- (void)setServerQueueDescriptor:(id)a0;
- (void)setServerTimeSnapshot:(id)a0;
- (void)setVolumePrivate:(float)a0;
- (void)skipToBeginningOrPreviousItem;
- (void)skipToNextItem;
- (void)skipToPreviousItem;
- (void)volumeController:(id)a0 mutedStateDidChange:(BOOL)a1;

@end