/*
 *     Generated by class-dump 3.1.2.
 *
 *     class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2007 by Steve Nygard.
 */

struct CGAffineTransform {
    float _field1;
    float _field2;
    float _field3;
    float _field4;
    float _field5;
    float _field6;
};

struct CGColor;

struct CGImage;

struct CGPoint {
    float x;
    float y;
};

struct CGRect {
    struct CGPoint _field1;
    struct CGSize _field2;
};

struct CGSize {
    float width;
    float height;
};

struct DefaultsEnumToStringMapping {
    int _field1;
    int _field2;
    int *_field3;
    id *_field4;
    id *_field5;
};

struct LoadedArtInfo {
    id image;
    struct MLArtworkInstanceInfo artworkInstanceInfo;
};

struct MLArtworkFormatSpec {
    unsigned int formatID;
    unsigned int width;
    unsigned int height;
    unsigned int rowBytes;
    int pixelOrder;
    int pixelFormat;
};

struct MLArtworkInstanceInfo {
    struct MLArtworkFormatSpec formatSpec;
    struct _NSRect imageSubRect;
};

struct _MediaAppPersistentState {
    int currentView;
    int rootViewType;
    id navStack;
    id viewSpecifier;
    id viewConfiguration;
    id previouslyVisitedConfigPath;
    id overlayContext;
    unsigned int showingCoverflow:1;
    unsigned int lastPlayedMovie:1;
};

struct _MediaViewControllerSetupInfo {
    int _field1;
    id _field2;
};

struct _NSPoint {
    float x;
    float y;
};

struct _NSRange {
    unsigned int _field1;
    unsigned int _field2;
};

struct _NSRect {
    struct _NSPoint origin;
    struct _NSSize size;
};

struct _NSSize {
    float width;
    float height;
};

struct __CFArray;

struct __CFDictionary;

struct __CFRunLoopTimer;

struct __CFSet;

struct __CoreSurfaceBuffer;

struct __GSEvent;

struct malloc_statistics_t {
    unsigned int _field1;
    unsigned int _field2;
    unsigned int _field3;
    unsigned int _field4;
};

typedef struct {
    int _field1;
    unsigned int _field2;
    struct CGPoint _field3;
    struct CGPoint _field4;
    unsigned long long _field5;
    void *_field6;
    int _field7;
    unsigned short _field8;
    unsigned int _field9;
    char *_field10;
} CDAnonymousStruct1;

typedef struct {
    float _field1;
    float _field2;
    float _field3;
} CDAnonymousStruct2;

/*
 * File: Applications/MobileMusicPlayer.app/MobileMusicPlayer
 */

@protocol NSCoding
- (void)encodeWithCoder:(id)fp8;
- (id)initWithCoder:(id)fp8;
@end

@interface MovieListingViewController : MediaListingViewController
{
    id _lastContext;
    id <UIContinuation> _deleteConfirmationContinuation;
}

+ (BOOL)allowedInApplicationWithRole:(int)fp8;
+ (BOOL)canShowCoverFlow;
+ (Class)albumArtLoaderClass;
+ (id)noContentImage;
+ (float)noContentTopPadding;
+ (id)noContentTitle;
+ (id)noContentSubtitle;
- (void)dealloc;
- (BOOL)table:(id)fp8 beginConfirmationForDeletingRow:(int)fp12 withContinuation:(id)fp16;
- (void)alertSheet:(id)fp8 buttonClicked:(int)fp12;
- (void)_deleteTrack:(id)fp8 fromQuery:(id)fp12;
- (void)table:(id)fp8 deleteRow:(int)fp12;
- (BOOL)table:(id)fp8 canDeleteRow:(int)fp12;
- (void)table:(id)fp8 willSwipeToDeleteRow:(int)fp12;

@end

@interface MovieMediaViewController : MediaViewController
{
}

+ (BOOL)allowedInApplicationWithRole:(int)fp8;
+ (struct CGSize)viewSize;

@end

@interface JetsamHelper : NSObject
{
}

+ (void)initialize;
+ (void)registerForMemoryWarningNotifications:(id)fp8;
+ (void)purgeGlobals;
+ (void)_handleMemoryWarning:(BOOL)fp8;
+ (void)_postMemoryWarning:(BOOL)fp8;
+ (void)markPurgeableGlobalObject:(id *)fp8;
+ (void)lock;
+ (void)unlock;
+ (struct malloc_statistics_t)_markPreJetsamMemoryInfo;
+ (BOOL)_purgedEnoughMemoryToStayAlive:(struct malloc_statistics_t)fp8 isUrgent:(BOOL)fp24;

@end

@interface MediaPlayerApp : UIApplication
{
    MediaPlayerAppController *_currentAppController;
    unsigned int _externallyPaused:1;
    unsigned int _quittable:1;
    unsigned int _postPlaybackStateChagned:1;
    NSURL *_urlBeingHandled;
}

+ (id)sharedApp;
- (id)init;
- (BOOL)isIPodApp;
- (id)mainWindow;
- (void)dealloc;
- (int)applicationControlTint;
- (BOOL)handleEvent:(struct __GSEvent *)fp8;
- (void)_applicationDidFinishLaunching:(id)fp8 suspended:(BOOL)fp12;
- (id)urlBeingHandled;
- (void)_setHandlingURL:(BOOL)fp8 url:(id)fp12;
- (void)applicationOpenToShortCut:(id)fp8;
- (void)applicationDidFinishLaunchingSuspended:(id)fp8;
- (void)applicationDidFinishLaunching:(id)fp8;
- (void)applicationOpenURL:(id)fp8;
- (BOOL)_postDidReceiveMemoryWarning:(BOOL)fp8;
- (void)didReceiveMemoryWarning;
- (void)didReceiveUrgentMemoryWarning;
- (void)_tearDownUI;
- (id)currentPlayerAppController;
- (int)activeApplicationMode;
- (int)activeApplicationRole;
- (BOOL)isEditingOTG;
- (BOOL)isHandlingRemoteEvents;
- (void)userDefaultsDidChange:(id)fp8;
- (BOOL)IAPAware;
- (void)accessoryAvailabilityChanged:(struct __GSEvent *)fp8;
- (void)accessoryKeyStateChanged:(struct __GSEvent *)fp8;
- (void)handleOutOfLineDataRequest:(struct __GSEvent *)fp8;
- (void)notifyOfCurrentSongInfo;
- (void)movieDidChange;
- (void)musicDidStart;
- (void)musicDidStop;
- (void)musicDidChange;
- (BOOL)applicationSuspend:(struct __GSEvent *)fp8 settings:(id)fp12;
- (void)applicationWillSuspendForEventsOnly;
- (void)applicationDidResume;
- (void)applicationDidResumeForEventsOnly;
- (void)applicationResume:(struct __GSEvent *)fp8 settings:(id)fp12;
- (void)applicationWillTerminate;
- (void)setQuitsOnSuspend:(BOOL)fp8;
- (void)deviceOrientationChanged:(struct __GSEvent *)fp8;
- (void)addTrackingRect:(struct CGRect)fp8 forLayer:(id)fp24;
- (void)removeTrackingRectForLayer:(id)fp8;

@end

@interface NSObject (MemoryNotifications)
+ (void)applicationDidReceiveMemoryWarningAsUrgent:(BOOL)fp8;
+ (void)applicationDidReceiveMemoryWarning:(id)fp8;
- (void)applicationDidReceiveMemoryWarningAsUrgent:(BOOL)fp8;
- (void)applicationDidReceiveMemoryWarning:(id)fp8;
@end

@interface MusicControlsBar : UIView
{
    UIPushButton *_playButton;
    UIPushButton *_backButton;
    UIPushButton *_forwardButton;
    unsigned int _isPaused:1;
    unsigned int _ignoreNotifications:1;
    unsigned int _handledTapPause:1;
    double _lastChangeTime;
    int _tapCount;
}

+ (float)defaultHeight;
- (id)initWithDefaultSize;
- (void)dealloc;
- (void)forcePaused:(BOOL)fp8;
- (void)unforcePause;
- (void)_playButtonClicked:(struct __GSEvent *)fp8;
- (void)_changeTracks;
- (void)_forwardButtonClicked:(id)fp8;
- (void)_backButtonClicked:(id)fp8;
- (void)_clearHandledTapPause:(id)fp8;
- (void)viewHandleTouchPause:(id)fp8 isDown:(BOOL)fp12;
- (double)viewTouchPauseThreshold:(id)fp8;
- (void)_setPlayButtonImage:(id)fp8;
- (void)_musicStarted:(id)fp8;
- (void)_musicStopped:(id)fp8;
- (void)_songChanged:(id)fp8;

@end

@interface MusicVolumeBar : UIView
{
    MediaVolumeSlider *_slider;
}

+ (float)defaultHeight;
- (id)initWithDefaultSize;
- (void)setIsActive:(BOOL)fp8;
- (void)dealloc;
- (id)slider;
- (void)mouseUp:(struct __GSEvent *)fp8;

@end

@interface MediaViewTypeListMenu : UITable
{
    id _menuDelegate;
    void *_itemInfo;
    unsigned int *_enabledItemIndexes;
    unsigned int _enabledItemCount:7;
    unsigned int _needsReload:1;
    int _reloadDisabledCount;
}

+ (BOOL)menuViewCanDisplayViewType:(int)fp8 forApplicationRole:(int)fp12;
- (int)viewTypeForTag:(int)fp8;
- (id)initWithSize:(struct CGSize)fp8;
- (void)dealloc;
- (void)setMenuDelegate:(id)fp8;
- (BOOL)_canShowViewType:(int)fp8;
- (void)_calculateEnabledItemIndexes;
- (void)reloadData;
- (void)disableReloads;
- (void)enableReloads;
- (void)noteItemVisibilityChanged;
- (int)_indexOfTag:(int)fp8;
- (void)showChevron:(BOOL)fp8 forItemWithTag:(int)fp12;
- (int)numberOfRowsInTable:(id)fp8;
- (id)table:(id)fp8 cellForRow:(int)fp12 column:(id)fp16 reusing:(id)fp20;
- (BOOL)table:(id)fp8 showDisclosureForRow:(int)fp12;
- (void)selectRow:(int)fp8 byExtendingSelection:(BOOL)fp12;

@end

@interface MediaViewTypeListMenuController : MusicViewController
{
    MediaViewTypeListMenu *_layer;
    unsigned int _shouldHideButtons:1;
}

+ (id)noContextNavTitle;
+ (BOOL)menuViewCanDisplayViewType:(int)fp8 forApplicationRole:(int)fp12;
- (void)dealloc;
- (id)layer;
- (id)mainTable;
- (void)_quickConfigureChevronForMenuItems;
- (void)_reallyConfigureChevronForMenuItems;
- (void)mainMenuItemSelected:(int)fp8;
- (void)noteAppButtonBarItemsChanged;
- (BOOL)shouldShowItemForItemWithTag:(int)fp8;
- (void)tearDown:(BOOL)fp8;
- (id)_navBar;
- (void)willBecomeVisibleForTransition:(int)fp8 fromViewController:(id)fp12 isForwardsMovement:(BOOL)fp16;
- (void)leftNavBarButtonPressed;
- (void)coverFlowWillTransitionOut:(id)fp8 animate:(BOOL)fp12;
- (void)prepareForCoverFlowTransitionIn:(id)fp8 animate:(BOOL)fp12;

@end

@interface MusicSongsController : MediaListingViewController
{
    NSString *_prevEntityName;
    NSArray *_sortedSectionTitles;
    NSDictionary *_sectionSizesByTitle;
    int _numberOfRows;
    MediaEntitySpecifier *_specifier;
}

+ (void)calculatePropertiesForSpecifier:(id)fp8 navigationTitle:(id *)fp12 displayedNavProperty:(unsigned int *)fp16;
+ (int)entityType;
+ (int)entityOrderForContext:(id)fp8;
- (void)dealloc;
- (id)navigationTitle;
- (id)listingCountFormatString;
- (void)setupForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (void)loadActionRows;
- (BOOL)table:(id)fp8 showDisclosureForRow:(int)fp12;
- (void)tableSelectionDidChange:(id)fp8;

@end

@interface MusicNowPlayingContext : NSObject
{
    MLQuery *query;
    unsigned int entityIndex;
    int shuffleType;
    BOOL restartPlaybackOnly;
    unsigned int startingTimeInMS;
    unsigned int startingChapterIndex;
    unsigned int startingTitledChapterIndex;
}

- (void)dealloc;

@end

@interface MusicNowPlayingController : MusicViewController
{
    MusicNowPlayingLayer *_npLayer;
    MusicControlsContainer *_transportControls;
    UIImage *_artForCoverflow;
    struct _NSRect _rectForCoverflow;
    MusicAlbumArtLoader *_bigLoader;
    MusicAlbumArtLoader *_mediumLoader;
    MusicAlbumArtLoader *_smallLoader;
    NSString *_nameOfAlbumForArt;
    MusicNowPlayingContext *_transitionContext;
    struct __CFRunLoopTimer *_progressUpdateTimerRef;
    unsigned int _songDisplayTornDown:1;
    unsigned int _okayToHandleSongChanged:1;
    unsigned int _skippedSongChangedNotification:1;
    unsigned int _songHasChapterData:1;
    unsigned int _songIsChanging:1;
    unsigned int _allowSubviewArtTransition:1;
    unsigned int _didNoteAlbumChange:1;
    unsigned int _userIsChangingAlbumExternally:1;
    unsigned int _displayedChapter;
}

+ (BOOL)allowsNowPlayingButtonInNavBar;
+ (BOOL)wantsAppMenuButtonBar;
+ (BOOL)isOverlay;
+ (int)navigationBarStyleForContext:(id)fp8;
+ (id)applicationShortCutIdentifier;
+ (id)noContextNavTitle;
+ (id)copySetupContextForCurrentPlayState;
- (id)init;
- (void)dealloc;
- (id)layer;
- (id)navBar;
- (id)navigationTitle;
- (id)_nowPlayingLayer;
- (BOOL)_shouldSwitchToAlbumContext;
- (void)subviewTransitionDidFinish;
- (void)coverFlowFlipDidEnd:(id)fp8;
- (void)deviceOrientationChanged:(int)fp8;
- (void)setSuspended:(BOOL)fp8 eventsOnly:(BOOL)fp12;
- (void)flipDidFinish;
- (void)transitionToCoverFlow:(BOOL)fp8;
- (void)transitionFromCoverFlow:(BOOL)fp8;
- (id)currentAlbumArt;
- (struct _NSRect)currentAlbumSubRect;
- (BOOL)noteUserWillChangeAlbumInDirection:(int)fp8;
- (BOOL)noteUserDidChangeAlbum;
- (void)coverFlow:(id)fp8 didChangeToTrackaInAlbumAtIndex:(unsigned int)fp12;
- (void)coverFlow:(id)fp8 willChangeToTrackInAlbumAtIndex:(unsigned int)fp12;
- (void)coverFlowDidTransitionIn:(id)fp8;
- (void)coverFlowDidTransitionOut:(id)fp8;
- (void)coverFlowWillTransitionOut:(id)fp8 animate:(BOOL)fp12;
- (void)prepareForCoverFlowTransitionIn:(id)fp8 animate:(BOOL)fp12;
- (void)coverFlowWillTransitionIn:(id)fp8 animate:(BOOL)fp12;
- (struct CGRect)coverFlowTransitionFrameForController:(id)fp8;
- (id)pushItemOnToNavigationBar:(id)fp8 context:(id)fp12 animate:(BOOL)fp16;
- (void)leftNavBarButtonPressed;
- (void)_mainThreadCreateAndStartTimer;
- (void)_mainThreadReleaseTimer;
- (void)_createAndStartTimer;
- (void)_releaseTimer;
- (void)_loadArtForSong:(id)fp8 timeInMS:(unsigned int)fp12;
- (void)_loadNowPlayingArtAndTitles:(BOOL)fp8;
- (void)_updateChapterRelatedDataIfNecessary;
- (void)_updateDisplayForSong:(id)fp8;
- (BOOL)_userIsChangingTracks;
- (void)setupForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (void)setupStatusBarWithDuration:(float)fp8 fenceID:(unsigned int)fp12;
- (void)musicAlbumArtLoader:(id)fp8 loadedArt:(struct LoadedArtInfo *)fp12 forTrack:(id)fp16 withOrderKey:(int)fp20 artworkFormatID:(unsigned int)fp24;
- (id)currentCustomDefaultResumePNGName;
- (void)tearDown:(BOOL)fp8;
- (void)setupPostTransitionUI;
- (void)setProgressTimerEnabled:(BOOL)fp8;
- (void)_updateProgress:(struct __CFRunLoopTimer *)fp8;
- (void)_timeChangeWhilePaused:(id)fp8;
- (void)_musicStarted:(id)fp8;
- (void)_musicStopped:(id)fp8 updateProgressUI:(BOOL)fp12;
- (void)_musicStopped:(id)fp8;
- (void)_songWillChange:(id)fp8;
- (void)_trackCountChanged:(id)fp8;
- (void)_songChanged:(id)fp8;
- (void)_chapterChanged:(id)fp8;
- (void)seekToElapsed:(unsigned int)fp8;
- (void)seekingStarted:(int)fp8;
- (void)seekingEnded;
- (void)ratingChanged:(int)fp8;

@end

@interface MusicNowPlayingLayer : UIView
{
    id _delegate;
    MusicNowPlayingInfo *_npInfo;
    MusicNowPlayingSubview *_subview;
    MusicNowPlayingSubview *_nextView;
    UIView *_backgroundView;
    UIView *_flipHolder;
    UITransitionView *_transitionView;
    MusicNowPlayingControlsOverlay *_hudOverlay;
    NSDictionary *_skippedAlbumArtInvocationInfo;
    double _lastFlipRequestTime;
    FlipperButton *_flipper;
    id _frontContext;
    unsigned int _lastMediaType;
    int _trackDelta;
    int _forceSubviewDirection;
    struct {
        unsigned int userSwitchedTrackInAlbumContext:1;
        unsigned int userChangingTracks:1;
        unsigned int tornDown:1;
        unsigned int hudVisible:1;
        unsigned int isTransitioning:1;
        unsigned int transitionDuringTransition:1;
        unsigned int inCoverflow:1;
        unsigned int skippedFlip:1;
        unsigned int skippedFlipShouldAnimate:1;
        unsigned int albumIsChanging:1;
        unsigned int unused:22;
    } _npBitfields;
}

