From 6ff8b5886ef91ed46dba08686900d519f6c9c62d Mon Sep 17 00:00:00 2001 From: jacqueline Date: Mon, 19 Jun 2023 08:51:34 +1000 Subject: Support playing tracks by track id --- src/database/database.cpp | 12 ++++++++++++ src/database/include/database.hpp | 2 ++ 2 files changed, 14 insertions(+) (limited to 'src/database') diff --git a/src/database/database.cpp b/src/database/database.cpp index a96b3eab..ac5e4873 100644 --- a/src/database/database.cpp +++ b/src/database/database.cpp @@ -229,6 +229,18 @@ auto Database::Update() -> std::future { }); } +auto Database::GetTrackPath(TrackId id) + -> std::future> { + return worker_task_->Dispatch>( + [=, this]() -> std::optional { + auto track_data = dbGetTrackData(id); + if (track_data) { + return track_data->filepath(); + } + return {}; + }); +} + auto Database::GetTracks(std::size_t page_size) -> std::future*> { return worker_task_->Dispatch*>([=, this]() -> Result* { Continuation c{.iterator = nullptr, diff --git a/src/database/include/database.hpp b/src/database/include/database.hpp index 1a8388e8..8fecc5f6 100644 --- a/src/database/include/database.hpp +++ b/src/database/include/database.hpp @@ -82,6 +82,8 @@ class Database { auto Update() -> std::future; + auto GetTrackPath(TrackId id) -> std::future>; + auto GetTracks(std::size_t page_size) -> std::future*>; auto GetDump(std::size_t page_size) -> std::future*>; -- cgit v1.2.3