From 5ac4d3949cd7430e0d4c994bbc528e8e4fa91337 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Mon, 22 May 2023 15:23:51 +1000 Subject: Generalise worker tasks, and centralise task priorities + stacks Includes making the display driver use a worker task for flushes, so that our double buffering actually does something useful /facepalm --- src/database/include/database.hpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/database/include/database.hpp') diff --git a/src/database/include/database.hpp b/src/database/include/database.hpp index da0ed083..ce2ca9fe 100644 --- a/src/database/include/database.hpp +++ b/src/database/include/database.hpp @@ -19,6 +19,7 @@ #include "result.hpp" #include "song.hpp" #include "tag_parser.hpp" +#include "tasks.hpp" namespace database { @@ -90,6 +91,8 @@ class Database { leveldb::DB* db_; leveldb::Cache* cache_; + std::shared_ptr worker_task_; + // Not owned. IFileGatherer* file_gatherer_; ITagParser* tag_parser_; @@ -97,7 +100,8 @@ class Database { Database(leveldb::DB* db, leveldb::Cache* cache, IFileGatherer* file_gatherer, - ITagParser* tag_parser); + ITagParser* tag_parser, + std::shared_ptr worker); auto dbMintNewSongId() -> SongId; auto dbEntomb(SongId song, uint64_t hash) -> void; -- cgit v1.2.3