- (id)initWithFrame:(struct CGRect)fp8 delegate:(id)fp24;
- (void)dealloc;
- (void)setDuration:(unsigned int)fp8;
- (void)setElapsedTimeSeconds:(unsigned int)fp8 chapterGroup:(unsigned int)fp12 force:(BOOL)fp16;
- (void)setSmallAlbumArtImage:(id)fp8;
- (void)setAlbumArtImage:(id)fp8 imageSubRect:(struct _NSRect)fp12 allowSubviewTransition:(BOOL)fp28;
- (id)albumArtImage;
- (struct _NSRect)albumArtSubRect;
- (id)currentView;
- (void)setDelegate:(id)fp8;
- (void)setupTransitionUIFromTrack:(id)fp8 withTransitionContext:(id)fp12;
- (void)prepareForSubviewTransitionInDirection:(int)fp8;
- (void)setTrack:(id)fp8 query:(id)fp12 index:(unsigned int)fp16 count:(unsigned int)fp20;
- (void)_setTitlesPositionedOnScreen:(BOOL)fp8 animate:(BOOL)fp12;
- (void)prepareNavBarToTransitionIn:(BOOL)fp8;
- (void)prepareNavBarToTransitionOut:(BOOL)fp8;
- (id)specifier;
- (BOOL)needsProgressTimer;
- (unsigned long)lastMediaType;
- (BOOL)didUserChangeTracks;
- (BOOL)isUserChangingTracks;
- (BOOL)isShowingFront;
- (BOOL)isTransitioning;
- (void)showFront;
- (void)tearDown;
- (id)_defaultFlip;
- (void)transitionFinished;
- (void)flipperButton:(id)fp8;
- (void)flip:(id)fp8 animate:(BOOL)fp12;
- (void)toggleHUD;
- (void)userWillChangeToTrackInAlbumAtIndex:(unsigned int)fp8;
- (void)userDidChangeToTrackInAlbumAtIndex:(unsigned int)fp8;
- (void)_doSkippedFlip;
- (void)_handleSkippedAlbumArtChange;
- (void)flipperButtonFinishedFlipping:(id)fp8;
- (void)animationDidStop:(id)fp8 finished:(BOOL)fp12;
- (void)transitionViewDidComplete:(id)fp8;
- (void)ratingControlRatingChanged:(id)fp8;
- (void)lyricsView:(id)fp8 handleTapWithCount:(int)fp12 event:(struct __GSEvent *)fp16;
- (void)musicProgressIndicatorBeganSeeking:(id)fp8;
- (void)musicProgressIndicatorFinishedSeeking:(id)fp8;
- (void)musicProgressIndicator:(id)fp8 clickedOnElapsed:(unsigned int)fp12;
- (struct CGRect)coverflowTransitionFrame;
- (void)willTransitionToCoverFlow:(BOOL)fp8;
- (void)willTransitionFromCoverFlow:(BOOL)fp8;
- (void)didTransitionFromCoverFlow;
- (void)didTransitionToCoverFlow;

@end

@interface MusicNowPlayingInfo : NSObject
{
    MLTrack *_track;
    MediaEntitySpecifier *_specifier;
    UIImage *_albumImage;
    struct _NSRect _albumSubRect;
    unsigned int _durationInSeconds;
    unsigned int _elapsedTimeInSeconds;
    unsigned int _chapterGroupIndex;
    unsigned int _trackIndex;
    unsigned int _trackCount;
    struct {
        unsigned int rating:3;
        unsigned int repeat:1;
        unsigned int shuffle:1;
        unsigned int unused:27;
    } _npiBitfields;
}

- (id)init;
- (void)dealloc;

@end

@interface MusicNowPlayingLayer (Internal)
- (void)_applyInfoToView:(id)fp8;
- (id)_chapterTitle;
- (unsigned int)_currentDuration;
- (BOOL)_hudIsVisible;
- (id)navBar;
- (id)_properties;
- (void)_subviewTransition;
- (void)_subviewTransitionWithoutChangingArtwork;
- (void)_hideFakeHUDStopped;
- (void)_showHUD:(BOOL)fp8;
@end

@interface MusicProgressScrubberControl : UIScrubberControl
{
}

- (const CDAnonymousStruct2 *)metrics;

@end

@interface MusicProgressIndicator : UIView
{
    UIScrubberControl *_scrubberControl;
    unsigned int _duration;
    unsigned int _elapsed;
    unsigned int _offset;
    id _delegate;
    BOOL _tracking;
    BOOL _scheduledDelayedCommit;
    double _nextValidUpdateDate;
}

+ (float)defaultHeight;
- (id)initWithFrame:(struct CGRect)fp8;
- (void)dealloc;
- (void)_ignoreElapsedTimeUpdatesForALittleBit;
- (void)_commitNow;
- (void)_commitValue;
- (void)scrubberControl:(id)fp8 didEnterScrubbingState:(BOOL)fp12;
- (void)scrubberControl:(id)fp8 didChangeToScrubValue:(float)fp12;
- (void)cancelTracking;
- (void)setDuration:(unsigned int)fp8;
- (void)setDelegate:(id)fp8;
- (void)setElapsedTime:(unsigned int)fp8 offset:(unsigned int)fp12 force:(BOOL)fp16;

@end

@interface MusicTrackingLayer : UIView
{
    unsigned int _dragged:1;
    unsigned int _hasSentMouseDown:1;
    UIView *_otherDraggedLayer;
    UIView *_target;
    double _lastEvent;
    struct CGPoint _originalPoint;
    struct __CFArray *_trackingRects;
}

- (void)dealloc;
- (struct __CFArray *)_trackingRectsArray;
- (void)addTrackingRect:(struct CGRect)fp8 forLayer:(id)fp24;
- (void)removeTrackingRectForLayer:(id)fp8;
- (id)superLayerHitTest:(struct CGPoint)fp8 forEvent:(struct __GSEvent *)fp16;
- (id)_trackingTargetForPoint:(struct CGPoint)fp8;
- (id)hitTest:(struct CGPoint)fp8 forEvent:(struct __GSEvent *)fp16;
- (void)mouseDown:(struct __GSEvent *)fp8;
- (void)mouseDragged:(struct __GSEvent *)fp8;
- (void)mouseUp:(struct __GSEvent *)fp8;

@end

@interface MusicNowPlayingButton : UIPushButton
{
    UITextLabel *_labelView;
}

+ (id)_localizedTextLabel;
+ (BOOL)_textDrawnAsLabel;
+ (float)_localizedTextFontSize;
+ (id)_localizedPressedImage;
+ (id)_localizedImage;
- (id)initWithDefaultSetup;
- (void)sizeToFit;
- (BOOL)pointInside:(struct CGPoint)fp8 forEvent:(struct __GSEvent *)fp16;
- (struct CGRect)hitRect;
- (void)layoutSubviews;

@end

@interface MusicNavigationBarTitlesView : UIView
{
    NSArray *_labels;
}

- (id)_addLabel:(unsigned int)fp8;
- (id)initWithFrame:(struct CGRect)fp8;
- (void)dealloc;
- (void)setTitles:(id)fp8;
- (void)tearDown;

@end

@interface MusicNavigationBar : UINavigationBar
{
    UIPushButton *_nowPlayingButton;
    MusicNavigationBarTitlesView *_titlesView;
    unsigned int _nowPlayingVisible:1;
    unsigned int _titlesPositionedOnScreen:1;
    int _disableLeftRightButtonChangeCount;
}

- (id)initWithSize:(struct CGSize)fp8;
- (void)dealloc;
- (void)setNavigationItems:(id)fp8;
- (void)setAccessoryView:(id)fp8;
- (void)setTitlesAlpha:(float)fp8;
- (void)setTitlesPositionOnScreen:(BOOL)fp8;
- (void)setTitles:(id)fp8;
- (void)updateMargin;
- (void)animationDidStop:(id)fp8 finished:(id)fp12;
- (id)createNowPlayingButton;
- (void)showLeftButton:(id)fp8 withStyle:(int)fp12 rightButton:(id)fp16 withStyle:(int)fp20;
- (void)hideButtons;
- (void)disableLeftRightButtonChanges;
- (void)enableLeftRightButtonChanges;
- (void)fadeButton:(id)fp8 toAlpha:(float)fp12 animationID:(id)fp16;
- (void)updateNowPlayingButtonVisible;
- (void)delayedSetNowPlayingButtonAllowed;
- (void)setNowPlayingButtonAllowed:(BOOL)fp8 delayed:(BOOL)fp12;
- (void)setNowPlayingButtonAllowed:(BOOL)fp8;
- (BOOL)nowPlayingButtonIsVisible;
- (void)_nowPlayingClicked:(struct __GSEvent *)fp8;
- (void)_songChanged:(id)fp8;

@end

@interface MusicPlaylistsController : MediaListingViewController
{
}

+ (id)noContextNavTitle;
+ (int)entityType;
- (BOOL)allowsSectionHeadersOnlyForLargeLists;
- (BOOL)shouldRedirectToNoContentView;
- (BOOL)allowAutoDrillIntoFirstEntity;
- (id)_createOTGActionRowInfo;
- (void)loadActionRows;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoForOTGPlaylist;
- (unsigned int)_findIndexOfPurchasedPlaylistEntity;
- (void)handleAdditionalShortCutWithIdentifer:(id)fp8;
- (void)otgPlaylistButtonClicked:(id)fp8;

@end

@interface MusicArtistsController : MediaListingViewController
{
}

+ (int)entityType;
- (BOOL)hidesIndexBarDuringOTG;
- (id)navigationTitle;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;

@end

@interface MusicAlbumsController : MediaListingViewController
{
    NSString *_artist;
}

+ (BOOL)shouldShowItemInMenu;
+ (void)calculatePropertiesForSpecifier:(id)fp8 navigationTitle:(id *)fp12 displayedNavProperty:(unsigned int *)fp16;
+ (int)entityType;
- (void)dealloc;
- (float)rowHeight;
- (void)setupForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;
- (id)titleForEmptyString;
- (void)fillInQueryRowTableCell:(id)fp8 entityIndex:(unsigned int)fp12 query:(id)fp16 column:(id)fp20;
- (id)makeTableCellForEntityIndex:(unsigned int)fp8 query:(id)fp12 column:(id)fp16 reusing:(id)fp20;

@end

@interface MusicAlbumCell : GenericMediaItemTableCell
{
    NSString *_album;
    NSString *_artist;
}

- (void)dealloc;
- (void)setAlbumName:(id)fp8;
- (void)setArtistName:(id)fp8;
- (void)drawTextContentsInRect:(struct CGRect)fp8 selected:(BOOL)fp24;
- (id)_automationID;

@end

@interface PPTButtonBarSwitcher : MediaAppTestController
{
    UIButtonBar *_bar;
    int _barTagIndex;
    int _barTags[128];
    int _numBarTags;
}

+ (BOOL)isAsyncTest;
+ (BOOL)handlesTest:(id)fp8;
- (void)dealloc;
- (BOOL)_viewTypeDisplayableAtRootLevel:(int)fp8;
- (int)_setupForTest;
- (int)_doOneStep;
- (int)asyncDoFirstStep;
- (void)asyncTestBegin;

@end

@interface AlbumArtLoadingTest : MediaAppTestController
{
    unsigned int _currentFormatID;
    NSArray *_formatIDs;
    MLQuery *_query;
    unsigned int _currentEntityIndex;
    NSEnumerator *_formatIDsEnum;
    MusicAlbumArtLoader *_loader;
}

+ (BOOL)handlesTest:(id)fp8;
- (void)setTestFormats:(id)fp8;
- (void)setTestAlbumsFromQuery:(id)fp8;
- (void)dealloc;
- (BOOL)advanceSizeSetting;
- (void)finishedLoadingCurrentArtwork:(id)fp8 track:(id)fp12 fromCache:(BOOL)fp16;
- (void)musicAlbumArtLoader:(id)fp8 loadedArt:(struct LoadedArtInfo *)fp12 forTrack:(id)fp16 withOrderKey:(int)fp20 artworkFormatID:(unsigned int)fp24;
- (int)doReadNextAlbumArt;
- (int)asyncDoFirstStep;

@end

@interface MoviePlayTestMovieTestController : MediaAppTestController
{
    NSArray *_performanceArray;
}

+ (BOOL)handlesTest:(id)fp8;
- (int)asyncDoFirstStep;
- (int)letMoviePlayForABit;
- (void)doneLettingMoviePlayForABit;
- (int)dismissMoviePlayer;
- (void)playbackDidEnd:(id)fp8;
- (void)flattenPerformanceDictionary:(id)fp8 withPrefix:(id)fp12 pptResults:(id)fp16;
- (void)flattenPerformanceArray:(id)fp8 withPrefix:(id)fp12 pptResults:(id)fp16;
- (void)asyncTestEndWithResults:(id)fp8 success:(BOOL)fp12;
- (void)dealloc;

@end

@interface MusicAlbumArtLoader (MusicAlbumArtLoader)
+ (void)testLoadingAllArtwork;
+ (void)testControllerFinished:(id)fp8;
@end

@interface UISectionList (MusicAppTesting)
- (void)scrollBy:(float)fp8 forIterations:(int)fp12;
@end

@interface UIScroller (MusicAppTesting)
- (void)_testingScrollStep;
- (void)scrollBy:(float)fp8 forIterations:(int)fp12;
@end

@interface MusicCoverFlowController (CoverFlowTesting)
- (void)startCoverFlowTest;
@end

@interface MediaPlayerAppController (MusicPlayerAppTesting)
- (BOOL)runningATest;
- (void)noteFinishedTest:(id)fp8;
- (int)handleTest:(id)fp8 options:(id)fp12;
- (void)startScrollSongListTest:(id)fp8 inOTGMode:(BOOL)fp12;
- (void)startScrollAlbumListTest:(id)fp8;
- (void)startButtonBarSwitcherTest:(id)fp8;
- (void)prepareCoverFlowTest:(id)fp8;
- (void)lastTransitionDidComplete;
- (void)testControllerFinished:(id)fp8;
- (struct CGRect)coverFlowTransitionFrameForController:(id)fp8;
- (BOOL)coverFlowHandlePendingRotations:(id)fp8;
- (void)coverFlowDidTransitionIn:(id)fp8;
- (void)coverFlowWillTransitionOut:(id)fp8 animate:(BOOL)fp12;
- (id)currentAlbumArt;
- (void)coverFlow:(id)fp8 didChangeToTrackaInAlbumAtIndex:(unsigned int)fp12;
- (void)coverFlow:(id)fp8 willChangeToTrackInAlbumAtIndex:(unsigned int)fp12;
- (void)coverFlowFlipDidEnd:(id)fp8;
- (void)coverFlowDidTransitionOut:(id)fp8;
- (void)prepareForCoverFlowTransitionIn:(id)fp8 animate:(BOOL)fp12;
- (void)coverFlowWillTransitionIn:(id)fp8 animate:(BOOL)fp12;
@end

@interface MediaPlayerApp (MediaPlayerAppTesting)
- (BOOL)runTest:(id)fp8 options:(id)fp12;
- (void)finishedTest:(id)fp8 extraResults:(id)fp12;
- (void)disableRunningTests;
- (void)enableRunningTests;
@end

@interface VideoAlbumArtLoader : MusicAlbumArtLoader
{
}

+ (id)noArtPlaceholderImage;

@end

@interface MusicAlbumArtLoader : NSObject
{
    id _delegate;
    NSMutableArray *_queue;
    struct __CFArray *_queueOrderKeys;
    NSConditionLock *_queueLock;
    NSRecursiveLock *_cacheLock;
    struct __CFDictionary *_caches;
    struct __CFDictionary *_cachedRanges;
    struct LoadedArtInfo _placeholderImageData;
    NSMutableArray *_batchedRequests;
    struct __CFSet *_batchedRemoves;
    int _capacity;
    int _cacheSize;
    unsigned int _pauseCount;
    unsigned int _unthreaded:1;
    unsigned int _running:1;
    unsigned int _dying:1;
    unsigned int _unordered:1;
    unsigned int _saveOverflow:1;
    unsigned int _useLowThreadPriority:1;
    unsigned int _batchOrderingReversed:1;
    unsigned int _batchKeysShouldGetSorted:1;
    unsigned int _batchInsertedAtEnd:1;
    unsigned int _useCoreSurfaceBacking:1;
    unsigned int _coreSurfaceFormat:32;
}

+ (id)noArtPlaceholderImage;
+ (struct CGSize)unscaledArtworkSizeForFormatID:(unsigned int)fp8;
+ (void)unloadArtwork;
- (id)initWithQueueSize:(int)fp8 saveOverflow:(BOOL)fp12;
- (id)initWithQueueSize:(int)fp8 cacheSize:(int)fp12 saveOverflow:(BOOL)fp16;
- (void)dealloc;
- (void)setDelegate:(id)fp8;
- (id)delegate;
- (void)reset;
- (void)releaseAndDie;
- (struct __CFArray *)_cacheForFormatID:(int)fp8 range:(struct _NSRange *)fp12;
- (void)_setupThreadPriority;
- (void)_runLoaderAsThreaded:(BOOL)fp8;
- (void)_runLoaderUnthreaded;
- (void)_runThreadedLoader;
- (void)_finishedAsThreadedLoad:(BOOL)fp8 context:(id)fp12;
- (void)_finishedUnthreadedLoad:(id)fp8;
- (void)_finishedThreadedLoad:(id)fp8;
- (BOOL)_startLoader;
- (struct LoadedArtInfo *)_cachedArtForTrack:(id)fp8 timeInMS:(unsigned int)fp12 withOrderKey:(int)fp16 artworkFormatID:(unsigned int)fp20;
- (struct LoadedArtInfo *)loadArtForTrack:(id)fp8 timeInMS:(unsigned int)fp12 withOrderKey:(int)fp16 artworkFormatID:(unsigned int)fp20 preloadOnly:(BOOL)fp24;
- (void)setUnordered:(BOOL)fp8;
- (void)setBatchOrderReversed:(BOOL)fp8;
- (void)setBatchInsertedAtEnd:(BOOL)fp8;
- (void)setBatchKeysNeedSorting:(BOOL)fp8;
- (void)setUnthreaded:(BOOL)fp8;
- (BOOL)isUnthreaded;
- (void)setUsesLowThreadPriority:(BOOL)fp8;
- (void)setUseCoreSurfaceBackedImages:(BOOL)fp8;
- (void)setCoreSurfaceImageFormat:(unsigned int)fp8;
- (void)setPaused:(BOOL)fp8;
- (struct LoadedArtInfo *)loadArtForSong:(id)fp8 timeInMS:(unsigned int)fp12 artworkFormatID:(unsigned int)fp16 preloadOnly:(BOOL)fp20;
- (void)forgetArtWithOrderKey:(int)fp8 artworkFormatID:(unsigned int)fp12;
- (void)removeRequestsForOrderKey:(int)fp8;
- (void)startBatchingRequests;
- (void)commitBatchedRequests;
- (void)startBatchingRemoves;
- (void)commitBatchedRemoves;

