summaryrefslogtreecommitdiff
path: root/src/database
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2023-11-24 15:13:10 +1100
committerjacqueline <me@jacqueline.id.au>2023-11-24 15:13:10 +1100
commit7c6eb2997cbba350e7384151e13659271508e08f (patch)
treeb6f95a4843521e69b24cbf4c126d84442d19fc23 /src/database
parent230721cd6271f3239b42e1d2471f8db15bebd712 (diff)
downloadtangara-fw-7c6eb2997cbba350e7384151e13659271508e08f.tar.gz
Migrate 'now playing' screen to lua
Diffstat (limited to 'src/database')
-rw-r--r--src/database/include/track.hpp2
-rw-r--r--src/database/track.cpp20
2 files changed, 21 insertions, 1 deletions
diff --git a/src/database/include/track.hpp b/src/database/include/track.hpp
index 72296e8d..8a24024f 100644
--- a/src/database/include/track.hpp
+++ b/src/database/include/track.hpp
@@ -56,6 +56,8 @@ enum class Tag {
kDuration = 5,
};
+auto TagToString(Tag t) -> std::string;
+
/*
* Owning container for tag-related track metadata that was extracted from a
* file.
diff --git a/src/database/track.cpp b/src/database/track.cpp
index d30264cd..871e3087 100644
--- a/src/database/track.cpp
+++ b/src/database/track.cpp
@@ -13,6 +13,25 @@
namespace database {
+auto TagToString(Tag t) -> std::string {
+ switch (t) {
+ case Tag::kTitle:
+ return "title";
+ case Tag::kArtist:
+ return "artist";
+ case Tag::kAlbum:
+ return "album";
+ case Tag::kAlbumTrack:
+ return "album_track";
+ case Tag::kGenre:
+ return "genre";
+ case Tag::kDuration:
+ return "duration";
+ default:
+ return "";
+ }
+}
+
auto TrackTags::set(const Tag& key, const std::pmr::string& val) -> void {
tags_[key] = val;
}
@@ -64,5 +83,4 @@ auto Track::TitleOrFilename() const -> std::pmr::string {
}
return data().filepath.substr(start);
}
-
} // namespace database