luxlabs header browser preview


@class MPChangePlaybackRateCommand, MPSetPlaybackQueueCommand, MPVocalsControlCommand, MPChangePlaybackPositionCommand, NSMutableArray, NSString, MPInsertIntoPlaybackQueueCommand, MPReorderQueueCommand, MPRatingCommand, MPSetPriorityForPlaybackSessionCommand, MPChangeRepeatModeCommand, MPSkipIntervalCommand, MPChangeShuffleModeCommand, MPRemoteCommand, MPFeedbackCommand, MPSetPlaybackSessionCommand, MPAdvanceShuffleModeCommand, MPPreloadPlaybackSessionCommand, MPChangeQueueEndActionCommand, MRPlayerPath, MPPrepareForSetPlaybackQueueCommand, MPAdvanceRepeatModeCommand;

@interface MPRemoteCommandCenter : NSObject <MPRemoteCommandDelegate_Internal> {
    NSMutableArray *_activeCommands;
    struct os_unfair_recursive_lock_s { struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } ourl_lock; unsigned int ourl_count; } _lock;
    id _mediaRemoteCommandHandler;
    BOOL _scheduledSupportedCommandsChangedNotification;
    BOOL _commandHandlersRegistered;
    BOOL _canBeNowPlayingApplication;
    BOOL _invalidated;
    BOOL _processingEvent;
    NSMutableArray *_eventQueue;
    unsigned long long _stateHandler;
}

@property (readonly, nonatomic) MPRemoteCommand *specialSeekForwardCommand;
@property (readonly, nonatomic) MPRemoteCommand *specialSeekBackwardCommand;
@property (readonly, nonatomic) MPAdvanceShuffleModeCommand *advanceShuffleModeCommand;
@property (readonly, nonatomic) MPAdvanceRepeatModeCommand *advanceRepeatModeCommand;
@property (readonly, nonatomic) MPRemoteCommand *removeFromPlaybackQueueCommand;
@property (readonly, nonatomic) MPReorderQueueCommand *reorderQueueCommand;
@property (readonly, nonatomic) MPRemoteCommand *playItemInQueueCommand;
@property (readonly, nonatomic) MPRemoteCommand *createRadioStationCommand;
@property (readonly, nonatomic) MPSetPlaybackQueueCommand *setPlaybackQueueCommand;
@property (readonly, nonatomic) MPPrepareForSetPlaybackQueueCommand *prepareForSetPlaybackQueueCommand;
@property (readonly, nonatomic) MPInsertIntoPlaybackQueueCommand *insertIntoPlaybackQueueCommand;
@property (readonly, nonatomic) MPFeedbackCommand *addNowPlayingItemToLibraryCommand;
@property (readonly, nonatomic) MPFeedbackCommand *addItemToLibraryCommand;
@property (readonly, nonatomic) MPSetPlaybackSessionCommand *setPlaybackSessionCommand;
@property (readonly, nonatomic) MPPreloadPlaybackSessionCommand *preloadPlaybackSessionCommand;
@property (readonly, nonatomic) MPSetPriorityForPlaybackSessionCommand *setPriorityForPlaybackSessionCommand;
@property (readonly, nonatomic) MPRemoteCommand *discardPlaybackSessionCommand;
@property (readonly, nonatomic) MPRemoteCommand *reshuffleCommand;
@property (readonly, nonatomic) MPChangeQueueEndActionCommand *changeQueueEndActionCommand;
@property (readonly, nonatomic) MPRemoteCommand *leaveSharedPlaybackSessionCommand;
@property (readonly, nonatomic) MPRemoteCommand *postEventNoticeCommand;
@property (readonly, nonatomic) MPRemoteCommand *prepareVocalsControlCommand;
@property (readonly, nonatomic) MPVocalsControlCommand *vocalsControlCommand;
@property (readonly, nonatomic) BOOL commandHandlersRegistered;
@property (readonly, nonatomic) BOOL canBeNowPlayingApplication;
@property (readonly, copy, nonatomic) NSString *playerID;
@property (readonly, copy, nonatomic) MRPlayerPath *playerPath;
@property (nonatomic) BOOL disableAutomaticCanBeNowPlaying;
@property (nonatomic) BOOL wantsSerializedEventDelivery;
@property (readonly, nonatomic) MPRemoteCommand *pauseCommand;
@property (readonly, nonatomic) MPRemoteCommand *playCommand;
@property (readonly, nonatomic) MPRemoteCommand *stopCommand;
@property (readonly, nonatomic) MPRemoteCommand *togglePlayPauseCommand;
@property (readonly, nonatomic) MPRemoteCommand *enableLanguageOptionCommand;
@property (readonly, nonatomic) MPRemoteCommand *disableLanguageOptionCommand;
@property (readonly, nonatomic) MPChangePlaybackRateCommand *changePlaybackRateCommand;
@property (readonly, nonatomic) MPChangeRepeatModeCommand *changeRepeatModeCommand;
@property (readonly, nonatomic) MPChangeShuffleModeCommand *changeShuffleModeCommand;
@property (readonly, nonatomic) MPRemoteCommand *nextTrackCommand;
@property (readonly, nonatomic) MPRemoteCommand *previousTrackCommand;
@property (readonly, nonatomic) MPSkipIntervalCommand *skipForwardCommand;
@property (readonly, nonatomic) MPSkipIntervalCommand *skipBackwardCommand;
@property (readonly, nonatomic) MPRemoteCommand *seekForwardCommand;
@property (readonly, nonatomic) MPRemoteCommand *seekBackwardCommand;
@property (readonly, nonatomic) MPChangePlaybackPositionCommand *changePlaybackPositionCommand;
@property (readonly, nonatomic) MPRatingCommand *ratingCommand;
@property (readonly, nonatomic) MPFeedbackCommand *likeCommand;
@property (readonly, nonatomic) MPFeedbackCommand *dislikeCommand;
@property (readonly, nonatomic) MPFeedbackCommand *bookmarkCommand;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (void)getPendingCommandTypesWithCompletion:(id /* block */)a0;
+ (id)sharedCommandCenter;
+ (long long)_numberOfCommandCentersWithTargets;
+ (id)commandCenterForPlayerID:(id)a0;
+ (id)commandCenterForPlayerPath:(id)a0;
+ (void)updateLaunchCommandsWithConfigurationHandler:(id /* block */)a0;

- (id)initWithPlayerID:(id)a0;
- (void)_flushEventQueue;
- (id)initWithPlayerPath:(id)a0;
- (void)dealloc;
- (id)_activeCommands;
- (id)_stateDictionary;
- (void)_stopMediaRemoteSync;
- (void)_scheduleSupportedCommandsChanged:(BOOL)a0;
- (id)_debugCommandDescriptions;
- (void)invalidate;
- (void)_pushMediaRemoteCommand:(unsigned int)a0 withOptions:(id)a1 completion:(id /* block */)a2;
- (void)_startMediaRemoteSync;
- (void)getPendingCommandTypesWithCompletion:(id /* block */)a0;
- (void)_commandTargetsDidChangeNotification:(id)a0;
- (BOOL)containsCommand:(id)a0;
- (void).cxx_destruct;
- (void)_locked_updateCanBeNowPlayingApplicationIfNeeded;
- (id)_createRemoteCommandWithConcreteClass:(Class)a0 mediaRemoteType:(unsigned int)a1;
- (void)remoteCommandDidMutatePropagatableProperty:(id)a0;
- (BOOL)isInvalidated;
- (void)dispatchCommandEvent:(id)a0 completion:(id /* block */)a1;

@end