@end

@interface _LoaderCompletionContext : NSObject
{
    int orderKey;
    unsigned int artworkFormatID;
    struct LoadedArtInfo artInfo;
    MLTrack *albumRep;
    unsigned int isPreloadRequest:1;
}

@end

@interface MusicAlbumArtImage : UIImage
{
    struct __CoreSurfaceBuffer *_bufferRef;
    NSData *_imageData;
}

- (id)initWithCoreSurfaceBuffer:(struct __CoreSurfaceBuffer *)fp8 withData:(id)fp12;
- (struct __CoreSurfaceBuffer *)coreSurfaceBuffer;
- (void)dealloc;

@end

@interface MLTrack (Shuffling)
- (int)_albumTrackCompare:(id)fp8;
@end

@interface NSArray (Shuffling)
- (id)arrayByShuffling;
- (id)arrayByShufflingWithAnchorIndex:(int)fp8;
- (id)arrayByShufflingAlbumsWithAnchorIndex:(int)fp8;
@end

@interface MusicCompilationsController : MusicAlbumsController
{
}

+ (BOOL)shouldShowItemInMenu;
+ (int)entityType;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;

@end

@interface RatingControl : UIControl
{
    int _rating;
    id _delegate;
    struct CGSize _maxHitRectPadding;
    struct CGPoint _trackingStartPoint;
    struct CGPoint _trackingLastPoint;
    BOOL _trackingHandledDrag;
}

+ (struct CGSize)defaultSize;
+ (float)verticalAdjust;
- (id)initWithSize:(struct CGSize)fp8;
- (void)setDelegate:(id)fp8;
- (void)setMaxHitRectPadding:(struct CGSize)fp8;
- (void)setRating:(int)fp8;
- (int)rating;
- (BOOL)canHandleSwipes;
- (void)drawRect:(struct CGRect)fp8;
- (void)_updateRatingForPoint:(struct CGPoint)fp8;
- (BOOL)beginTrackingAt:(struct CGPoint)fp8 withEvent:(struct __GSEvent *)fp16;
- (BOOL)continueTrackingAt:(struct CGPoint)fp8 previous:(struct CGPoint)fp16 withEvent:(struct __GSEvent *)fp24;
- (void)endTrackingAt:(struct CGPoint)fp8 previous:(struct CGPoint)fp16 withEvent:(struct __GSEvent *)fp24;
- (void)view:(id)fp8 handleTapWithCount:(int)fp12 event:(struct __GSEvent *)fp16;
- (BOOL)pointInside:(struct CGPoint)fp8 forEvent:(struct __GSEvent *)fp16;
- (struct CGRect)hitRect;

@end

@interface MediaAppWindow : UIEventObservableWindow
{
}

+ (struct CGRect)constrainFrameToScreen:(struct CGRect)fp8;
- (void)handleStatusBarHeightChange;

@end

@interface MediaViewConfigurationPath : NSObject
{
    MediaViewConfigurationInfo *_rootInfo;
    MediaViewConfigurationPath *_relativePath;
}

- (id)initWithRootInfo:(id)fp8 relativePath:(id)fp12;
- (void)dealloc;
- (id)description;
- (void)setRootInfo:(id)fp8 relativePath:(id)fp12;
- (BOOL)isNextPathComponentRootableAtInfo:(id)fp8;
- (id)nextPathComponent;
- (id)relativePath;

@end

@interface MediaViewConfigurationInfo : NSObject <NSCoding>
{
    struct CGPoint _scrollPosition;
    unsigned int _tableSelection;
    Class _viewControllerClass;
}

- (id)init;
- (void)encodeWithCoder:(id)fp8;
- (id)initWithCoder:(id)fp8;
- (id)description;
- (struct CGPoint)scrollOffset;
- (void)setScrollOffset:(struct CGPoint)fp8;
- (unsigned int)tableSelection;
- (void)setTableSelection:(unsigned int)fp8;
- (void)setViewControllerClass:(Class)fp8;
- (Class)viewControllerClass;
- (int)viewType;

@end

@interface MediaViewController : NSObject
{
    unsigned int _tornDown:1;
}

+ (BOOL)allowsNowPlayingButtonInNavBar;
+ (BOOL)allowedInApplicationWithRole:(int)fp8;
+ (BOOL)wantsAppMenuButtonBar;
+ (BOOL)shouldShowItemInMenu;
+ (struct CGSize)viewSize;
+ (BOOL)isOverlay;
+ (BOOL)isOverlayFullscreen;
+ (void)calculatePropertiesForSpecifier:(id)fp8 navigationTitle:(id *)fp12 displayedNavProperty:(unsigned int *)fp16;
+ (id)navigationTitleForContext:(id)fp8;
+ (id)preparedNavigationItemForContext:(id)fp8;
+ (id)noContextNavTitle;
+ (int)navigationBarStyleForContext:(id)fp8;
+ (id)noContentImage;
+ (float)noContentTopPadding;
+ (float)noContentBottomPadding;
+ (id)noContentTitle;
+ (id)noContentFullTitle;
+ (id)noContentSubtitle;
+ (id)noContentHelpText;
+ (BOOL)canShowCoverFlow;
- (id)init;
- (void)dealloc;
- (BOOL)wasDisplayedWithAppButtonBar;
- (BOOL)wasDisplayedAsOverlay;
- (id)moviePlayerController;
- (id)overlayResumeContext;
- (int)incomingTransition;
- (int)outgoingTransition;
- (id)query;
- (void)databaseContentsDidChangeNotification:(id)fp8;
- (void)handleAdditionalShortCutWithIdentifer:(id)fp8;
- (void)__databaseContentsDidChangeNotification:(id)fp8;
- (void)setupForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (BOOL)handleButtonBarItemSelected:(int)fp8;
- (void)noteAppButtonBarItemsChanged;
- (BOOL)shouldShowButtonBarSelection:(int)fp8;
- (BOOL)noteUserWillChangeAlbumInDirection:(int)fp8;
- (BOOL)noteUserDidChangeAlbum;
- (void)willBecomeVisibleForTransition:(int)fp8 fromViewController:(id)fp12 isForwardsMovement:(BOOL)fp16;
- (void)setSuspended:(BOOL)fp8 eventsOnly:(BOOL)fp12;
- (void)tearDown:(BOOL)fp8;
- (id)currentCustomDefaultResumePNGName;
- (id)layer;
- (id)mainTable;
- (BOOL)isShowingCoverflow;
- (void)resumeToCoverflow;
- (void)setupStatusBarWithDuration:(float)fp8 fenceID:(unsigned int)fp12;
- (void)setupPostTransitionUI;
- (void)tearDownPostTransitionUI;
- (id)pushItemOnToNavigationBar:(id)fp8 context:(id)fp12 animate:(BOOL)fp16;
- (void)leftNavBarButtonPressed;
- (void)rightNavBarButtonPressed;
- (id)navigationTitle;
- (int)navigationBarStyle;
- (unsigned int)saveableTableSelection;
- (struct CGPoint)saveableScrollOffset;
- (void)restoreScrollOffset:(struct CGPoint)fp8 shortCutIdentifier:(id)fp16;
- (void)restoreViewConfiguration:(id)fp8 isForwardsMovement:(BOOL)fp12 shortCutIdentifier:(id)fp16;
- (void)restoreViewConfiguration:(id)fp8 isForwardsMovement:(BOOL)fp12;
- (id)saveableViewConfiguration;
- (id)listingCountFormatString;
- (BOOL)canShowCoverFlowNow;
- (void)deviceOrientationChanged:(int)fp8;
- (void)delayedDeviceOrientationChanged:(int)fp8;
- (void)coverFlowHandlePendingRotationsIfNecessary;

@end

@interface MediaViewController (iPodAccessorySupport)
- (void)willBecomeVisibleForRemoteEvent;
- (BOOL)handleAccessoryKeyStateChanged:(struct __GSEvent *)fp8 repeatCount:(unsigned int)fp12 isRepeat:(BOOL)fp16;
- (BOOL)handleAccessoryKeyStateHeldDown:(struct __GSEvent *)fp8;
- (BOOL)handleAccessoryKeyStateRepeated:(struct __GSEvent *)fp8 repeatCount:(unsigned int)fp12 elapsedTime:(double)fp16;
- (BOOL)handleAccessoryKeyStateChanged:(struct __GSEvent *)fp8 repeatCount:(unsigned int)fp12 handledKeyHold:(BOOL)fp16;
@end

@interface MediaViewController (ButtonBarConfiguration)
+ (id)buttonBarLabel;
+ (id)buttonBarIconName;
+ (id)moreListLabel;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
+ (id)customHandledShortCutIdentifiers;
@end

@interface MusicViewController : MediaViewController
{
    MusicCoverFlowController *_coverFlowController;
    int _postTransitionOrientation;
    BOOL _reorientAfterTransition;
    BOOL _swappingCoverFlow;
}

+ (struct CGSize)viewSize;
+ (id)noContentImage;
+ (float)noContentTopPadding;
+ (id)noContentTitle;
+ (id)noContentSubtitle;
- (void)dealloc;
- (void)tearDown:(BOOL)fp8;
- (void)setSuspended:(BOOL)fp8 eventsOnly:(BOOL)fp12;
- (id)coverFlowController;
- (void)setCoverFlowController:(id)fp8;
- (void)willSwapCoverFlow;
- (BOOL)isShowingCoverflow;
- (void)resumeToCoverflow;
- (void)transitionFromCoverFlow:(BOOL)fp8;
- (void)transitionToCoverFlow:(BOOL)fp8;
- (BOOL)updateCoverFlowForDeviceOrientation:(int)fp8;
- (void)deviceOrientationChanged:(int)fp8;
- (void)delayedDeviceOrientationChanged:(int)fp8;
- (void)setupPostTransitionUI;
- (id)currentAlbumArt;
- (struct _NSRect)currentAlbumSubRect;
- (void)coverFlow:(id)fp8 didChangeToTrackaInAlbumAtIndex:(unsigned int)fp12;
- (void)coverFlow:(id)fp8 willChangeToTrackInAlbumAtIndex:(unsigned int)fp12;
- (struct CGRect)coverFlowTransitionFrameForController:(id)fp8;
- (BOOL)coverFlowHandlePendingRotations:(id)fp8;
- (void)coverFlowHandlePendingRotationsIfNecessary;
- (void)coverFlowDidTransitionIn:(id)fp8;
- (void)coverFlowDidTransitionOut:(id)fp8;
- (void)coverFlowWillTransitionOut:(id)fp8 animate:(BOOL)fp12;
- (void)prepareForCoverFlowTransitionIn:(id)fp8 animate:(BOOL)fp12;
- (void)coverFlowWillTransitionIn:(id)fp8 animate:(BOOL)fp12;

@end

@interface MediaListingViewController : MusicViewController
{
    id _lastCreationContext;
    MusicAlbumArtLoader *_artLoader;
    UIView *_layer;
    struct __CFArray *_sectionInfo;
    MLQueryBucketInfo *_sectionInfoForGrouping;
    NSMutableIndexSet *_disabledRows;
    NSMutableArray *_headActionRowInfo;
    NSMutableArray *_tailActionRowInfo;
    NSArray *_queries;
    int _cachedCountOfEntityRows;
    int _cachedNowPlayingRowIndex;
    Class _artworkCellClass;
    unsigned int _sectioned:1;
    unsigned int _sectionInfoHasTitles:1;
    unsigned int _hideSectionIndex:1;
    unsigned int _showUnplayedIndicator:1;
    unsigned int _showReleaseDate:1;
    unsigned int _allButtonGoesToAlbums:1;
    unsigned int _preloadScheduled:1;
    unsigned int _artLoaderShouldBatchNextRequest:1;
    unsigned int _artLoaderNextBatchOrderReversed:1;
    unsigned int _shouldStripCommonTitlePrefix:1;
    unsigned int _shouldMomentarilyHighlightRowOfCurrentSong:1;
    unsigned int _shouldUnhighlightMomentarilyHighlightedRowOfCurrentSong:1;
    unsigned int _shouldPulseScrollIndicators:1;
    unsigned int _actionRowsToIncludeInDisplayedEntityRowCount:4;
    unsigned int _reloadingForDatabaseContentChanges:1;
}

+ (int)entityType;
+ (int)entityOrderForContext:(id)fp8;
+ (float)defaultRowHeightWithArtworkPresent;
+ (BOOL)reuseCells;
+ (Class)albumArtLoaderClass;
- (unsigned long)_displayedStringPropertyForQuery:(id)fp8;
- (BOOL)allowsSectionHeadersOnlyForLargeLists;
- (BOOL)hidesIndexBarDuringOTG;
- (BOOL)contextRequiresSections:(id)fp8;
- (float)rowHeight;
- (id)init;
- (void)dealloc;
- (void)tearDown:(BOOL)fp8;
- (void)buildUI;
- (id)_mlvLayer;
- (id)layer;
- (id)table;
- (id)sectionList;
- (BOOL)_allowAutoDrillIntoSolitaryEntities;
- (BOOL)allowAutoDrillIntoFirstEntity;
- (BOOL)shouldRedirectToNoContentView;
- (id)createMainQueryForSpecifier:(id)fp8;
- (void)loadQueriesForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (void)databaseContentsDidChangeNotification:(id)fp8;
- (void)loadNonQueryData;
- (void)delayedReleaseAndDie:(id)fp8;
- (void)loadData:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;
- (void)setupForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (void)setupPostTransitionUI;
- (struct CGPoint)saveableScrollOffset;
- (void)_scrollToEnd;
- (void)restoreScrollOffset:(struct CGPoint)fp8 shortCutIdentifier:(id)fp16;
- (void)_musicTrackDidChangeNotification:(id)fp8;
- (void)clearRowBasedCachedData;
- (unsigned int)countOfRowsPrecedingEntities;
- (unsigned int)countOfRowsFollowingEntities;
- (unsigned int)countOfEntityRows;
- (unsigned int)countOfRowsToIgnoreWhenCalculatingCountString;
- (id)listingCountFormatString;
- (void)configureItemCountFormatString;
- (int)_rowForEntityIndex:(unsigned int)fp8 query:(id)fp12;
- (unsigned int)entityIndexForRow:(int)fp8;
- (id)queryForRow:(int)fp8;
- (id)queryForEntity:(id)fp8;
- (id)query;
- (void)userDidClickActionCellAtRow:(unsigned int)fp8;
- (BOOL)wantsShuffleButtonForQuery:(id)fp8;
- (void)shuffleActionRowClicked:(id)fp8;
- (BOOL)wantsAllButtonForQuery:(id)fp8;
- (void)addAllTracksFromQuery:(id)fp8;
- (void)allButtonActionRowClicked:(id)fp8;
- (BOOL)_findFirstActionRowWithTag:(unsigned int)fp8 container:(id *)fp12 indexInContainer:(unsigned int *)fp16 rowInTable:(unsigned int *)fp20;
- (BOOL)canSelectActionRowWithSelector:(SEL)fp8 tag:(int)fp12;
- (BOOL)showingActionRowWithTag:(unsigned int)fp8;
- (unsigned int)removeActionRowWithTag:(unsigned int)fp8;
- (id)_actionRowContainer:(BOOL)fp8;
- (void)appendActionRowWithInfo:(id)fp8 head:(BOOL)fp12;
- (void)insertActionRowWithInfo:(id)fp8 atRow:(int)fp12 head:(BOOL)fp16;
- (id)createActionRowInfoWithLocalizedTitle:(id)fp8 showShuffleIcon:(BOOL)fp12 showPlusButton:(BOOL)fp16 showDisclosure:(BOOL)fp20 showDot:(BOOL)fp24 action:(SEL)fp28 tag:(unsigned int)fp32 includeInDisplayedEntityRowCount:(BOOL)fp36;
- (id)createActionRowInfoWithLocalizedTitle:(id)fp8 showShuffleIcon:(BOOL)fp12 showPlusButton:(BOOL)fp16 showDisclosure:(BOOL)fp20 showDot:(BOOL)fp24 action:(SEL)fp28 tag:(unsigned int)fp32;
- (id)createShuffleActionRow;
- (void)reloadActionRowWithTag:(unsigned int)fp8 info:(id)fp12;
- (id)actionInfoForRow:(int)fp8;
- (void)loadActionRows;
- (id)titleForEmptyString;
- (id)_stringValueForRow:(int)fp8;
- (int)numberOfRowsInTable:(id)fp8;
- (id)makeTableCellForActionRow:(int)fp8 column:(id)fp12 reusing:(id)fp16;
- (void)fillInActionRowTableCell:(id)fp8 row:(int)fp12 column:(id)fp16;
- (id)makeTableCellForEntityIndex:(unsigned int)fp8 query:(id)fp12 column:(id)fp16 reusing:(id)fp20;
- (BOOL)_mightHaveItemsThatNeedNowPlayingIcon;
- (BOOL)_query:(id)fp8 matchesNowPlayingQuery:(id)fp12;
- (BOOL)_updateCachedNowPlayingCellRowIndex;
- (void)_ensureNowPlayingRowIndexIsCached;
- (BOOL)rowRepresentsCurrentlyPlayingTrack:(unsigned int)fp8;
- (void)_momentarilyHighlightRowOfCurrentSong;
- (void)_deselectRowOfCurrentSong;
- (void)willBecomeVisibleForTransition:(int)fp8 fromViewController:(id)fp12 isForwardsMovement:(BOOL)fp16;
- (void)restoreViewConfiguration:(id)fp8 isForwardsMovement:(BOOL)fp12 shortCutIdentifier:(id)fp16;
- (void)_configureIsNowPlayingIconForCell:(id)fp8 rowIndex:(unsigned int)fp12;
- (void)_updateIsNowPlayingIconForCells:(id)fp8 startingRowIndex:(unsigned int)fp12;
- (void)fillInQueryRowTableCell:(id)fp8 entityIndex:(unsigned int)fp12 query:(id)fp16 column:(id)fp20;
- (id)table:(id)fp8 cellForRow:(int)fp12 column:(id)fp16;
- (id)table:(id)fp8 cellForRow:(int)fp12 column:(id)fp16 reusing:(id)fp20;
- (BOOL)_disclosureDisallowedInListUI;
- (BOOL)table:(id)fp8 showDisclosureForRow:(int)fp12;
- (BOOL)handleAddEntitiesForClickOnRow:(unsigned int)fp8 testOnly:(BOOL)fp12;
- (BOOL)table:(id)fp8 disclosureClickableForRow:(int)fp12;
- (BOOL)table:(id)fp8 canSelectRow:(int)fp12;
- (void)tableSelectionDidChange:(id)fp8;
- (void)_appLastTransitionRequestCanceledNotification:(id)fp8;
- (void)table:(id)fp8 disclosureClickedForRow:(int)fp12;
- (int)numberOfSectionsInSectionList:(id)fp8;
- (id)sectionList:(id)fp8 titleForSection:(int)fp12;
- (int)sectionList:(id)fp8 rowForSection:(int)fp12;
- (struct LoadedArtInfo *)loadAlbumArtworkForCellClass:(Class)fp8 atRow:(unsigned int)fp12 forEntityAtIndex:(unsigned int)fp16 query:(id)fp20;
- (void)loadAlbumArtworkIntoCell:(id)fp8 forEntityAtIndex:(unsigned int)fp12 query:(id)fp16;
- (void)mediaItemTableCellWasRemovedFromContainingView:(id)fp8;
- (void)musicAlbumArtLoader:(id)fp8 loadedArt:(struct LoadedArtInfo *)fp12 forTrack:(id)fp16 withOrderKey:(int)fp20 artworkFormatID:(unsigned int)fp24;
- (void)tableWillLoadVisibleCells:(id)fp8;
- (void)_schedulePredictiveArtLoadingForTable:(id)fp8 range:(struct _NSRange)fp12;
- (void)tableDidLoadVisibleCells:(id)fp8 nextPredictedRevealedRange:(struct _NSRange)fp12;
- (void)coverFlowWillTransitionOut:(id)fp8 animate:(BOOL)fp12;
- (void)prepareForCoverFlowTransitionIn:(id)fp8 animate:(BOOL)fp12;

