MTP: More prototyping work:
New media scanner test program
Media scanner now cleans up after files that no longer exist
Separate database table for audio files
Extract metadata from audio files with libstagefright
Change-Id: I2bd0fe877836c741658e72fcfeb89c11be0d9b41
Signed-off-by: Mike Lockwood <lockwood@android.com>
diff --git a/media/mtp/MtpDatabase.h b/media/mtp/MtpDatabase.h
index 2a48155..a6be6a6 100644
--- a/media/mtp/MtpDatabase.h
+++ b/media/mtp/MtpDatabase.h
@@ -33,20 +33,38 @@
SqliteStatement* mObjectInfoQuery;
SqliteStatement* mFileInserter;
SqliteStatement* mFileDeleter;
+ SqliteStatement* mAudioInserter;
+ SqliteStatement* mAudioDeleter;
public:
MtpDatabase();
virtual ~MtpDatabase();
+ static uint32_t getTableForFile(MtpObjectFormat format);
+
bool open(const char* path, bool create);
+ MtpObjectHandle getObjectHandle(const char* path);
MtpObjectHandle addFile(const char* path,
MtpObjectFormat format,
MtpObjectHandle parent,
MtpStorageID storage,
uint64_t size,
- time_t created,
time_t modified);
+ MtpObjectHandle addAudioFile(MtpObjectHandle id);
+
+ MtpObjectHandle addAudioFile(MtpObjectHandle id,
+ const char* title,
+ const char* artist,
+ const char* album,
+ const char* albumArtist,
+ const char* genre,
+ const char* composer,
+ const char* mimeType,
+ int track,
+ int year,
+ int duration);
+
MtpObjectHandleList* getObjectList(MtpStorageID storageID,
MtpObjectFormat format,
MtpObjectHandle parent);
@@ -62,6 +80,9 @@
MtpString& filePath,
int64_t& fileLength);
bool deleteFile(MtpObjectHandle handle);
+
+ // helper for media scanner
+ MtpObjectHandle* getFileList(int& outCount);
};
}; // namespace android