From d3bdcf2edc83c7ca57d063c898b9f1ecdb520518 Mon Sep 17 00:00:00 2001 From: Anna Schumaker Date: Sun, 25 Oct 2015 04:46:56 -0400 Subject: [PATCH] core/tags/track: Move track_db_init() out of the tags namespace And add the functions track_db_deinit() and tags :: db_deinit(). Signed-off-by: Anna Schumaker --- core/tags/tags.cpp | 11 ++++++++++- core/tags/track.cpp | 7 ++++++- include/core/tags/tags.h | 1 + include/core/tags/track.h | 9 ++++++--- 4 files changed, 23 insertions(+), 5 deletions(-) diff --git a/core/tags/tags.cpp b/core/tags/tags.cpp index 3b47ca18..c93874bf 100644 --- a/core/tags/tags.cpp +++ b/core/tags/tags.cpp @@ -14,5 +14,14 @@ void tags :: init() artist_db_init(); genre_db_init(); library_db_init(); - tags :: init_track_db(); + track_db_init(); +} + +void tags :: deinit() +{ + track_db_deinit(); + library_db_deinit(); + genre_db_deinit(); + artist_db_deinit(); + album_db_deinit(); } diff --git a/core/tags/track.cpp b/core/tags/track.cpp index 3c8ebe38..b15204c9 100644 --- a/core/tags/track.cpp +++ b/core/tags/track.cpp @@ -146,12 +146,17 @@ void track :: write(file &file) } -void tags :: init_track_db() +void track_db_init() { db_init(&track_db, "track.db", false); db_load(&track_db); } +void track_db_deinit() +{ + db_deinit(&track_db); +} + struct track *track_add(struct album *album, struct artist *artist, struct genre *genre, struct library *library, const std::string &filepath, const std::string &name, diff --git a/include/core/tags/tags.h b/include/core/tags/tags.h index 0d45fa10..ae8e59f0 100644 --- a/include/core/tags/tags.h +++ b/include/core/tags/tags.h @@ -12,6 +12,7 @@ namespace tags /** Called to read all databases from disk. */ void init(); + void deinit(); } diff --git a/include/core/tags/track.h b/include/core/tags/track.h index 40728a78..d122b882 100644 --- a/include/core/tags/track.h +++ b/include/core/tags/track.h @@ -117,9 +117,6 @@ struct track : public GenericTag { namespace tags { - /** Called to read the track_db from disk. */ - void init_track_db(); - /** * Called to find the number of rows in the track_db, * including NULL rows. @@ -133,6 +130,12 @@ namespace tags } +/* Called to initialize the track database. */ +void track_db_init(); + +/* Called to clean up the track database. */ +void track_db_deinit(); + /* Called to add a track tag to the database. */ struct track *track_add(struct album *, struct artist *, struct genre *, struct library *, const std::string &,