@end

@interface MediaListingViewController (iPodAccessorySupport)
- (id)mainTable;
@end

@interface UITableCell (scalesAlbumArtwork)
+ (BOOL)scalesAlbumArtwork;
@end

@interface UITableCell (MediaListingViewControllerAdditions)
- (void)clearArtLoadingDelegate;
@end

@interface MovieVideosListController : MovieListingViewController
{
    NSString *_prevEntityName;
    MediaEntitySpecifier *_specifier;
    UIMovieView *_previewMovieView;
    unsigned int _propertyDisplayedInNavBar;
}

+ (BOOL)allowedInApplicationWithRole:(int)fp8;
+ (int)entityType;
+ (struct CGSize)viewSize;
+ (void)calculatePropertiesForSpecifier:(id)fp8 navigationTitle:(id *)fp12 displayedNavProperty:(unsigned int *)fp16;
- (void)dealloc;
- (id)navigationTitle;
- (BOOL)wantsShuffleButtonForQuery:(id)fp8;
- (BOOL)contextRequiresSections:(id)fp8;
- (void)setupForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (float)rowHeight;
- (void)tearDown:(BOOL)fp8;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;
- (id)makeTableCellForEntityIndex:(unsigned int)fp8 query:(id)fp12 column:(id)fp16 reusing:(id)fp20;
- (void)fillInQueryRowTableCell:(id)fp8 entityIndex:(unsigned int)fp12 query:(id)fp16 column:(id)fp20;
- (void)table:(id)fp8 deleteRow:(int)fp12;
- (BOOL)table:(id)fp8 showDisclosureForRow:(int)fp12;

@end

@interface MoviePlayerViewController : MediaViewController
{
    UIMoviePlayerController *_player;
    MLTrack *_movieFile;
    MLQuery *_query;
    MusicAlbumArtLoader *_bigLoader;
    UIImage *_movieImage;
    NSDictionary *_statusBarSetupInfo;
    double _movieStartTime;
    unsigned int _autoPlay:1;
    unsigned int _loading:1;
    unsigned int _transitioning:1;
    unsigned int _okayToStartInitialPlayback:1;
    unsigned int _videoOutOn:1;
}

+ (BOOL)allowsNowPlayingButtonInNavBar;
+ (struct CGSize)viewSize;
+ (BOOL)isOverlay;
+ (BOOL)isOverlayFullscreen;
+ (BOOL)wantsAppMenuButtonBar;
+ (int)navigationBarStyleForContext:(id)fp8;
- (BOOL)wasDisplayedAsOverlay;
- (BOOL)wasDisplayedWithAppButtonBar;
- (void)dealloc;
- (id)moviePlayerController;
- (int)incomingTransition;
- (int)outgoingTransition;
- (id)overlayResumeContext;
- (BOOL)_canStartFromLastPlayedForTrack:(id)fp8;
- (void)setupForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (void)deviceOrientationChanged:(int)fp8;
- (void)setSuspended:(BOOL)fp8 eventsOnly:(BOOL)fp12;
- (void)_unlockMoviePlaybackResourcesForTearDown;
- (void)tearDown:(BOOL)fp8;
- (void)tearDownPostTransitionUI;
- (void)exitPlayer;
- (id)layer;
- (void)willBecomeVisibleForTransition:(int)fp8 fromViewController:(id)fp12 isForwardsMovement:(BOOL)fp16;
- (void)setupStatusBarWithDuration:(float)fp8 fenceID:(unsigned int)fp12;
- (void)_startPlayingMovieForInitialLoadIfNecessary;
- (void)setupPostTransitionUI;
- (void)delayedShowSpinner;
- (float)currentTime;
- (void)setCurrentTime:(float)fp8;
- (void)playerDidFinishPlayback:(id)fp8 userExited:(BOOL)fp12;
- (void)alertSheet:(id)fp8 buttonClicked:(int)fp12;
- (BOOL)moviePlayerHideScanningControls:(id)fp8;
- (void)moviePlayerReadyToBeginPlayback:(id)fp8;
- (id)moviePlayerGetMovieArt:(id)fp8;
- (void)musicAlbumArtLoader:(id)fp8 loadedArt:(struct LoadedArtInfo *)fp12 forTrack:(id)fp16 withOrderKey:(int)fp20 artworkFormatID:(unsigned int)fp24;
- (id)navigationBarForOverlayTransition:(id)fp8;
- (BOOL)restoreNavigationBarButtons:(id)fp8 forOverlayTransition:(id)fp12;
- (void)moviePlayer:(id)fp8 willShowChapterGuide:(BOOL)fp12 animating:(BOOL)fp16;
- (void)_setTitlesPositionedOnScreen:(BOOL)fp8 animate:(BOOL)fp12;
- (id)_zoomButtonInfo;
- (void)_configureNavigationBar;
- (void)prepareNavBarToTransitionIn:(BOOL)fp8;
- (void)movieViewScaleModeDidChangeNotification:(id)fp8;
- (void)prepareNavBarToTransitionOut:(BOOL)fp8;
- (id)pushItemOnToNavigationBar:(id)fp8 context:(id)fp12 animate:(BOOL)fp16;
- (void)leftNavBarButtonPressed;
- (void)rightNavBarButtonPressed;
- (unsigned int)_displayMaskForMovie:(id)fp8;
- (id)_properties;

@end

@interface MoviePlayerViewContext : NSObject
{
    MLTrack *_movieFile;
    MLQuery *_query;
    double _startTime;
    unsigned int _autoPlay:1;
}

- (id)initWithMovieTrack:(id)fp8 query:(id)fp12;
- (id)init;
- (void)dealloc;
- (id)description;

@end

@interface MediaAppTestController : NSObject
{
    NSString *_testName;
    NSDictionary *_options;
    SEL _continuation;
    id _delegate;
    unsigned int _async:1;
    unsigned int _waitingTransitionCompletion:1;
    int _iterationsLeft;
    int _warmupIterationsLeft;
}

+ (BOOL)isAsyncTest;
+ (BOOL)handlesTest:(id)fp8;
- (id)initWithName:(id)fp8 options:(id)fp12 delegate:(id)fp16;
- (void)dealloc;
- (void)asyncTestBegin;
- (int)asyncDoFirstStep;
- (void)asyncTestFinished;
- (void)asyncTestEndWithResults:(id)fp8 success:(BOOL)fp12;
- (int)run;
- (int)doNextStep;
- (int)doStepAfterTransitionCompletion;

@end

@interface MusicControlsContainer : UIView
{
    MusicControlsBar *_controlsBar;
    MusicVolumeBar *_volumeBar;
}

+ (float)defaultHeight;
- (id)initWithDefaultSize;
- (id)volumeBar;
- (id)controlsBar;
- (void)dealloc;
- (void)drawRect:(struct CGRect)fp8;

@end

@interface StylishNavigationItem : UINavigationItem
{
    int _barStyle;
}

- (id)description;
- (int)barStyle;
- (void)setBarStyle:(int)fp8;
- (void)setAlpha:(float)fp8;

@end

@interface UITable (MusicPlayerAdditions)
- (id)existingViewAtColumn:(int)fp8 row:(int)fp12;
- (void)setRightMargin:(float)fp8;
- (void)_fadeOutSelection;
- (void)markHighlightedRow:(int)fp8;
- (void)highlightRow:(int)fp8 withFadeOutDelay:(double)fp12;
@end

@interface MediaEntitySpecifier : NSObject <NSCoding>
{
    MLQuery *_specificQuery;
    MLPredicate *_selectionPred;
    NSString *_artist;
    NSString *_album;
    NSString *_genre;
    NSString *_composer;
    NSString *_podcast;
    NSString *_playlist;
    unsigned int _videoType;
    unsigned int _uniquePlaylistID;
    unsigned int _compilation:1;
    unsigned int _albumIsAudioBook:1;
    unsigned int _audibleAudioBook:1;
    int _movieEntityAllowedFileType;
}

+ (void)initialize;
+ (id)mediaEntitySpecifierWithQuery:(id)fp8 filteredByPredicate:(id)fp12;
+ (id)mediaEntitySpecifierForAlbumWithTrack:(id)fp8 baseQuery:(id)fp12;
+ (id)mediaEntitySpecifierWithPodcast:(id)fp8 baseQuery:(id)fp12;
+ (id)mediaEntitySpecifierWithAudioBook:(id)fp8 baseQuery:(id)fp12;
+ (id)mediaEntitySpecifierForAudibleAudioBooksWithBaseQuery:(id)fp8;
+ (id)mediaEntitySpecifierWithArtist:(id)fp8 album:(id)fp12 baseQuery:(id)fp16;
+ (id)mediaEntitySpecifierWithCompilation:(id)fp8 baseQuery:(id)fp12;
+ (id)mediaEntitySpecifierWithGenre:(id)fp8 baseQuery:(id)fp12;
+ (id)mediaEntitySpecifierWithComposer:(id)fp8 baseQuery:(id)fp12;
+ (id)mediaEntitySpecifierWithPlaylistUniqueID:(unsigned int)fp8 baseQuery:(id)fp12;
+ (id)mediaEntitySpecifierWithArtist:(id)fp8 album:(id)fp12 videoType:(unsigned int)fp16 baseQuery:(id)fp20;
+ (id)mediaEntitySpecifierWithVideoType:(unsigned int)fp8 baseQuery:(id)fp12;
+ (id)mediaEntitySpecifierWithUniqueID:(unsigned int)fp8;
+ (id)mediaEntitySpecifierWithTrack:(id)fp8;
+ (id)preparedQueryWithEntitiesOfType:(int)fp8 givenSpecifier:(id)fp12;
+ (id)_calculatedQueryWithEntitiesOfType:(int)fp8 givenSpecifier:(id)fp12 entityOrder:(int)fp16;
+ (id)preparedQueryWithEntitiesOfType:(int)fp8 givenSpecifier:(id)fp12 entityOrder:(int)fp16;
- (void)encodeWithCoder:(id)fp8;
- (id)initWithCoder:(id)fp8;
- (void)_lookupPlaylistNameIfNecessary;
- (id)playlistNameOfSpecifiedPlaylist;
- (id)initWithQuery:(id)fp8;
- (id)mediaEntitySpecifierByRemovingTopLevel;
- (void)dealloc;

@end

@interface IPCController : NSObject
{
    NSMutableDictionary *_connections;
}

+ (id)sharedIPCController;
- (void)run;
- (id)init;
- (void)dealloc;
- (int)connectionTypeForConnection:(unsigned int)fp8;
- (unsigned int)newConnectionIdentifier:(int)fp8;
- (BOOL)closeConnection:(unsigned int)fp8;
- (id)soundControllerForConnection:(unsigned int)fp8;
- (BOOL)getVideoCount:(unsigned int *)fp8 andAudioCount:(unsigned int *)fp12 forConnection:(unsigned int)fp16;
- (BOOL)setCategory:(int)fp8 forConnection:(unsigned int)fp12;
- (unsigned int)countWithCategory:(int)fp8 forConnection:(unsigned int)fp12;
- (unsigned int)playlistCountForConnection:(unsigned int)fp8;
- (id)playlistNameAtIndex:(unsigned int)fp8 forConnection:(unsigned int)fp12;
- (BOOL)setSortType:(int)fp8 atIndex:(unsigned int)fp12 forConnection:(unsigned int)fp16;
- (id)getValue:(int)fp8 atIndex:(unsigned int)fp12 forConnection:(unsigned int)fp16;
- (unsigned long long)getIdentifierAtIndex:(unsigned int)fp8 forConnection:(unsigned int)fp12;
- (BOOL)pushQueryToNowPlayingSelectingIndex:(unsigned int)fp8 forConnection:(unsigned int)fp12;
- (int)shuffleTypeForConnection:(unsigned int)fp8;
- (void)setShuffleType:(int)fp8 forConnection:(unsigned int)fp12;
- (int)repeatForConnection:(unsigned int)fp8;
- (void)setRepeat:(int)fp8 forConnection:(unsigned int)fp12;
- (unsigned int)currentPlayingSongChapterIndexForConnection:(unsigned int)fp8;
- (int)playBackStateForConnection:(unsigned int)fp8;
- (void)setPlayBackState:(int)fp8 forConnection:(unsigned int)fp12;
- (int)currentPlaybackMode;
- (unsigned int)currentPlayingSongIndexForConnection:(unsigned int)fp8;
- (unsigned int)currentPlayingSongTimeForConnection:(unsigned int)fp8;
- (unsigned int)currentPlayingSongDurationForConnection:(unsigned int)fp8;
- (void)setCurrentPlayingSongIndex:(unsigned int)fp8 forConnection:(unsigned int)fp12;
- (unsigned int)playerCountForConnection:(unsigned int)fp8;
- (void)setPlayerCurrentPlayingSongIndex:(unsigned int)fp8 forConnection:(unsigned int)fp12;
- (unsigned int)playerCurrentPlayingSongIndexForConnection:(unsigned int)fp8;
- (unsigned long long)getPlayerIdentifierAtIndex:(unsigned int)fp8 forConnection:(unsigned int)fp12;
- (void)playerSeekToTime:(unsigned int)fp8 forConnection:(unsigned int)fp12;
- (id)getStringValue:(int)fp8 identifier:(unsigned long long)fp12 parameter:(unsigned int)fp20 forConnection:(unsigned int)fp24;
- (unsigned int)getIntegerValue:(int)fp8 identifier:(unsigned long long)fp12 parameter:(unsigned int)fp20 forConnection:(unsigned int)fp24;
- (double)getDoubleValue:(int)fp8 identifier:(unsigned long long)fp12 parameter:(unsigned int)fp20 forConnection:(unsigned int)fp24;
- (void)displayImage:(int)fp8 heigth:(unsigned int)fp12 width:(unsigned int)fp16 bytesPerRow:(unsigned int)fp20 imageData:(void *)fp24 forConnection:(unsigned int)fp28;
- (unsigned int)imageCountForFormat:(unsigned int)fp8 pixelFormat:(int)fp12 identifier:(unsigned long long)fp16 forConnection:(unsigned int)fp24;
- (id)imageTimesForFormat:(unsigned int)fp8 identifier:(unsigned long long)fp12 forConnection:(unsigned int)fp20;
- (id)imageForFormat:(unsigned int)fp8 pixelFormat:(int)fp12 atTime:(unsigned int)fp16 width:(unsigned int *)fp20 height:(unsigned int *)fp24 identifier:(unsigned long long)fp28 forConnection:(unsigned int)fp36;
- (BOOL)_sendEventRecord:(CDAnonymousStruct1 *)fp8 toApp:(id)fp12;
- (void)postFakeLingoAvailableNotification:(BOOL)fp8 lingoMask:(unsigned int)fp12;

@end

@interface MusicPodcastsController : MediaListingViewController
{
}

