00001
00002
00003
00004
00005
00006
00007 #import <MusicLibrary/MusicLibrary.h>
00008
00009 @class NSMutableDictionary, NSMutableSet, NSString;
00010
00011 @interface MLDulcimerMusicLibrary : MusicLibrary
00012 {
00013 struct PurpleEngineContext *_purpleDataEngineContext;
00014 NSMutableSet *_purchasedContentXMLFilesLoaded;
00015 NSMutableDictionary *_purchasedContentInfo;
00016 NSString *_basePath;
00017 struct AppContext *_appContext;
00018 struct TrackData *_trackData;
00019 struct ITImageLibrary *_imageLibrary;
00020 unsigned int _needsFlush:1;
00021 unsigned int _triedToLoadImageDB:1;
00022 unsigned int _autoflushScheduled:1;
00023 double _autoflushTargetTime;
00024 unsigned int _cached_HasPodcastsResult:2;
00025 unsigned int _cached_HasAudibleAudioBooksResult:2;
00026 unsigned int _cached_HasAudioBooksResult:2;
00027 unsigned int _cached_HasCompilationsResult:2;
00028 unsigned int _cached_HasComposersResult:2;
00029 unsigned int _cached_HasAlbumsResult:2;
00030 unsigned int _cached_HasGenresResult:2;
00031 }
00032
00033 + (void)_checkForControlDirectoryLocationWithMediaFolderPath:(id)fp8;
00034 + (id)dbModDate;
00035 + (id)_purchasedContentXMLFilenames;
00036 + (BOOL)_hasFinishedDBInitialization;
00037 + (BOOL)hasContent;
00038 + (void)resetLibrary;
00039 + (void)jetsamMemory;
00040 + (struct PlaylistItem *)copyShallowPlaylistItemPtr:(struct PlaylistItem *)fp8;
00041 + (id)_controlDirectoryPathWithBasePath:(id)fp8;
00042 + (id)_pathForResourceFileOrFolder:(int)fp8 basePath:(id)fp12;
00043 - (void)_loadPurchasedDataForInitIfNecessary;
00044 - (void)_clearCachedDBState;
00045 - (id)initWithPath:(id)fp8;
00046 - (void)_willAttemptToLoadPurchasedContent;
00047 - (void)_dbSyncWillBegin;
00048 - (void)_dbSyncDidEnd;
00049 - (unsigned int)countOfPurchasedContent;
00050 - (void)_savePurchaseDBInfo;
00051 - (void)_updatePurchasedContentInfoWithXMLFilename:(id)fp8 inDirectory:(id)fp12;
00052 - (BOOL)_updatePurchasedContentInfo;
00053 - (void)_loadSavedPurchaseDB;
00054 - (BOOL)_dbUpdatePurchasedContent;
00055 - (void)dealloc;
00056 - (id)_checkForArtworkDB;
00057 - (BOOL)_loadImageLibraryIfNecessaryForTrack:(struct TrackInfo *)fp8;
00058 - (id)imageDataForTrackInfo:(struct TrackInfo *)fp8 artworkFormatID:(unsigned int)fp12 size:(struct _NSSize)fp16 artworkInstanceInfo:(struct MLArtworkInstanceInfo *)fp24;
00059 - (id)imageDataForTrackInfo:(struct TrackInfo *)fp8 artworkFormatID:(unsigned int)fp12 size:(struct _NSSize)fp16 chapterIndex:(unsigned int)fp24 chapterTOC:(id)fp28 artworkInstanceInfo:(struct MLArtworkInstanceInfo *)fp32;
00060 - (id)availableArtworkFormatIDsForTrackInfo:(struct TrackInfo *)fp8;
00061 - (id)availableArtworkFormatIDsForTrackInfo:(struct TrackInfo *)fp8 chapterIndex:(unsigned int)fp12 chapterTOC:(id)fp16;
00062 - (BOOL)imageDataAvailableForTrackInfo:(struct TrackInfo *)fp8;
00063 - (void)_scheduleAutoflushWithInterval:(double)fp8;
00064 - (void)_cancelAutoflush;
00065 - (void)_autoflush;
00066 - (void)noteTrackInfoChanged:(struct TrackInfo *)fp8 autoflushDelay:(double)fp12;
00067 - (BOOL)flush;
00068 - (id)path;
00069 - (id)pathForResourceFileOrFolder:(int)fp8;
00070 - (id)pathForResourceFileOrFolder:(int)fp8 createParentFolderIfNecessary:(BOOL)fp12;
00071 - (BOOL)hasAnyVideos;
00072 - (BOOL)hasPodcasts;
00073 - (BOOL)hasAudibleAudioBooks;
00074 - (BOOL)hasAudioBooks;
00075 - (BOOL)hasCompilations;
00076 - (BOOL)hasComposers;
00077 - (BOOL)hasAlbums;
00078 - (BOOL)hasGenres;
00079 - (unsigned int)countOfAllVideoTracks;
00080 - (unsigned int)countOfAllAudioTracks;
00081 - (id)preferredAudioTracks;
00082 - (id)preferredSubtitleTracks;
00083 - (void)debugLogPerfStatistics;
00084 - (BOOL)markHiddenTracks:(id)fp8 hidden:(BOOL)fp12;
00085 - (BOOL)markAndDeleteTracks:(id)fp8;
00086 - (void)loadArtwork;
00087 - (void)unloadArtwork;
00088 - (struct MLArtworkFormatSpec)formatSpecForArtworkFormatID:(unsigned int)fp8;
00089 - (void)_dulcNoticePlaylistAdded:(struct Playlist *)fp8;
00090 - (id)_preparedPlaylistChangeUserInfoForDeletionRange:(struct _NSRange)fp8 insertionRange:(struct _NSRange)fp16;
00091 - (void)_dulcNoticePlaylistContentsWillMutate:(struct Playlist *)fp8 deletionRange:(struct _NSRange)fp12 insertionRange:(struct _NSRange)fp20;
00092 - (void)_dulcNoticePlaylistContentsDidMutate:(struct Playlist *)fp8 deletionRange:(struct _NSRange)fp12 insertionRange:(struct _NSRange)fp20;
00093 - (void)_dulcNoticePlaylistContentsWillMutate:(struct Playlist *)fp8 willMoveItemsFromRange:(struct _NSRange)fp12 toIndex:(unsigned int)fp20;
00094 - (void)_dulcNoticePlaylistContentsDidMutate:(struct Playlist *)fp8 didMoveItemsFromRange:(struct _NSRange)fp12 toIndex:(unsigned int)fp20;
00095 - (void)_dulcNoticePlaylistAttributesMutated:(struct Playlist *)fp8;
00096 - (void)_flushOnTheGoPlaylistChanges;
00097 - (id)activeOnTheGoPlaylist;
00098 - (void)_saveOTGPlaylist:(struct Playlist *)fp8;
00099 - (void)_mutateOTGPlaylist:(struct Playlist *)fp8 insertTracks:(id)fp12 atIndex:(unsigned int)fp16 postNotifications:(BOOL)fp20;
00100 - (void)_mutateOTGPlaylist:(struct Playlist *)fp8 insertEntitiesFromQuery:(id)fp12 entityIndexes:(id)fp16 atIndex:(unsigned int)fp20 postNotifications:(BOOL)fp24;
00101 - (void)_mutateOTGPlaylist:(struct Playlist *)fp8 removeTracksInRange:(struct _NSRange)fp12 postNotifications:(BOOL)fp20;
00102 - (void)_mutateOTGPlaylist:(struct Playlist *)fp8 moveEntitiesFromRange:(struct _NSRange)fp12 toIndex:(unsigned int)fp20 postNotifications:(BOOL)fp24;
00103 - (struct Playlist *)_getPrimaryPlaylist;
00104 - (struct __MLDTracksQueryResults)_findTracksSatisfyingPredicateChain:(struct __TestPredicateNode *)fp8 inPlaylist:(struct Playlist *)fp12 groupingProperty:(unsigned long)fp16 groupingThreshold:(unsigned int)fp20 reportGroupMembers:(BOOL)fp24 allowMixedResults:(BOOL)fp28 firstGroupItemOnly:(BOOL)fp32 orderInfo:(struct _MLTrackOrderInfo *)fp36 skipUnknown:(BOOL)fp40;
00105 - (struct __CFArray *)_findPlaylistsSatisfyingPredicateChain:(struct __TestPredicateNode *)fp8 groupingProperty:(unsigned long)fp12 orderWithSpecialItemsFirst:(BOOL)fp16;
00106 - (struct Playlist *)_firstPlaylistPtrMatchingPredicate:(void *)fp8 ignorePrimaryDBPlaylist:(BOOL)fp12 updateSmartPlaylists:(BOOL)fp16 context:(void *)fp20;
00107 - (struct PlaylistItem *)_findFirstTrackSatisfyingPredicate:(void *)fp8 context:(void *)fp12;
00108 - (struct Playlist *)_playlistTargetForCriteria:(struct _MLCompoundPredicateStruct *)fp8 query:(id)fp12;
00109 - (BOOL)_playlistItemPtrMatchesPredicateChain:(struct __TestPredicateNode *)fp8 playlistItemPtr:(struct PlaylistItem *)fp12;
00110 - (BOOL)_playlistPtrMatchesPredicateChain:(struct __TestPredicateNode *)fp8 playlistPtr:(struct Playlist *)fp12;
00111 - (unsigned int)_indexOfFirstTracksSatisfyingPredicateChain:(struct __TestPredicateNode *)fp8 inArrayOfPlaylistItemPtr:(struct __CFArray *)fp12;
00112 - (unsigned int)_indexOfFirstPlaylistSatisfyingPredicateChain:(struct __TestPredicateNode *)fp8 inArrayOfPlaylistPtr:(struct __CFArray *)fp12;
00113
00114 @end
00115