+ (BOOL)shouldShowItemInMenu;
+ (int)entityType;
+ (id)noContentImage;
+ (float)noContentTopPadding;
+ (id)noContentTitle;
+ (id)noContentSubtitle;
- (BOOL)hidesIndexBarDuringOTG;
- (float)rowHeight;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;
- (void)fillInQueryRowTableCell:(id)fp8 entityIndex:(unsigned int)fp12 query:(id)fp16 column:(id)fp20;
- (id)makeTableCellForEntityIndex:(unsigned int)fp8 query:(id)fp12 column:(id)fp16 reusing:(id)fp20;
- (id)listingCountFormatString;

@end

@interface MusicPodcastCell : GenericMediaItemTableCell
{
    unsigned int _hasUnplayedContents:1;
}

+ (float)minHeight;
+ (unsigned int)artworkFormatID;
- (void)setHasUnplayedContents:(BOOL)fp8;
- (void)drawTextContentsInRect:(struct CGRect)fp8 selected:(BOOL)fp24;

@end

@interface MMP_AVItem : AVItem
{
    MLTrack *_trackRep;
    double _maxJumpedToTime;
    double _stoppedTime;
    double _startedTime;
    double _timeAtPlaybackStart;
    double _timeAtPlaybackStop;
    unsigned int _stoppedByHittingEnd:1;
    unsigned int _didPlay:1;
    unsigned int _advancedDuringPlayback:1;
    unsigned int _wasCountedAsSkipped:1;
    unsigned int _hasSavedFinishedPlayingStats:1;
}

+ (id)playbackPropertiesForTrack:(id)fp8 videoPlayback:(BOOL)fp12 forcedStartTime:(float)fp16;
- (id)init;
- (id)initWithPath:(id)fp8 error:(id *)fp12;
- (void)dealloc;
- (id)description;
- (void)_noteWillBecomeCurrentItem;
- (void)_noteTrackRep:(id)fp8;
- (void)updateAttributesForChangedAppDefault:(id)fp8;
- (float)nextPlaybackStartTimeInSeconds;
- (void)applyAttributesForTrack:(id)fp8 videoPlayback:(BOOL)fp12 forcedStartTime:(float)fp16 applyPlaybackProperties:(BOOL)fp20;
- (float)normalPlaybackRate;
- (id)_trackRep;
- (void)_noteDidStartPlaying;
- (void)_noteUserAdvancedDuringPlayback;
- (BOOL)canConsiderForSkipCountUpdate;
- (void)_noteWasCountedAsSkipped;
- (BOOL)wasCountedAsSkipped;
- (void)_noteHasSavedFinishedPlayingStats;
- (BOOL)hasSavedFinishedPlayingStats;
- (void)_noteStoppedTime:(double)fp8;
- (double)playedDuration;
- (void)_noteJumpedToCurrentTime:(double)fp8;
- (void)_noteStoppedByHittingEnd;
- (void)_clearPlaybackStats;
- (double)maxVisitedTime;
- (BOOL)didPlay;
- (double)startedTime;
- (double)stoppedTime;
- (BOOL)stoppedByHittingEnd;
- (unsigned int)indexInQueueFeeder;
- (void)_attributeAvailable:(id)fp8;

@end

@interface MusicGenresController : MediaListingViewController
{
}

+ (BOOL)shouldShowItemInMenu;
+ (BOOL)shouldShowMainMenuItem;
+ (int)entityType;
- (BOOL)allowsSectionHeadersOnlyForLargeLists;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;

@end

@interface MusicComposersController : MediaListingViewController
{
}

+ (BOOL)shouldShowItemInMenu;
+ (BOOL)shouldShowMainMenuItem;
+ (int)entityType;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;

@end

@interface MSCQueueFeeder : AVQueueFeeder
{
    int _unshuffledTrackOrder;
    MLQuery *_trackQuery;
    MLTrack *_focusedTrack;
    NSArray *_prefixTracks;
    MusicSoundController *_sc;
    MLTrack *_currentTrackBeforeDBChange;
    unsigned int _currentTrackCountBeforeDBChange;
}

- (id)initWithQuery:(id)fp8 focusingOnEntityAtIndex:(unsigned int)fp12;
- (void)setSoundController:(id)fp8;
- (void)dealloc;
- (id)pathAtIndex:(unsigned int)fp8;
- (unsigned int)numberOfPaths;
- (unsigned int)countOfTracks;
- (unsigned int)indexOfTrack:(id)fp8;
- (id)playbackInfoAtIndex:(unsigned int)fp8;
- (id)trackAtIndex:(unsigned int)fp8;
- (id)trackQuery;
- (id)prefixTracks;
- (void)setPrefixTracks:(id)fp8;
- (void)_reevaluateTrackQuery;
- (void)trackContentsWillChangeDatabaseContentsChange;
- (void)trackContentsDidChangeDatabaseContentsChange;
- (void)trackContentsDidChangeByRemovingRange:(struct _NSRange)fp8;
- (void)trackContentsDidChangeByInsertingRange:(struct _NSRange)fp8;
- (void)trackContentsDidChangeByMovingRange:(struct _NSRange)fp8 toIndex:(unsigned int)fp16;
- (int)unshuffledTrackOrder;
- (BOOL)isQueueEqualToQuery:(id)fp8 focusingOnEntityAtIndex:(unsigned int)fp12;

@end

@interface MusicSoundController : NSObject
{
    VolumeController *_volumeController;
    void *_player;
    MSCQueueFeeder *_queueFeeder;
    unsigned int _automaticReleaseDisabledCount;
    unsigned int _currentSong;
    unsigned int _currentChapterIndex;
    unsigned int _chapterSetWhileBuffered;
    unsigned int _songAtPause;
    unsigned int _songDurationInMSeconds;
    unsigned int _elapsedSecondsDuringPause;
    float _lastRequestedSetCurrentTimeValue;
    float _lastKnownTimeBeforeDeath;
    unsigned int _lastKnownPlayingSongIDBeforeDeath;
    double _nextAllowedAVReconnectTime;
    int _forcedShuffleType;
    int _spinlock;
    float _tCurrentTimeRequested;
    struct {
        unsigned int isPlaying:1;
        unsigned int seekedDuringPause:1;
        unsigned int forcingShuffle:1;
        unsigned int forcingRepeat:1;
        unsigned int advanceLocked:1;
        unsigned int songEndedWhileAdvanceLocked:1;
        unsigned int lastPlayedBookmarkingDisabled:1;
        unsigned int manuallySettingCurrentTime:1;
        unsigned int ipcAppConnection:1;
        unsigned int isInSeekingMode:1;
        unsigned int isInSeekByScrubbingMode:1;
        unsigned int wasPlayingBeforeSeekMode:1;
        unsigned int scheduledDelayedSetCurrentTime:1;
        unsigned int interrupted:1;
        unsigned int startFromTimeBeforeDeath:1;
        unsigned int playerDiedOrConnectionFailed:1;
        unsigned int tCurrentTimeThreadRunning:1;
        unsigned int changingTracks:1;
        unsigned int ignoreNextTrackChange:1;
        unsigned int manuallyChangingQueueFeederIndex:1;
        unsigned int fastScanLevel:4;
        unsigned int scanIsForwards:1;
        unsigned int scanAccelerateScheduled:1;
        unsigned int tempDisableAVControllerCreation:1;
        unsigned int usingCustomFadeOutDuration:1;
        unsigned int reportLastRequestedAsCurrentTime:1;
        unsigned int bufferChapterChanges:1;
        unsigned int settingUpQueueFeederContents:1;
        unsigned int shuffleFilterQueryBehavior:2;
        unsigned int creatingAVController:1;
        unsigned int unused:30;
    } _scBitfields;
}

+ (id)sharedInstance;
+ (id)sharedIPCAppInstance;
+ (void)disableSharedIPCAppInstanceRelease;
+ (void)enableSharedIPCAppInstanceRelease;
- (void)_automaticReleaseIfNecessary;
- (void)noteExternalMediaDidPlayback;
- (void)_updateStatsNow;
- (void)applicationDidReceiveMemoryWarningAsUrgent:(BOOL)fp8;
- (void)applicationWillTerminate;
- (void)_registerForAVNotifications:(id)fp8;
- (void)_unregisterForAVNotifications;
- (void)_temporarilyDisableAVControllerCreation:(float)fp8;
- (id)_playerActivated:(BOOL)fp8;
- (void)ensureHasAVController;
- (void)_setWantsVolumeChangesWhenPausedOrInactive:(BOOL)fp8;
- (id)_player;
- (id)init;
- (id)initLocal;
- (id)initRemoteApp;
- (void)dealloc;
- (BOOL)isPlaylistSourceEqualToQuery:(id)fp8;
- (void)playlistContentsDidChangeNotificaiton:(id)fp8;
- (void)databaseContentsWillChangeNotification:(id)fp8;
- (void)databaseContentsDidChangeNotification:(id)fp8;
- (BOOL)hasValidPlaylistQueue;
- (void)_setPlayerQueueFeederContents:(id)fp8 withIndex:(unsigned int)fp12;
- (void)_setupQueueWithFeeder:(id)fp8 shuffleAnchor:(unsigned int *)fp12 forcedStartIndex:(unsigned int)fp16;
- (int)_shuffleEntityOrderForShuffleSettings;
- (BOOL)_setupQueueWithQuery:(id)fp8 focusingOnEntityAtIndex:(unsigned int)fp12 shuffleAnchor:(unsigned int *)fp16 force:(BOOL)fp20 forcedStartIndex:(unsigned int)fp24;
- (BOOL)setActivePlaylistItemsFromQuery:(id)fp8 focusingOnEntityAtIndex:(unsigned int)fp12 force:(BOOL)fp16 forcedStartIndex:(unsigned int)fp20;
- (BOOL)setActivePlaylistItemsFromQuery:(id)fp8 focusingOnEntityAtIndex:(unsigned int)fp12;
- (BOOL)setActivePlaylistItemsFromQuery:(id)fp8;
- (BOOL)setActivePlaylistItemsFromQuery:(id)fp8 shuffleType:(int)fp12 shuffleAnchor:(unsigned int *)fp16 force:(BOOL)fp20 forcedStartIndex:(unsigned int)fp24;
- (BOOL)setActivePlaylistItemsFromQuery:(id)fp8 shuffleType:(int)fp12 shuffleAnchor:(unsigned int *)fp16;
- (void)setRepeatState:(int)fp8;
- (int)repeatState;
- (void)_defaultsChanged:(id)fp8;
- (void)_shuffleWithType:(int)fp8 filterIfNecessary:(BOOL)fp12 anchor:(unsigned int *)fp16 recursionLevel:(int)fp20;
- (void)_shuffleWithType:(int)fp8 anchor:(unsigned int *)fp12;
- (BOOL)setVolume:(float)fp8;
- (float)volume;
- (void)fadeOutForQuit;
- (id)volumeController;
- (void)volumeControllerDidFade:(id)fp8 fadeDirection:(int)fp12;
- (void)volumeControllerWillFade:(id)fp8 fadeDirection:(int)fp12;
- (void)_updateCurrentSongIndexInQueueFromPlayer;
- (void)_updateCurrentSongFromPlayer;
- (void)_updateCurrentSongRate;
- (float)_currentItemNormalPlaybackRate;
- (void)_adjustRateForCurrentItem;
- (void)play;
- (void)_pauseOtherSoundControllers;
- (float)_playerGetCurrentTime;
- (void)_playerSetCurrentTime:(float)fp8;
- (void)_playerPlayCurrentSoundController;
- (void)ignoreNextTrackChange;
- (void)_setPlayerIndexOfCurrentQueueFeederItem:(unsigned int)fp8 error:(id *)fp12;
- (void)playChapterGroupAtIndex:(int)fp8;
- (void)playSongAtIndex:(int)fp8;
- (void)_pausePlayer;
- (void)pause;
- (void)endPlayback;
- (void)endPlaybackForAdvance;
- (BOOL)_changeChapterGroupIndexBy:(int)fp8;
- (void)changeTrackIndexBy:(int)fp8;
- (void)advance;
- (void)back;
- (void)_scheduleFastScanAccelerate;
- (void)_setPlaybackRateForCurrentScanSetting;
- (void)fastScanAccelerate;
- (BOOL)isInSeekingMode;
- (void)beginSeek:(int)fp8;
- (void)_endSeekClearingAttributesOnly:(BOOL)fp8;
- (void)endSeek;
- (void)lockAdvance;
- (void)unlockAdvance;
- (void)setShuffleFilterBehavior:(int)fp8;
- (int)playbackState;
- (id)currentQuery;
- (id)currentSong;
- (id)trackAtIndex:(int)fp8;
- (unsigned int)currentSongIndex;
- (unsigned int)countOfTracks;
- (unsigned int)currentChapterIndex;
- (unsigned int)currentChapterGroupIndex;
- (BOOL)isPlaying;
- (BOOL)isShuffled;
- (int)queueOrdering;
- (BOOL)hasPlaylist;
- (unsigned int)durationOfCurrentSong;
- (unsigned int)durationOfCurrentSongMS;
- (unsigned int)elapsedTimeIntoSong;
- (unsigned int)elapsedTimeIntoSongMS;
- (void)_unscheduleDelayedSetCurrentTime;
- (BOOL)_scheduleAsDelayedSetCurrentTimeInSeconds:(unsigned int)fp8;
- (void)_delayedSetCurrentTimeIfNecessary;
- (void)_tChangeTime;
- (void)_setPlayerCurrentTimeInSeconds:(double)fp8;
- (void)_setPlayerCurrentTimeInSecondsToMatchUnservicedTimeChanges;
- (void)seekToSecond:(unsigned int)fp8;
- (void)countLastSong:(id)fp8;
- (void)_mainThreadPostPlaybackEndedNotification;
- (void)_mainThreadPostPlaybackStartedNotification;
- (void)_mainThreadPostSongWillChangeNotification;
- (void)_mainThreadPostSongChangedNotification;
- (void)_mainThreadPostTrackCountDidChangeNotification;
- (void)_mainThreadPostRepeatModeDidChangeNotification;
- (void)_mainThreadPostIsPlayingStateChanged;
- (void)_mainThreadPostTrackFinishedNotification;
- (void)_delayedPostTimeMarkerCrossedNotification;
- (void)_mainThreadPostTimeMarkerCrossedNotification;
- (void)_mainThreadHandleRewindToBeginning;
- (void)_mainThreadHandleTrackDidJump;
- (void)_cyaMainThreadHandlePlayerServerConnnectionDiedNotifiation;
- (void)handlePlayerServerConnnectionDiedNotifiation:(id)fp8;
- (void)_updateHasBeenPlayedMarkerForItem:(id)fp8 withTime:(double)fp12 didPlay:(BOOL)fp20 atEnd:(BOOL)fp24;
- (void)_updateLastPlayedTimeBookmarkForItem:(id)fp8 withTime:(double)fp12 didPlay:(BOOL)fp20 atEnd:(BOOL)fp24;
- (void)_updateFinishedPlayingStatsWithItem:(id)fp8;
- (void)_registerForTimeMarkerNotificationsIfNecessary:(id)fp8;
- (void)_unregisterForAllTimeMarkerNotifications;
- (void)controller:(id)fp8 crossedTimeMarker:(int)fp12 forItem:(id)fp16 context:(id)fp20;
- (void)_checkForTimeMarkerChange;
- (void)handleTrackPlaybackFailed:(id)fp8;
- (void)handleFinishedDecode:(id)fp8;
- (void)handleTrackFinished:(id)fp8;
- (float)_lastKnownTimeBeforeDeathToBeUsedAsForcedStartTimeForTrack:(id)fp8;
- (void)handleTrackWillChange:(id)fp8;
- (void)handleTrackDidChange:(id)fp8;
- (void)_handleTrackRateChangedToRate:(float)fp8 oldRate:(float)fp12;
- (void)handleTrackRateDidChange:(id)fp8;
- (void)handleVolumeDidChange:(id)fp8;
- (void)handleTrackTimeDidJump:(id)fp8;
- (void)_delayedUpdateCurrentQueueItemHasBeenPlayedMarker;
- (void)handlePlaybackInterrupted:(id)fp8;
- (void)handlePlaybackInterruptionEnded:(id)fp8;

@end

@interface MusicAudioBooksController : MediaListingViewController
{
}

+ (BOOL)shouldShowItemInMenu;
+ (int)entityType;
+ (id)noContentImage;
+ (float)noContentTopPadding;
+ (id)noContentTitle;
+ (id)noContentSubtitle;
- (float)rowHeight;
- (BOOL)wantsAllButtonForQuery:(id)fp8;
- (id)createMainQueryForSpecifier:(id)fp8;
- (BOOL)shouldRedirectToNoContentView;
- (BOOL)allowAutoDrillIntoFirstEntity;
- (void)loadActionRows;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;
- (void)_audibleButtonClicked:(id)fp8;
- (void)fillInQueryRowTableCell:(id)fp8 entityIndex:(unsigned int)fp12 query:(id)fp16 column:(id)fp20;
- (id)listingCountFormatString;

@end

@interface MusicControlsBar (SyntheticEvents)
- (id)plistWithChildren:(struct CGPoint)fp8;
@end

@interface NSObject (MobileMusicPlayerSyntheticEvents)
- (void)plist:(id)fp8 withViews:(id)fp12 titles:(id)fp16 offset:(struct CGPoint)fp20 isRotated:(BOOL)fp28;
@end

@interface VideoItemTableCell (SyntheticEvents)
- (id)plistWithChildren:(struct CGPoint)fp8;
@end

@interface MediaVolumeSlider (SyntheticEvents)
- (id)plistWithChildren:(struct CGPoint)fp8;
@end

@interface MusicOTGSongsController : MusicSongsController
{
    unsigned int *_deletionMarks;
    unsigned int _editing:1;
    unsigned int _needsReevaluation:1;
    unsigned int _registeredForNotifications:1;
}

+ (BOOL)allowsNowPlayingButtonInNavBar;
+ (id)noContextNavTitle;
- (void)dealloc;
- (void)_registerForOTGNotificationsIfNecessary;
- (void)_unregisterForOTGNotificationsIfNecessary;
- (id)navigationTitle;
- (id)_otgPlaylist;
- (void)_showShuffleButtonIfNecessary;
- (void)_showClearAllButtonIfNecessary;
- (void)_reloadOTGQuery:(BOOL)fp8;
- (void)setupForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (BOOL)wantsShuffleButtonForQuery:(id)fp8;
- (void)loadQueriesForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (void)playlistAddedToLibraryNotification:(id)fp8;
- (void)playlistContentsDidChangeNotification:(id)fp8;
- (BOOL)handleButtonBarItemSelected:(int)fp8;
- (BOOL)canShowCoverFlowNow;
- (void)willBecomeVisibleForTransition:(int)fp8 fromViewController:(id)fp12 isForwardsMovement:(BOOL)fp16;
- (void)tearDown:(BOOL)fp8;
- (void)fillInQueryRowTableCell:(id)fp8 entityIndex:(unsigned int)fp12 query:(id)fp16 column:(id)fp20;
- (BOOL)table:(id)fp8 canMoveRow:(int)fp12;
- (int)table:(id)fp8 moveDestinationForRow:(int)fp12 withSuggestedDestinationRow:(int)fp16;
- (BOOL)table:(id)fp8 canDeleteRow:(int)fp12;
- (void)table:(id)fp8 deleteRow:(int)fp12;
- (void)clearAllPlaylistItems:(id)fp8;
- (void)alertSheet:(id)fp8 buttonClicked:(int)fp12;
- (void)table:(id)fp8 movedRow:(int)fp12 toRow:(int)fp16;
- (id)_navBar;
- (void)_configureButtons;
- (void)leftNavBarButtonPressed;
- (void)_delayedUpdateEditing;
- (BOOL)shouldShowButtonBarSelection:(int)fp8;
- (void)rightNavBarButtonPressed;

@end

@interface MusicNowPlayingFrontView : MusicNowPlayingSubview
{
    MusicNowPlayingArtLayer *_artLayer;
    unsigned int _transitioning:1;
}

- (id)initWithSize:(struct CGSize)fp8 context:(id)fp16;
- (void)dealloc;
- (void)flip:(id)fp8;
- (void)finishedFlip;
- (void)setAlbumArt:(id)fp8;
- (void)view:(id)fp8 handleTapWithCount:(int)fp12 event:(struct __GSEvent *)fp16;
- (double)viewDoubleTapDelay:(id)fp8;
- (double)viewRejectAsTapThrehold:(id)fp8;
- (struct CGRect)coverflowTransitionFrame;
- (void)willTransitionToCoverFlow:(BOOL)fp8;
- (void)willTransitionFromCoverFlow:(BOOL)fp8;
- (void)didTransitionFromCoverFlow;
- (BOOL)swipeViewCanHandleSwipes:(id)fp8;
- (void)handleSwipeRight;
- (BOOL)swipView:(id)fp8 swipe:(int)fp12 withEvent:(struct __GSEvent *)fp16;

@end

@interface MusicNowPlayingSubview : UIView
{
    id _delegate;
    BOOL _podcast;
}

- (id)initWithSize:(struct CGSize)fp8 context:(id)fp16;
- (void)flip:(id)fp8;
- (id)flipContext;
- (void)finishedFlip;
- (void)setDelegate:(id)fp8;
- (void)setAlbumArt:(id)fp8;
- (void)updateEditablePropertiesForTrack:(id)fp8 specifier:(id)fp12 chapterGroup:(unsigned int)fp16;
- (void)setRepresentsPodcast:(BOOL)fp8;
- (struct CGRect)coverflowTransitionFrame;
- (void)willTransitionToCoverFlow:(BOOL)fp8;
- (void)willTransitionFromCoverFlow:(BOOL)fp8;
- (void)didTransitionFromCoverFlow;

@end

@interface MusicNowPlayingBackViewBackground : UIView
{
}

- (id)initWithFrame:(struct CGRect)fp8 top:(float)fp24;

@end

@interface MusicNowPlayingBackView : MusicNowPlayingSubview
{
    MLQuery *_query;
    MLChapterTOC *_chapters;
    unsigned int _currentIndex;
    RatingControl *_ratingControl;
    UITable *_table;
    float _indexColumnWidth;
    float _durationColumnWidth;
    int _style;
    MusicCoverFlowBacksideTopView *_coverFlowBackTopView;
    UIImageView *_coverFlowBackImageView;
    id _coverFlowDelegate;
    unsigned int _scrollRowToVisible:1;
}

- (id)initWithSize:(struct CGSize)fp8 style:(int)fp16;
- (void)_databaseContentsDidChangeNotification:(id)fp8;
- (id)hitTest:(struct CGPoint)fp8 forEvent:(struct __GSEvent *)fp16;
- (void)dealloc;
- (id)backgroundView;
- (void)setAlbumArt:(id)fp8;
- (void)setCoverFlowDelegate:(id)fp8;
- (void)view:(id)fp8 handleTapWithCount:(int)fp12 event:(struct __GSEvent *)fp16;
- (void)setDelegate:(id)fp8;
- (void)_userWillChangeTrack;
- (void)_reloadResettingRubberband;
- (void)updateEditablePropertiesForTrack:(id)fp8 specifier:(id)fp12 chapterGroup:(unsigned int)fp16;
- (void)selectSongInAlbumIfPossible:(id)fp8;
- (int)numberOfRowsInTable:(id)fp8;
- (id)table:(id)fp8 cellForRow:(int)fp12 column:(id)fp16 reusing:(id)fp20;
- (void)tableSelectionDidChange:(id)fp8;

@end

@interface MusicNowPlayingBackView (Private)
- (void)_addAccents;
- (unsigned int)_indexOfTrack:(id)fp8;
- (void)_sizeColumnsToFit;
@end

@interface MusicNowPlayingCell : IndicatorTableCell
{
    unsigned int _index;
    float _indexWidth;
    NSString *_title;
    unsigned int _duration;
    float _durationWidth;
    int _style;
}

+ (struct CGColor *)borderColor;
+ (float)rowHeight;
- (id)initWithSize:(struct CGSize)fp8 style:(int)fp16;
- (void)dealloc;
- (void)drawBackgroundInRect:(struct CGRect)fp8 withFade:(float)fp24;
- (void)drawContentInRect:(struct CGRect)fp8 selected:(BOOL)fp24;
- (void)setDuration:(unsigned int)fp8 width:(float)fp12;
- (void)setIndex:(unsigned int)fp8 width:(float)fp12;
- (void)setTitle:(id)fp8;
- (struct CGPoint)indicatorPoint;
- (struct CGColor *)selectedIndicatorColor;
- (void)setCurrent:(BOOL)fp8;

@end

@interface AppDefaults : NSObject
{
}

+ (struct DefaultsEnumToStringMapping *)_enumToStringMappingForKey:(id)fp8;
+ (void)initialize;
+ (void)synchronize;
+ (void)setValue:(id)fp8 forKey:(id)fp12 inRoleDictionary:(id)fp16;
+ (id)valueForKey:(id)fp8 inRoleDictionary:(id)fp12;
+ (void)setValue:(id)fp8 forKey:(id)fp12;
+ (id)valueForKey:(id)fp8;
+ (void)setBoolValue:(BOOL)fp8 forKey:(id)fp12;
+ (BOOL)boolValueForKey:(id)fp8;
+ (void)setEnumValue:(int)fp8 forKey:(id)fp12;
+ (int)enumValueForKey:(id)fp8;
+ (id)localizedPreferenceLabelForValue:(int)fp8 key:(id)fp12;
+ (int)enumValueForLocalizedStringValue:(id)fp8 key:(id)fp12;
+ (int)preferedShuffleOnType;
+ (BOOL)onTheGoEnabled;

@end

@interface MusicCoverFlowView : UIView
{
    UIImage *_ignoreImage;
    UICoverFlowLayer *_coverFlowLayer;
    struct CGPoint _downPoint;
    double _downTime;
    double _lastEventTime;
    BOOL _dragged;
    id _delegate;
    UIView *_rightAdornmentView;
    UIView *_leftAdornmentView;
    UIView *_overlay;
    int _displayedOrientation;
}

- (id)initWithFrame:(struct CGRect)fp8 delegate:(id)fp24;
- (void)dealloc;
- (BOOL)_displayIsFlipped;
- (void)_positionAdornmentView:(id)fp8 normalPosition:(int)fp12;
- (void)_updateSubviewsForDeviceOrientation:(BOOL)fp8;
- (id)overlay;
- (void)setOverlay:(id)fp8;
- (void)setRightAdornmentView:(id)fp8;
- (void)setLeftAdornmentView:(id)fp8;
- (id)coverFlowLayer;
- (void)setInfoView:(id)fp8;
- (void)transition:(unsigned int)fp8 withCoverFrame:(struct CGRect)fp12;
- (void)transitionIn:(float)fp8 fromFrame:(struct CGRect)fp12;
- (void)transitionOut:(float)fp8 toFrame:(struct CGRect)fp12;
- (void)setIgnoreImage:(id)fp8;
- (void)setImage:(id)fp8 atIndex:(unsigned int)fp12 type:(unsigned int)fp16 imageSubRect:(struct _NSRect)fp20;
- (void)selectCoverAtIndex:(int)fp8;
- (int)indexOfSelectedCover;
- (void)setDisplayedOrientation:(int)fp8 animate:(BOOL)fp12;
- (int)displayedOrientation;
- (void)flipSelectedCover;
- (void)mouseDown:(struct __GSEvent *)fp8;
- (void)mouseDragged:(struct __GSEvent *)fp8;
- (void)mouseUp:(struct __GSEvent *)fp8;
- (BOOL)cancelMouseTracking;
- (BOOL)canHandleSwipes;
- (void)displayTick;

@end

@interface someView : UIView
{
}

- (void)drawRect:(struct CGRect)fp8;

@end

@interface MusicCoverFlowBacksideTopView : UIControl
{
    UITextLabel *_artistLabel;
    UITextLabel *_albumLabel;
}

- (id)initWithFrame:(struct CGRect)fp8 rightMargin:(float)fp24;
- (void)dealloc;
- (id)_labelWithFontSize:(float)fp8 frame:(struct CGRect)fp12;
- (void)setTextLabelsFromTrackProperties:(id)fp8;

@end

@interface MusicCoverFlowPlayIndicator : UIPushButton
{
    UIImage *_pauseIndicatorImage;
    UIImage *_playIndicatorImage;
    UIImageView *_indicatorImageView;
    unsigned int _isPlaying:1;
}

+ (void)_loadImages;
+ (void)prefetch;
- (id)initWithDefaultSize;
- (void)setTransform:(struct CGAffineTransform)fp8;
- (void)setIsPlaying:(BOOL)fp8;

@end

@interface PodMovieView : UIMovieView
{
}

- (Class)_app_avItemClass;
- (id)_timeMarkerForChapters:(id)fp8 index:(unsigned int)fp12;
- (void)_registerTimeMarkersForTrack:(id)fp8 forcedStartTime:(float)fp12;
- (void)commitTrackChanges;
- (void)setSubtitlesEnabled:(BOOL)fp8;
- (BOOL)hasAlternateTracksForType:(int)fp8;
- (void)_app_configureAVControllerForMovieItem:(id)fp8;
- (void)_app_applyMovieAttributesToMovieItem:(id)fp8 forcedStartTime:(float)fp12;
- (void)_updateHasBeenPlayedMarkerForItem:(id)fp8 withTime:(double)fp12 didPlay:(BOOL)fp20 atEnd:(BOOL)fp24;
- (void)_updateLastPlayedTimeBookmarkForItem:(id)fp8 withTime:(double)fp12 didPlay:(BOOL)fp20 atEnd:(BOOL)fp24;
- (void)_updateRentalsPlistForFinishedTrack:(id)fp8;
- (void)_updateFinishedPlayingStatsWithItem:(id)fp8;
- (void)_updateStatsNow;
- (void)willSuspend;
- (void)applicationWillTerminate;
- (void)applicationDidReceiveMemoryWarningAsUrgent:(BOOL)fp8;
- (void)_countAsPlayed;
- (void)_app_setPreferenceForMovieScaleMode:(int)fp8;
- (int)_app_getPreferenceForMovieScaleMode;
- (void)_app_delayedUpdateCurrentQueueItemHasBeenPlayedMarker;
- (void)_app_mainThreadHandleTrackFinished:(id)fp8;
- (void)_app_mainThreadHandleTrackFailedToPlay:(id)fp8;
- (void)_app_mainThreadHandleTrackWillChange:(id)fp8;
- (void)_app_mainThreadHandleTrackDidChange:(id)fp8;
- (void)_app_mainThreadHandleTrackRateDidChange:(id)fp8;
- (void)_app_mainThreadHandleTrackTimeDidJump:(id)fp8;
- (void)_scheduleExpirationTimerIfNecessary;
- (void)_movieExpirationCheckCallback;
- (void)_app_mainThreadHandleItemReadyToPlay;

@end

@interface MCFCachedQueryDataController : NSObject
{
    NSLock *_instanceLock;
    MLQuery *_query;
    int _cachedDataRefCount;
    BOOL _cachedDataNeedsToBeReleased;
}

+ (id)sharedInstance;
+ (id)retainedQuery;
+ (void)loadCachedDataIfNecessary;
+ (void)incrementCachedDataRefCount;
+ (void)decrementCachedDataRefCount;
+ (void)_noteCachedDataNeedsReload;
+ (void)flushArtworkCaches;
+ (void)_doDelayedFlushArtworkCaches;
+ (void)flushArtworkCachesAfterShortDelay;
+ (void)createArtworkCaches;
+ (void)setArtworkCachesTarget:(id)fp8;
+ (void)forgetArtworkCachesTarget:(id)fp8;
+ (void)setArtworkCachesPaused:(BOOL)fp8;
+ (id)allArtworkLoaders;
+ (void)setArtworkCachesPaused:(BOOL)fp8 andTarget:(id)fp12;
+ (id)artworkLoaderForArtworkFormatID:(unsigned int)fp8;
+ (void)forgetCachedArtworkForKey:(int)fp8;
- (id)_initSharedInstance;
- (void)_mainThreadRegisterForNotifications;
- (void)lockInstance;
- (void)unlockInstance;
- (void)_locked_releaseAllLoaders;
- (id)_locked_allLoaders;
- (void)_locked_flushAndReleaseAllImageLoaders;
- (void)_locked_ensureAlbumArtLoaders;
- (void)_locked_albumArtLoadersForgetDelegate:(id)fp8;
- (void)_locked_albumArtLoadersSetDelegate:(id)fp8;
- (void)_locked_releaseCachedDataNowIfNecessary;
- (void)_locked_loadCachedDataNow;
- (id)_locked_query;
- (void)_locked_incrementCachedDataRefCount;
- (void)_locked_decrementCachedDataRefCount;
- (void)_locked_noteCachedDataNeedsReload;
- (void)databaseContentsDidChangeNotification:(id)fp8;

@end

@interface MusicCoverFlowController : NSObject
{
    MusicCoverFlowView *_coverFlowView;
    id _delegate;
    MLTrack *_suffixTrack;
    MusicPropertiesView *_propertiesView;
    MusicNowPlayingBackView *_backsideView;
    UIView *_flipView;
    UIPushButton *_infoButton;
    MusicCoverFlowPlayIndicator *_playIndicator;
    int _state;
    unsigned int _indexForLayerArt;
    unsigned int _scheduledDelayedRequest:1;
    int _defaultThreadPriority;
    unsigned int _retainedCachedData:1;
}

+ (void)initialize;
+ (id)flipImage;
+ (void)prefetchCount;
+ (void)_prefetch:(id)fp8;
+ (void)stopAndReleaseResources;
- (id)initWithDelegate:(id)fp8;
- (void)dealloc;
- (id)view;
- (id)delegate;
- (BOOL)isEnabled;
- (BOOL)isFlipping;
- (BOOL)isTransitioning;
- (int)displayedOrientation;
- (id)query;
- (void)setCurrentSong:(id)fp8;
- (void)setDelegate:(id)fp8;
- (void)setSuspended:(BOOL)fp8 eventsOnly:(BOOL)fp12;
- (void)tearDown;
- (void)prepareForPendingTransition;
- (BOOL)transitionIsPending;
- (int)state;
- (void)_transitionToCoverFlow:(BOOL)fp8 rotating:(BOOL)fp12 orientation:(int)fp16 flipView:(id)fp20;
- (void)transitionToCoverFlow:(BOOL)fp8 rotating:(BOOL)fp12 orientation:(int)fp16 flipView:(id)fp20;
- (void)transitionFromCoverFlow:(BOOL)fp8 rotating:(BOOL)fp12;
- (void)flipSelectedCover;
- (void)togglePlayPause;
- (id)_allLoaders;
- (id)_loaderForArtworkFormatID:(unsigned int)fp8;
- (void)musicAlbumArtLoader:(id)fp8 loadedArt:(struct LoadedArtInfo *)fp12 forTrack:(id)fp16 withOrderKey:(int)fp20 artworkFormatID:(unsigned int)fp24;
- (int)numberOfItemsInCoverFlow:(id)fp8;
- (BOOL)coverFlow:(id)fp8 beginBatchRequest:(int)fp12;
- (void)coverFlowEndBatchRequest:(id)fp8;
- (BOOL)coverFlow:(id)fp8 beginBatchCancelRequest:(int)fp12;
- (void)coverFlow:(id)fp8 cancelRequestAtIndex:(unsigned int)fp12 quality:(unsigned int)fp16;
- (void)coverFlowEndBatchCancelRequest:(id)fp8;
- (void)_coverFlow:(id)fp8 requestImageAtIndex:(unsigned int)fp12 quality:(unsigned int)fp16 preloadOnly:(BOOL)fp20;
- (void)coverFlow:(id)fp8 requestImageAtIndex:(unsigned int)fp12 quality:(unsigned int)fp16;
- (BOOL)coverFlow:(id)fp8 prefetch:(unsigned int)fp12 atIndex:(unsigned int)fp16;
- (id)_updatePropertiesOfBacksideViewWithCoverIndex:(unsigned int)fp8;
- (id)coverFlow:(id)fp8 requestFlipLayerAtIndex:(unsigned int)fp12;
- (void)coverFlowFlipDidEnd:(id)fp8;
- (void)coverFlow:(id)fp8 selectionDidChange:(unsigned int)fp12;
- (void)coverFlow:(id)fp8 transitionDidEnd:(unsigned int)fp12;
- (void)userWillChangeToTrackInAlbumAtIndex:(unsigned int)fp8;
- (void)userDidChangeToTrackInAlbumAtIndex:(unsigned int)fp8;
- (void)_musicStarted:(id)fp8;
- (void)_musicStopped:(id)fp8;
- (void)_songChanged:(id)fp8;
- (void)_chapterChanged:(id)fp8;

@end

@interface MusicCoverFlowController (Private)
+ (id)_placeHolderImage;
- (BOOL)_displayIsFlipped;
- (void)_addCoverFlowTrackingRect;
- (void)_removeCoverFlowTrackingRect;
- (void)_addExitTrackingRects;
- (void)_removeExitTrackingRects;
- (BOOL)_buildCoverFlow:(int)fp8;
- (void)_buildCoverFlowBackside;
- (unsigned int)_currentSongIndexInCoverFlowQuery:(BOOL)fp8;
- (id)_stringValueForProperty:(unsigned long)fp8 ofEntityAtIndex:(unsigned int)fp12 placeholder:(id)fp16;
- (void)_updateCoverFlowProperties;
- (void)_finishedTransitionFromCoverFlow;
- (void)_finishedTransitionToCoverFlow;
- (void)_finishedRotationOnlyTransition;
- (void)_registerForMusicNotifications;
- (void)_unregisterForMusicNotifications;
- (id)_trackingLayer;
- (void)_switchToTransitionPriority;
- (void)_switchToDefaultPriority;
- (void)_noteDidStopUsingCachedData;
- (void)_noteDidStartUsingCachedData;
@end

@interface MusicSavedViewContext : NSObject <NSCoding>
{
    id creationContext;
    MediaViewConfigurationInfo *viewConfiguration;
}

+ (void)initialize;
- (void)encodeWithCoder:(id)fp8;
- (id)initWithCoder:(id)fp8;
- (id)description;
- (void)dealloc;

@end

@interface MediaPlayerAppController : NSObject
{
    MediaAppWindow *_window;
    UIAlertSheet *_presentedAlert;
    UITransitionView *_fullScreenTransitionView;
    UITransitionView *_fullScreenMinusButtonBarTransitionView;
    MusicTrackingLayer *_contentLayer;
    MusicNavigationBar *_mainNavBar;
    UITransitionView *_contentNoButtonBarTransitionView;
    UITransitionView *_contentNoButtonBarContentsView;
    UIView *_otgContainerView;
    UITransitionView *_otgContentTransitionView;
    MusicNavigationBar *_otgNavBar;
    UITransitionView *_contentTransitionView;
    UIButtonBar *_buttonBar;
    int _buttonBarItemToSelect;
    int *_buttonBarItemList;
    int _buttonBarItemListCount;
    MediaViewController *_currentViewController;
    MediaViewController *_previousViewController;
    MediaViewController *_preOTGViewController;
    UIView *_previousViewControllerLayer;
    int _notifyDontAnimateREOToken;
    unsigned int _initializingUI:1;
    unsigned int _hasInitializedUI:1;
    unsigned int _exitingAppForSync:1;
    unsigned int _resumingUI:1;
    unsigned int _showingAccessorySplash:1;
    unsigned int _resumeToMainScreen:1;
    unsigned int _transitionWithoutUI:1;
    unsigned int _pendingTransitions:4;
    unsigned int _tryingToTransitionToPreviouslyRedirected:1;
    unsigned int _otgMode:1;
    unsigned int _leavingOTG:1;
    unsigned int _editingButtonBar:1;
    unsigned int _toreDownSplashScreenWhileSuspended:1;
    unsigned int _dontPerformTheTransition:1;
    unsigned int _forceBackwardsTransition:1;
    unsigned int _waitingForSyncLockToConsiderSyncEnded:1;
    unsigned int _shouldShowSyncUI:1;
    unsigned int _isShowingSyncUI:1;
    unsigned int _iapSelectedNextAlbum:1;
    unsigned int _accessoryKeyRepeatTimerActive:1;
    unsigned int _accessoryKeyTimerIsForKeyHeld:1;
    unsigned int _accessoryEventKeyHeldHandled:1;
    unsigned int _cycleOffEndShouldSkipNowPlaying:1;
    unsigned int _jetsamedML:1;
    struct {
        unsigned int canAnimateViewsWhenNavAnimationDisabled:1;
        unsigned int allowTransitionBetweenIdenticalViewTypes:1;
        unsigned int animationDirectionForIdenticalViewsIsBackwards:1;
    } _mpaTransitionBehavior;
    struct _MediaAppPersistentState *_appPersistentState[3];
    struct _MediaAppPersistentState _otgModeState;
    struct _MediaAppPersistentState *_currPersistentState;
    struct __GSEvent *_accessoryEventRef;
    unsigned int _accessoryEventRepeatCount;
    unsigned int _accessoryEventRepeatHandledCount;
    double _accessoryEventButtonDownTime;
    SplashView *_splashView;
    struct CGImage *_splashImage;
    NSDictionary *_initMainUIShortCutFallbackContext;
    UIAlertSheet *_preMovieAlertSheet;
    int _preMovieAlertSheetClickedButton;
}

+ (BOOL)sharedInstanceExists;
+ (id)sharedInstance;
+ (float)buttonBarHeight;
+ (BOOL)_showButtonBarForApplicationMode;
+ (Class)viewControllerClassForViewType:(int)fp8;
- (id)_init;
- (id)init;
- (id)_activeNavBar;
- (BOOL)_shouldShowNowPlayingButtonInController:(id)fp8;
- (id)buttonBar;
- (id)navBar;
- (id)appWindow;
- (int)activeApplicationMode;
- (BOOL)isEditingOTG;
- (BOOL)isResuming;
- (id)appPrefsTitle;
- (id)copyPreparedNavigationItemForViewType:(int)fp8 withSpecifier:(id)fp12;
- (void)switchToPlaylistContext:(id)fp8;
- (void)_switchToAlbumContext:(id)fp8 withPopTransition:(BOOL)fp12;
- (void)_pushToAlbumContext:(id)fp8;
- (void)transitionToPreviousViewInAlbumContext:(id)fp8;
- (struct _MediaAppPersistentState *)_persistentStateForRole:(int)fp8;
- (struct _MediaAppPersistentState *)_activeRoleAppPersistentState;
- (void)_savePersistentStateToUDSuspendOrQuit;
- (void)_populateNavStackIfNecessary:(struct _MediaAppPersistentState *)fp8;
- (void)_initPersistentStateFromUDForRole:(int)fp8;
- (void)_configureResumeState;
- (void)_playbackStarted:(id)fp8;
- (void)_updateMediaButtonBarDataFromUD;
- (void)_saveMediaButtonBarDataToUD;
- (void)_configureShownButtonBarButtons;
- (void)_syncButtonBarSelectionForViewType:(int)fp8;
- (void)syncButtonBarSelection;
- (void)_fixupNavStackForButtonBarReorderIfNecessary;
- (unsigned int)_viewTypeIndexInTopLevelButtonBarItem:(int)fp8;
- (BOOL)_viewTypeDisplayableAtRootLevel:(int)fp8;
- (BOOL)_viewTypeIsInMiscContentMenu:(int)fp8;
- (void)buttonBarClicked:(id)fp8;
- (void)_cycleToNextTopLevelItem;
- (void)_createButtonBarIfNecessary;
- (void)_reparentButtonBarForEditModeIfNecessary;
- (void)switchToButtonBarEditing;
- (BOOL)buttonBarContainsItemForViewType:(int)fp8;
- (void)buttonBar:(id)fp8 willDismissCustomizeUI:(BOOL)fp12;
- (void)buttonBar:(id)fp8 didDismissCustomizeUI:(BOOL)fp12;
- (void)presentAlertSheet:(id)fp8 delegate:(id)fp12;
- (void)alertSheet:(id)fp8 buttonClicked:(int)fp12;
- (void)didPresentAlertSheet:(id)fp8;
- (void)didDismissAlertSheet:(id)fp8;
- (id)topMostAlert;
- (void)positionContentsForStatusBarHeightChange;
- (void)statusBarHeightChangedNotification:(id)fp8;
- (id)_applicationShortCutForURLEventUICommand:(id)fp8;
- (id)_applicationShortCutForURL:(id)fp8;
- (BOOL)shouldHandleCurrentURLEventAsOpenShortCut;
- (void)initializeMainUI;
- (void)initializeUI;
- (void)tearDownUI;
- (void)dealloc;
- (void)_suspendMainUI;
- (void)_resumeMainUI;
- (void)_resetupScreen;
- (void)_configureSplashForAccessory;
- (void)_initializeSplashScreen;
- (void)_tearDownSplashScreen;
- (void)applicationSuspend:(struct __GSEvent *)fp8 settings:(id)fp12 isForceQuit:(BOOL)fp16;
- (void)applicationResume:(struct __GSEvent *)fp8;
- (void)setSuspended:(BOOL)fp8 eventsOnly:(BOOL)fp12;
- (void)setAnimateResumeForEventsOnly:(BOOL)fp8;
- (void)applicationDidReceiveMemoryWarningAsUrgent:(BOOL)fp8;
- (BOOL)showingAccessorySplash;
- (void)showAccessorySplash;
- (void)hideAccessorySplash;
- (void)setSplashImageRef:(struct CGImage *)fp8;
- (void)deviceOrientationChanged:(int)fp8;
- (void)willShowCoverFlow;
- (void)willHideCoverFlow;
- (id)containerViewForCoverFlow;
- (BOOL)canShowCoverFlowNow;
- (void)_showMoviePlayerWithCreationContext:(id)fp8;
- (void)_silentlyDismissPreMovieAlertSheet;
- (void)_preMovieAlertSheetButtonClicked:(int)fp8;
- (void)_preMovieAlertSheetDidPresent;
- (void)_preMovieAlertSheetDidDismiss;
- (void)showMoviePlayerWithPlayerWithSetupInfo:(struct _MediaViewControllerSetupInfo)fp8;
- (void)showMoviePlayerWithMovieFile:(id)fp8;
- (void)_transitionToControllerForTopNavItem;
- (void)transitionToTopView:(int)fp8 context:(id)fp12;
- (void)transitionToTopView:(int)fp8;
- (void)_popFullScreenView;
- (void)_movieTornDown:(id)fp8;
- (void)dismissMoviePlayer;
- (void)_tearDownOTGUI;
- (void)_loadOTGViews;
- (void)_resizeOTGViewsForStatusBarHeightChange;
- (void)switchToOnTheGoEditingStartingInView:(int)fp8;
- (void)dismissOnTheGoEditing:(BOOL)fp8;
- (id)_transitionViewForMovingFromController:(id)fp8 movingForwards:(BOOL)fp12 toController:(id)fp16;
- (int)_transitionTypeMovingFromController:(id)fp8 movingForwards:(BOOL)fp12 toController:(id)fp16;
- (void)transitionViewDidComplete:(id)fp8;
- (id)_preparedViewControllerStartingWithViewType:(int *)fp8 allowRedirect:(BOOL)fp12 context:(id *)fp16 shortCutIdentifier:(id *)fp20;
- (void)_restoreDefaultTransitionBehavior;
- (void)_clearPreviouslyVisitedConfigPath;
- (void)_transitionToView:(int)fp8 context:(id)fp12 poppingIfNecessary:(BOOL)fp16 useDefaultTransitionBehavior:(BOOL)fp20;
- (void)_transitionToView:(int)fp8 context:(id)fp12 poppingIfNecessary:(BOOL)fp16 useDefaultTransitionBehavior:(BOOL)fp20 shortCutIdentifier:(id)fp24;
- (void)transitionToView:(int)fp8 context:(id)fp12 poppingIfNecessary:(BOOL)fp16;
- (void)transitionToView:(int)fp8 context:(id)fp12;
- (void)transitionToPreviousView;
- (BOOL)handleAsRootOrMiscMenuShortCutToViewType:(int)fp8;
- (void)_transitionToMainUIShortCutFallbackContext;
- (void)_handleApplicationShortCutWithIdentifier:(id)fp8;
- (void)handleApplicationShortCutWithIdentifier:(id)fp8;
- (void)tryHandleApplicationOpenURLAsPlayImmediatelyURL:(id)fp8;
- (void)handleApplicationOpenURL:(id)fp8;
- (void)transitionToPreviousViewForSwipeGesture;
- (void)transitionForShortCut:(id)fp8 view:(int)fp12 context:(id)fp16;
- (void)tryTransitionToPreviouslyRedirectedView:(int)fp8 context:(id)fp12;
- (void)_transitionBehindCoverflowWithInvocation:(id)fp8;
- (void)_transitionBehindCoverflowWithTarget:(id)fp8 selector:(SEL)fp12;
- (void)configureStatusBarForCurrentViewWithDuration:(float)fp8 fenceID:(unsigned int)fp12;
- (struct CGSize)_viewSize;
- (struct CGSize)_viewSizeWithNoButtonBar;
- (struct CGSize)_overlayViewSize;
- (struct CGSize)viewSizeForControllerClass:(Class)fp8;
- (void)handleControlBarTogglePlayButtonPress;
- (id)moviePlayerController;
- (BOOL)handleStopEvent;
- (void)_setupMusicSoundController;
- (BOOL)handleAlbumSeek:(int)fp8;
- (BOOL)handlePlaylistSeek:(int)fp8;
- (BOOL)handlePlayEvent;
- (BOOL)handlePauseEvent;
- (BOOL)handleSeekBeginEvent:(int)fp8;
- (BOOL)handleSeekEndEvent:(int)fp8;
- (BOOL)_togglePlaybackWouldPlayMusicSoundController;
- (BOOL)handleTogglePlaybackEvent;
- (BOOL)handleChangeTrackEvent:(int)fp8;
- (float)_keyrepeatIntervalForRepeatCount:(unsigned int)fp8;
- (void)_setOneshotKeyRepeatTimerOn:(BOOL)fp8;
- (BOOL)handleAccessoryKeyStateRepeated:(struct __GSEvent *)fp8 repeatCount:(unsigned int)fp12 elapsedTime:(double)fp16;
- (BOOL)handleAccessoryKeyStateHeldDown:(struct __GSEvent *)fp8;
- (BOOL)handleAccessoryKeyStateChanged:(struct __GSEvent *)fp8 repeatCount:(unsigned int)fp12 handledKeyHold:(BOOL)fp16;
- (BOOL)isHandlingRemoteEvents;
- (BOOL)isSimpleRemoteEventFromAnApplication;
- (void)sendAccessoryKeyStateChanged:(struct __GSEvent *)fp8;
- (void)_fireAccessoryButtonStillDown;
- (void)_generateAndSendExpectedKeyStateUpEvent;
- (void)accessoryAvailabilityChanged:(int)fp8 availability:(int)fp12;
- (void)sendAccessoryAvailabilityChanged:(struct __GSEvent *)fp8;
- (void)_exitAppForSync;
- (void)_exitAppForSyncWithoutSBApproval;
- (void)syncDidBegin;
- (void)syncDidEnd;
- (void)iTunesSyncRequestedStart;
- (void)iTunesSyncHasCompleted:(int)fp8;
- (void)iTunesSyncHasBeenBlocked;
- (void)syncingHasBeenUnblockedBySB;
- (void)databaseContentsDidChangeNotification:(id)fp8;
- (void)addTrackingRect:(struct CGRect)fp8 forLayer:(id)fp24;
- (void)removeTrackingRectForLayer:(id)fp8;
- (void)navigationBar:(id)fp8 poppedItem:(id)fp12;
- (void)navigationBar:(id)fp8 buttonClicked:(int)fp12;
- (void)musicNavigationBarNowPlayingClicked:(id)fp8;
- (int *)_buttonBarItemList;
- (int)_buttonBarItemListCount;

@end

@interface MusicSongsController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
@end

@interface MusicAudioBooksController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
@end

@interface MusicPlaylistsController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
+ (id)customHandledShortCutIdentifiers;
@end

@interface MusicCompilationsController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
@end

@interface MusicGenresController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
@end

@interface MusicComposersController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
@end

@interface MusicPodcastsController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
@end

@interface MusicAlbumsController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
@end

@interface MusicArtistsController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
@end

@interface CollapsableVideosListingController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
@end

@interface MediaViewTypeListMenuController (ButtonBarConfiguration)
+ (id)noContextNavTitle;
+ (id)buttonBarIconName;
+ (id)moreListIconName;
+ (id)applicationShortCutIdentifier;
@end

@interface MusicNowPlayingControlsOverlay : UIView
{
    id _delegate;
    UIImageView *_background;
    UIPushButton *_repeatButton;
    UIPushButton *_shuffleButton;
    UITextLabel *_trackInfo;
    MusicProgressIndicator *_progressControl;
    float _heightWithLyrics;
    MusicNowPlayingLyricsView *_lyricsView;
    MLTrack *_track;
    UIImage *_albumArtwork;
    unsigned int _isTransitioning:1;
}

+ (float)defaultHeight;
+ (id)backgroundImage;
- (id)initWithFrame:(struct CGRect)fp8;
- (void)dealloc;
- (void)setDelegate:(id)fp8;
- (void)setHeightWithLyrics:(float)fp8;
- (void)noteWillTransition;
- (struct CGImage *)createSnapshotWithRect:(struct CGRect)fp8;
- (void)noteDidTransition;
- (void)setArtwork:(id)fp8;
- (void)setTrack:(id)fp8;
- (void)setTrackIndex:(unsigned int)fp8 count:(unsigned int)fp12;
- (BOOL)showingLyrics;
- (void)setAlpha:(float)fp8;
- (void)cancelTracking;
- (void)setDuration:(float)fp8;
- (void)setElapsedTime:(unsigned int)fp8 offset:(unsigned int)fp12 force:(BOOL)fp16;
- (void)repeatButtonClicked:(id)fp8;
- (void)shuffleButtonClicked:(id)fp8;
- (void)_addLyricsViewIfNecessary;
- (void)_lyricsAvailable:(id)fp8;
- (void)_finishRemoveLyricsAnimation;
- (void)_removeLyricsViewWithAnimation:(BOOL)fp8;
- (void)_showLyricsForTrack:(id)fp8 animate:(BOOL)fp12;
- (void)_addControls;
- (void)_positionTrackInfo;
- (void)_appDefaultsDidChangeNotification:(id)fp8;
- (void)_trackFinished;
- (void)_playbackDidStart:(id)fp8;
- (BOOL)_shuffleIsOn;
- (void)_updateRepeatIcon;
- (void)_updateShuffleIcon;

@end

@interface MLQuery (MMPAdditions)
+ (id)queryWithBackOfAlbumRelatedPropertiesFromQuery:(id)fp8;
- (BOOL)playbackShouldAllowRepeating;
- (BOOL)playbackShouldAllowShuffling;
- (BOOL)playbackShouldAllowQueuingMultipleEntities;
- (BOOL)hasPredicateForProperty:(unsigned long)fp8;
- (BOOL)isFilteredByAnyPropertyExcludingMediaType;
- (unsigned long)filteredMediaType;
- (void)filterByRemovingPredicatesForProperty:(unsigned long)fp8;
- (id)_podcastOrAlbumFilterPredicateStringValue;
- (id)displayableStringByStrippingCommonPrefixOffString:(id)fp8 stringProperty:(unsigned long)fp12;
- (unsigned int)randomEntityIndexAvoidingEntityMatchingPredicate:(id)fp8;
- (id)listingCountFormatString;
@end

@interface CollapsableVideosListingController : MovieListingViewController
{
    NSArray *_sectionHeaderQueries;
    NSArray *_sectionHeaderTitles;
    unsigned int _scheduledDelayedContentsReload:1;
}

+ (BOOL)allowedInApplicationWithRole:(int)fp8;
+ (id)noContextNavTitle;
- (id)init;
- (void)dealloc;
- (float)rowHeight;
- (BOOL)contextRequiresSections:(id)fp8;
- (void)loadQueriesForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (void)buildUI;
- (struct _MediaViewControllerSetupInfo)viewSetupInfoBySelectingEntityAtIndex:(unsigned int)fp8 query:(id)fp12;
- (void)setSuspended:(BOOL)fp8 eventsOnly:(BOOL)fp12;
- (id)makeTableCellForEntityIndex:(unsigned int)fp8 query:(id)fp12 column:(id)fp16 reusing:(id)fp20;
- (void)fillInQueryRowTableCell:(id)fp8 entityIndex:(unsigned int)fp12 query:(id)fp16 column:(id)fp20;
- (float)table:(id)fp8 heightForRow:(int)fp12;
- (void)table:(id)fp8 deleteRow:(int)fp12;
- (BOOL)table:(id)fp8 showDisclosureForRow:(int)fp12;
- (BOOL)dataSourceSupportsVariableRowHeights;
- (void)_delayedContentsReload;
- (void)_scheduleDelayedContentsReload;
- (void)databaseContentsDidChangeNotification:(id)fp8;
- (void)_movieExpired;

@end

@interface VideoItemCellTextLabel : UITextLabel
{
    NSArray *_alternateStrings;
}

- (void)dealloc;
- (BOOL)adjustStringForWidth:(float)fp8;
- (void)setAlernateStrings:(id)fp8;

@end

@interface VideoItemTableCell : MediaItemTableCell
{
    MLQuery *_query;
    MLTrack *_track;
    UIImageView *_unplayedIndicator;
    NSArray *_leftLabels;
    NSArray *_middleLabels;
    NSArray *_rightLabels;
    unsigned int _groupingChanges:1;
    unsigned int _displayedDisclosureAsDisabled:1;
    unsigned int _displayedDisclosureStyle:3;
    unsigned int _onTheGoPlusButtonDisplayState:1;
    unsigned int _coalesceDisclosureChanges:1;
    unsigned int _hasPendingDisclosureChanges:1;
    unsigned int _pendingDisclosureStyle:3;
    unsigned int _pendingDisclosureClickable:1;
    unsigned int _layingOutSubviews:1;
    int _layoutStyle;
    unsigned int _externallyShownProperty;
    unsigned int _rentalCloseToExpiring:1;
    NSString *_synthTitle;
}

+ (float)defaultCellHeight:(BOOL)fp8;
+ (BOOL)scalesAlbumArtwork;
+ (unsigned int)artworkFormatID;
+ (BOOL)drawsOnlyImageForSubRectSize:(struct CGSize)fp8;
+ (id)artworkBackgroundImage;
- (id)initWithSize:(struct CGSize)fp8 configuredForTable:(id)fp16;
- (void)dealloc;
- (void)setIsUnplayed:(BOOL)fp8;
- (void)setCellLayoutStyle:(int)fp8;
- (void)updateHighlightColors;
- (void)removeControlWillShowRemoveConfirmation:(id)fp8;
- (void)removeControlWillHideRemoveConfirmation:(id)fp8;
- (void)layoutSubviews;
- (id)disclosureImage;
- (id)disclosurePressedImage;
- (void)noteWillBeginChanges;
- (void)noteDidEndChanges;
- (void)_applyPendingDisclosureChanges;
- (void)setShowDisclosure:(BOOL)fp8 animated:(BOOL)fp12;
- (void)setShowOnTheGoPlusButton:(BOOL)fp8;
- (void)setDrawAsDisabled:(BOOL)fp8;
- (void)setAlbumArt:(id)fp8 instanceInfo:(struct MLArtworkInstanceInfo)fp12;
- (void)setExternallyShownProperty:(unsigned long)fp8;
- (void)setDisplayPropertiesFromQuery:(id)fp8 entityIndex:(unsigned int)fp12;
- (void)_rentalInfoLoaded;
- (id)_emptyLabel;
- (id)_createLabelArray;
- (float)_heightOfLabels:(id)fp8;
- (void)_configureLabels:(id)fp8 withStrings:(id)fp12;
- (float)_layoutOriginForLayoutStyle;
- (void)_updateLayoutStyleOfLabels:(id)fp8;
- (void)_setLeftLabelsHiddenForMiddleLabels:(BOOL)fp8;
- (void)_setRightLabelsHidden:(BOOL)fp8;
- (void)_setupTrackDisplayPropertiesWithTrack:(id)fp8 query:(id)fp12;
- (void)_setupGroupDisplayPropertiesWithQuery:(id)fp8 entityIndex:(unsigned int)fp12;

@end

@interface FlipperButton : UIControl
{
    UIView *_flipper;
    UIImageView *_backgroundView;
    UIImageView *_frontView;
    UIImageView *_backView;
    id _delegate;
    BOOL _isFlipping;
}

- (id)initWithImage:(id)fp8;
- (void)setDelegate:(id)fp8;
- (void)dealloc;
- (struct CGRect)hitRect;
- (BOOL)pointInside:(struct CGPoint)fp8 forEvent:(struct __GSEvent *)fp16;
- (BOOL)_onFront;
- (void)flipBasedOnFlip:(id)fp8;
- (void)animationDidStop:(id)fp8 finished:(BOOL)fp12;
- (BOOL)isFlipping;
- (void)setFrontImage:(id)fp8;
- (void)setBackImage:(id)fp8;
- (void)toggle;

@end

@interface MusicPropertiesView : UIView
{
    NSArray *_properties;
    BOOL _center;
}

- (id)initWithFrame:(struct CGRect)fp8 properties:(id)fp24 center:(BOOL)fp28;
- (void)dealloc;
- (void)setProperties:(id)fp8;
- (void)drawRect:(struct CGRect)fp8;

@end

@interface SyncViewController : NoContentViewController
{
}

+ (id)noContextNavTitle;
+ (id)noContentFullTitle;
+ (id)noContentHelpText;
- (void)setupForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (void)transitionFromCoverFlow:(BOOL)fp8;
- (void)transitionToCoverFlow:(BOOL)fp8;
- (id)youCanDownloadContentTitle;

@end

@interface NoContentViewController : MusicViewController
{
    NoContentViewControllerSetupContext *_setupContext;
    UIView *_view;
    MediaViewController *_originalController;
}

+ (struct CGSize)viewSize;
+ (id)noContentTitle;
+ (id)noContentSubtitle;
- (void)dealloc;
- (id)layer;
- (id)_labelWithText:(id)fp8 size:(float)fp12 bottom:(float)fp16;
- (id)_multiLineLabelWithText:(id)fp8 size:(float)fp12 bottom:(float)fp16;
- (id)youCanDownloadContentTitle;
- (void)setupForContext:(id)fp8 redirectInfo:(struct _MediaViewControllerSetupInfo *)fp12;
- (void)databaseContentsDidChangeNotification:(id)fp8;
- (id)navigationTitle;
- (int)navigationBarStyle;
- (void)coverFlowWillTransitionOut:(id)fp8 animate:(BOOL)fp12;
- (void)prepareForCoverFlowTransitionIn:(id)fp8 animate:(BOOL)fp12;
- (BOOL)canShowCoverFlowNow;

@end

@interface NoContentViewControllerSetupContext : NSObject
{
    Class _originalCreationClass;
    id _originalSetupContext;
}

- (id)initWithOriginalControllerClass:(Class)fp8 originalSetupContext:(id)fp12;
- (void)dealloc;
- (Class)originalControllerClass;
- (id)originalSetupContext;

@end

@interface SplashView : UIWindow
{
    UIImageView *_imageView;
}

- (id)init;
- (void)setImageRef:(struct CGImage *)fp8;
- (void)buttonBarClicked:(id)fp8;

@end

@interface GenericMediaItemTableCell : MediaItemTableCell
{
    union {
        NSString *asString;
        UITextLabel *asLabelView;
    } _title;
    UIView *_tmpNowPlayingView;
    double _absoluteReleaseDate;
    unsigned int _drawTextInSubview:1;
    unsigned int _groupingChanges:1;
    unsigned int _displayedDisclosureAsDisabled:1;
    unsigned int _displayedDisclosureStyle:3;
    unsigned int _customDisclosureMargin:9;
    unsigned int _showShuffleNextToTitle:1;
    unsigned int _onTheGoPlusButtonDisplayState:1;
    unsigned int _coalesceDisclosureChanges:1;
    unsigned int _hasPendingDisclosureChanges:1;
    unsigned int _pendingDisclosureStyle:3;
    unsigned int _pendingDisclosureClickable:1;
    unsigned int _layingOutSubviews:1;
    unsigned int _configuringReorderIndicator:1;
    unsigned int _drawNowPlayingInTmpView:1;
}

+ (unsigned int)artworkFormatID;
+ (struct CGRect)artDisplayRectForBounds:(struct CGRect)fp8;
+ (BOOL)drawsOnlyImageForSubRectSize:(struct CGSize)fp8;
- (id)initWithSize:(struct CGSize)fp8;
- (id)initWithSize:(struct CGSize)fp8 configuredForTable:(id)fp16;
- (void)dealloc;
- (void)setDrawTextInSubview:(BOOL)fp8;
- (void)setTitle:(id)fp8;
- (id)title;
- (void)clearArtLoadingDelegate;
- (void)setDisplayPropertiesFromQuery:(id)fp8 entityIndex:(unsigned int)fp12;
- (void)removeControlWillShowRemoveConfirmation:(id)fp8;
- (void)removeControlWillHideRemoveConfirmation:(id)fp8;
- (void)layoutSubviews;
- (void)setNeedsLayout;
- (void)setNeedsDisplay;
- (void)updateHighlightColors;
- (void)setSelected:(BOOL)fp8 withFade:(BOOL)fp12;
- (id)disclosureImage;
- (id)disclosurePressedImage;
- (float)disclosureRightMargin;
- (void)setEnableReordering:(BOOL)fp8 animated:(BOOL)fp12;
- (void)noteWillBeginChanges;
- (void)noteDidEndChanges;
- (void)_applyPendingDisclosureChanges;
- (void)setShowDisclosure:(BOOL)fp8 animated:(BOOL)fp12;
- (void)setShowShuffleDisclosureImage:(BOOL)fp8;
- (void)setShowIsPlayingIndicator:(BOOL)fp8;
- (void)setShowOnTheGoPlusButton:(BOOL)fp8;
- (void)setDrawAsDisabled:(BOOL)fp8;
- (void)removeFromSuperview;
- (struct CGRect)unplayedMarkerRect;
- (void)drawUnplayedStateMarker;
- (void)drawTextContentsInRect:(struct CGRect)fp8 selected:(BOOL)fp24;
- (BOOL)_showingRightAlignedData;
- (float)_customShuffleDisclosureMargin;
- (void)drawContentInRect:(struct CGRect)fp8 selected:(BOOL)fp24;
- (id)_automationID;

@end

@interface MediaItemTableCell : UITableCell
{
    id _delegate;
    int _identifier;
    NSString *_iconImageBaseName;
    unsigned int _showingIconImage:1;
    unsigned int _showingSelectedIconImage:1;
    unsigned int _showUnplayedMarkerArea:1;
    unsigned int _showAlbumArtArea:1;
    unsigned int _showUnplayedMarker:1;
    unsigned int _showReleaseDate:1;
    unsigned int _drawAsDisabled:1;
}

+ (id)artworkBackgroundImage;
+ (unsigned int)artworkFormatID;
+ (struct CGRect)artDisplayRectForBounds:(struct CGRect)fp8;
+ (BOOL)drawsOnlyImageForSubRectSize:(struct CGSize)fp8;
+ (float)iconImageArea;
+ (float)titleHorizontalInset;
- (id)initWithSize:(struct CGSize)fp8 configuredForTable:(id)fp16;
- (id)description;
- (void)dealloc;
- (void)updateHighlightColors;
- (void)noteWillBeginChanges;
- (void)noteDidEndChanges;
- (int)identifier;
- (id)title;
- (void)setDisplayPropertiesFromQuery:(id)fp8 entityIndex:(unsigned int)fp12;
- (void)setDelegate:(id)fp8;
- (void)setDrawAsDisabled:(BOOL)fp8;
- (void)setIdentifier:(int)fp8;
- (void)setShowShuffleDisclosureImage:(BOOL)fp8;
- (void)setShowOnTheGoPlusButton:(BOOL)fp8;
- (void)setShowIsPlayingIndicator:(BOOL)fp8;
- (void)setShowsAlbumArtArea:(BOOL)fp8;
- (void)setShowsUnplayedMarkerArea:(BOOL)fp8;
- (void)setShowsReleaseDate:(BOOL)fp8;
- (void)setTitle:(id)fp8;
- (void)setAlbumArt:(id)fp8;
- (void)setAlbumArt:(id)fp8 instanceInfo:(struct MLArtworkInstanceInfo)fp12;
- (void)setIconBaseName:(id)fp8;
- (id)_currentIconImage;
- (void)_updateArtLayer:(id)fp8 withImageInfo:(id)fp12 isIcon:(BOOL)fp16 instanceInfo:(struct MLArtworkInstanceInfo *)fp20;
- (void)_setIconImageWithInfo:(id)fp8 isIcon:(BOOL)fp12 instanceInfo:(struct MLArtworkInstanceInfo *)fp16;

@end

@interface MITCIconImageView : UIView
{
    UIImage *_iconImage;
    UIImage *_backgroundImage;
}

- (id)initWithFrame:(struct CGRect)fp8;
- (void)dealloc;
- (void)setFrame:(struct CGRect)fp8;
- (void)setIconImage:(id)fp8;
- (void)setBackgroundImage:(id)fp8;
- (struct CGRect)_frameForIconImage:(id)fp8;
- (void)layoutSubviews;

@end

@interface MLTrack (MMPAdditions)
+ (void)resetRentalInfo:(unsigned int)fp8;
+ (void)_loadAllRentalInfo;
- (void)resetRentalInfo:(unsigned int)fp8;
- (BOOL)rentalIsExpired;
- (BOOL)rentalIsValid;
- (BOOL)rentalPlaybackPeriodActive;
- (double)rentalPlaybackTimeRemaining;
- (id)rentalExpirationDate;
- (id)AVItem;
- (id)lyrics;
- (void)setAVItem:(id)fp8;
- (void)_ensureRentalInfoThreadSafeData;
- (id)_dateWithStartDate:(id)fp8 duration:(id)fp12;
- (id)_demoRentalInfo;
- (id)_rentalInfo;
- (void)_enqueueRentalInfoRequest;
- (void)_rentalInfoWasLoaded:(id)fp8;
- (void)loadRentalInfoImmediately;
@end

@interface MusicNowPlayingLyricsView : UIView
{
    id _delegate;
    UIImage *_albumArtwork;
    NSMutableString *_lyrics;
    UIImageView *_background;
    UIImageView *_faderView;
    UIWebView *_webView;
    UITextView *_textView;
    UITextLabel *_loadingLabel;
    UIProgressIndicator *_loadingIndicator;
}

- (id)initWithFrame:(struct CGRect)fp8;
- (void)dealloc;
- (void)layoutSubviews;
- (void)movedToSuperview:(id)fp8;
- (void)movedFromSuperview:(id)fp8;
- (BOOL)hasLyrics;
- (void)noteWillSnapshot;
- (void)noteDidSnapshot;
- (void)setArtwork:(id)fp8;
- (void)setDelegate:(id)fp8;
- (void)setLyrics:(id)fp8 willLoad:(BOOL)fp12;
- (void)view:(id)fp8 handleTapWithCount:(int)fp12 event:(struct __GSEvent *)fp16;
- (double)viewDoubleTapDelay:(id)fp8;
- (double)viewRejectAsTapThrehold:(id)fp8;
- (void)webView:(id)fp8 didFinishLoadForFrame:(id)fp12;
- (void)_addLoadingUI;
- (void)_addLyricsUI;
- (void)_createLyricsUIIfNeeded;
- (void)_removeLoadingUI;
- (void)_removeLyricsUI;
- (struct CGImage *)_createFaderImageBackgroundWithSize:(struct CGSize)fp8;
- (struct CGImage *)_createFaderImage:(BOOL)fp8;
- (void)_updateFaderImage:(BOOL)fp8;

@end

