From 32a944e3d4c58270e88392e02153d643f79eb9a6 Mon Sep 17 00:00:00 2001 From: emeric Date: Sat, 16 Oct 2021 15:22:59 +0200 Subject: [PATCH] Introduced lmscore lib to centralize services, migrated cover service --- src/libs/CMakeLists.txt | 3 +- src/libs/cover/CMakeLists.txt | 44 ------------------- src/libs/image/CMakeLists.txt | 38 ++++++++++++++++ .../impl/graphicsmagick/JPEGImage.cpp | 0 .../impl/graphicsmagick/JPEGImage.hpp | 0 .../impl/graphicsmagick/RawImage.cpp | 13 +++++- .../impl/graphicsmagick/RawImage.hpp | 0 .../{cover => image}/impl/stb/JPEGImage.cpp | 4 +- .../{cover => image}/impl/stb/JPEGImage.hpp | 4 +- .../{cover => image}/impl/stb/RawImage.cpp | 17 ++++++- .../{cover => image}/impl/stb/RawImage.hpp | 6 +-- .../include/image}/Exception.hpp | 2 +- .../include/image}/IEncodedImage.hpp | 2 +- .../include/image}/IRawImage.hpp | 7 ++- src/libs/lmscore/CMakeLists.txt | 28 ++++++++++++ .../{cover => lmscore}/impl/CoverService.cpp | 29 +++++------- .../{cover => lmscore}/impl/CoverService.hpp | 30 ++++++------- .../lmscore/services}/ICoverService.hpp | 6 +-- src/libs/subsonic/CMakeLists.txt | 2 +- src/libs/subsonic/impl/SubsonicResource.cpp | 4 +- src/lms/CMakeLists.txt | 2 +- src/lms/main.cpp | 2 +- src/lms/ui/LmsApplication.cpp | 2 +- src/lms/ui/resource/CoverResource.cpp | 4 +- src/tools/cover/CMakeLists.txt | 2 +- src/tools/cover/LmsCover.cpp | 4 +- 26 files changed, 149 insertions(+), 106 deletions(-) delete mode 100644 src/libs/cover/CMakeLists.txt create mode 100644 src/libs/image/CMakeLists.txt rename src/libs/{cover => image}/impl/graphicsmagick/JPEGImage.cpp (100%) rename src/libs/{cover => image}/impl/graphicsmagick/JPEGImage.hpp (100%) rename src/libs/{cover => image}/impl/graphicsmagick/RawImage.cpp (91%) rename src/libs/{cover => image}/impl/graphicsmagick/RawImage.hpp (100%) rename src/libs/{cover => image}/impl/stb/JPEGImage.cpp (97%) rename src/libs/{cover => image}/impl/stb/JPEGImage.hpp (95%) rename src/libs/{cover => image}/impl/stb/RawImage.cpp (88%) rename src/libs/{cover => image}/impl/stb/RawImage.hpp (94%) rename src/libs/{cover/impl => image/include/image}/Exception.hpp (98%) rename src/libs/{cover/include/cover => image/include/image}/IEncodedImage.hpp (98%) rename src/libs/{cover/impl => image/include/image}/IRawImage.hpp (80%) create mode 100644 src/libs/lmscore/CMakeLists.txt rename src/libs/{cover => lmscore}/impl/CoverService.cpp (95%) rename src/libs/{cover => lmscore}/impl/CoverService.hpp (66%) rename src/libs/{cover/include/cover => lmscore/include/lmscore/services}/ICoverService.hpp (81%) diff --git a/src/libs/CMakeLists.txt b/src/libs/CMakeLists.txt index e8c1413c..728cc175 100644 --- a/src/libs/CMakeLists.txt +++ b/src/libs/CMakeLists.txt @@ -1,8 +1,9 @@ add_subdirectory(auth) add_subdirectory(av) -add_subdirectory(cover) add_subdirectory(database) +add_subdirectory(image) +add_subdirectory(lmscore) add_subdirectory(metadata) add_subdirectory(recommendation) add_subdirectory(scanner) diff --git a/src/libs/cover/CMakeLists.txt b/src/libs/cover/CMakeLists.txt deleted file mode 100644 index 12627c9e..00000000 --- a/src/libs/cover/CMakeLists.txt +++ /dev/null @@ -1,44 +0,0 @@ - -add_library(lmscover SHARED - impl/CoverService.cpp - ) - -target_include_directories(lmscover INTERFACE - include - ) - -target_include_directories(lmscover PRIVATE - include - impl - ) - -target_link_libraries(lmscover PRIVATE - lmsav - ) - -target_link_libraries(lmscover PUBLIC - lmsdatabase - lmsutils - std::filesystem - ) - -if (IMAGE_LIBRARY STREQUAL STB) - target_sources(lmscover PRIVATE - impl/stb/JPEGImage.cpp - impl/stb/RawImage.cpp - ) - target_compile_options(lmscover PRIVATE "-DLMS_SUPPORT_IMAGE_STB") - target_include_directories(lmscover PRIVATE ${STB_INCLUDE_DIR}) -elseif (IMAGE_LIBRARY STREQUAL GraphicsMagick++) - target_sources(lmscover PRIVATE - impl/graphicsmagick/JPEGImage.cpp - impl/graphicsmagick/RawImage.cpp - ) - target_compile_options(lmscover PRIVATE "-DLMS_SUPPORT_IMAGE_GM") - target_link_libraries(lmscover PRIVATE PkgConfig::GraphicsMagick++) -else () - message(FATAL_ERROR "Invalid IMAGE_LIBRARY provided") -endif() - -install(TARGETS lmscover DESTINATION lib) - diff --git a/src/libs/image/CMakeLists.txt b/src/libs/image/CMakeLists.txt new file mode 100644 index 00000000..cb855563 --- /dev/null +++ b/src/libs/image/CMakeLists.txt @@ -0,0 +1,38 @@ + +add_library(lmsimage SHARED + ) + +target_include_directories(lmsimage INTERFACE + include + ) + +target_include_directories(lmsimage PRIVATE + include + impl + ) + +target_link_libraries(lmsimage PUBLIC + lmsutils + std::filesystem + ) + +if (IMAGE_LIBRARY STREQUAL STB) + target_sources(lmsimage PRIVATE + impl/stb/JPEGImage.cpp + impl/stb/RawImage.cpp + ) + target_compile_options(lmsimage PRIVATE "-DLMS_SUPPORT_IMAGE_STB") + target_include_directories(lmsimage PRIVATE ${STB_INCLUDE_DIR}) +elseif (IMAGE_LIBRARY STREQUAL GraphicsMagick++) + target_sources(lmsimage PRIVATE + impl/graphicsmagick/JPEGImage.cpp + impl/graphicsmagick/RawImage.cpp + ) + target_compile_options(lmsimage PRIVATE "-DLMS_SUPPORT_IMAGE_GM") + target_link_libraries(lmsimage PRIVATE PkgConfig::GraphicsMagick++) +else () + message(FATAL_ERROR "Invalid IMAGE_LIBRARY provided") +endif() + +install(TARGETS lmsimage DESTINATION lib) + diff --git a/src/libs/cover/impl/graphicsmagick/JPEGImage.cpp b/src/libs/image/impl/graphicsmagick/JPEGImage.cpp similarity index 100% rename from src/libs/cover/impl/graphicsmagick/JPEGImage.cpp rename to src/libs/image/impl/graphicsmagick/JPEGImage.cpp diff --git a/src/libs/cover/impl/graphicsmagick/JPEGImage.hpp b/src/libs/image/impl/graphicsmagick/JPEGImage.hpp similarity index 100% rename from src/libs/cover/impl/graphicsmagick/JPEGImage.hpp rename to src/libs/image/impl/graphicsmagick/JPEGImage.hpp diff --git a/src/libs/cover/impl/graphicsmagick/RawImage.cpp b/src/libs/image/impl/graphicsmagick/RawImage.cpp similarity index 91% rename from src/libs/cover/impl/graphicsmagick/RawImage.cpp rename to src/libs/image/impl/graphicsmagick/RawImage.cpp index 3beabc27..8ec77b2e 100644 --- a/src/libs/cover/impl/graphicsmagick/RawImage.cpp +++ b/src/libs/image/impl/graphicsmagick/RawImage.cpp @@ -25,7 +25,16 @@ #include "JPEGImage.hpp" #include "Exception.hpp" -namespace CoverArt::GraphicsMagick { +namespace Image::GraphicsMagick +{ + + std::unique_ptr decodeImage(const std::byte* encodedData, std::size_t encodedDataSize) + { + return std::make_unique(encodedData, encodedDataSize); + } + + std::unique_ptr decodeImage(const std::filesystem::path& path) + { void init(const std::filesystem::path& path) @@ -116,5 +125,5 @@ RawImage::getMagickImage() const return _image; } -} // namespace CoverArt::GraphicsMagick +} // namespace Image::GraphicsMagick diff --git a/src/libs/cover/impl/graphicsmagick/RawImage.hpp b/src/libs/image/impl/graphicsmagick/RawImage.hpp similarity index 100% rename from src/libs/cover/impl/graphicsmagick/RawImage.hpp rename to src/libs/image/impl/graphicsmagick/RawImage.hpp diff --git a/src/libs/cover/impl/stb/JPEGImage.cpp b/src/libs/image/impl/stb/JPEGImage.cpp similarity index 97% rename from src/libs/cover/impl/stb/JPEGImage.cpp rename to src/libs/image/impl/stb/JPEGImage.cpp index aad386c2..4bfcef4c 100644 --- a/src/libs/cover/impl/stb/JPEGImage.cpp +++ b/src/libs/image/impl/stb/JPEGImage.cpp @@ -22,10 +22,10 @@ #define STB_IMAGE_WRITE_IMPLEMENTATION #include +#include "image/Exception.hpp" #include "RawImage.hpp" -#include "Exception.hpp" -namespace Cover::STB +namespace Image::STB { JPEGImage::JPEGImage(const RawImage& rawImage, unsigned quality) { diff --git a/src/libs/cover/impl/stb/JPEGImage.hpp b/src/libs/image/impl/stb/JPEGImage.hpp similarity index 95% rename from src/libs/cover/impl/stb/JPEGImage.hpp rename to src/libs/image/impl/stb/JPEGImage.hpp index 0ccfd98f..ddce80f2 100644 --- a/src/libs/cover/impl/stb/JPEGImage.hpp +++ b/src/libs/image/impl/stb/JPEGImage.hpp @@ -21,9 +21,9 @@ #include -#include "cover/IEncodedImage.hpp" +#include "image/IEncodedImage.hpp" -namespace Cover::STB +namespace Image::STB { class RawImage; class JPEGImage : public IEncodedImage diff --git a/src/libs/cover/impl/stb/RawImage.cpp b/src/libs/image/impl/stb/RawImage.cpp similarity index 88% rename from src/libs/cover/impl/stb/RawImage.cpp rename to src/libs/image/impl/stb/RawImage.cpp index 9df69d80..8ad944bc 100644 --- a/src/libs/cover/impl/stb/RawImage.cpp +++ b/src/libs/image/impl/stb/RawImage.cpp @@ -30,9 +30,22 @@ #include "JPEGImage.hpp" -#include "Exception.hpp" +#include "image/Exception.hpp" -namespace Cover::STB +namespace Image +{ + std::unique_ptr decodeImage(const std::byte* encodedData, std::size_t encodedDataSize) + { + return std::make_unique(encodedData, encodedDataSize); + } + + std::unique_ptr decodeImage(const std::filesystem::path& path) + { + return std::make_unique(path); + } +} + +namespace Image::STB { RawImage::RawImage(const std::byte* encodedData, std::size_t encodedDataSize) { diff --git a/src/libs/cover/impl/stb/RawImage.hpp b/src/libs/image/impl/stb/RawImage.hpp similarity index 94% rename from src/libs/cover/impl/stb/RawImage.hpp rename to src/libs/image/impl/stb/RawImage.hpp index b0753268..c7d7921a 100644 --- a/src/libs/cover/impl/stb/RawImage.hpp +++ b/src/libs/image/impl/stb/RawImage.hpp @@ -26,10 +26,10 @@ #include #include -#include "cover/IEncodedImage.hpp" -#include "IRawImage.hpp" +#include "image/IEncodedImage.hpp" +#include "image/IRawImage.hpp" -namespace Cover::STB +namespace Image::STB { class RawImage : public IRawImage { diff --git a/src/libs/cover/impl/Exception.hpp b/src/libs/image/include/image/Exception.hpp similarity index 98% rename from src/libs/cover/impl/Exception.hpp rename to src/libs/image/include/image/Exception.hpp index 78708f85..53428934 100644 --- a/src/libs/cover/impl/Exception.hpp +++ b/src/libs/image/include/image/Exception.hpp @@ -21,7 +21,7 @@ #include "utils/Exception.hpp" -namespace Cover +namespace Image { // internal use only class ImageException : public LmsException diff --git a/src/libs/cover/include/cover/IEncodedImage.hpp b/src/libs/image/include/image/IEncodedImage.hpp similarity index 98% rename from src/libs/cover/include/cover/IEncodedImage.hpp rename to src/libs/image/include/image/IEncodedImage.hpp index 8567a57b..96fc03a5 100644 --- a/src/libs/cover/include/cover/IEncodedImage.hpp +++ b/src/libs/image/include/image/IEncodedImage.hpp @@ -22,7 +22,7 @@ #include #include -namespace Cover +namespace Image { using ImageSize = std::size_t; diff --git a/src/libs/cover/impl/IRawImage.hpp b/src/libs/image/include/image/IRawImage.hpp similarity index 80% rename from src/libs/cover/impl/IRawImage.hpp rename to src/libs/image/include/image/IRawImage.hpp index 02e13ce8..67968ed0 100644 --- a/src/libs/cover/impl/IRawImage.hpp +++ b/src/libs/image/include/image/IRawImage.hpp @@ -21,9 +21,9 @@ #include -#include "cover/IEncodedImage.hpp" +#include "image/IEncodedImage.hpp" -namespace Cover +namespace Image { class IRawImage { @@ -32,5 +32,8 @@ namespace Cover virtual void resize(ImageSize width) = 0; virtual std::unique_ptr encodeToJPEG(unsigned quality) const = 0; }; + + std::unique_ptr decodeImage(const std::byte* encodedData, std::size_t encodedDataSize); + std::unique_ptr decodeImage(const std::filesystem::path& path); } diff --git a/src/libs/lmscore/CMakeLists.txt b/src/libs/lmscore/CMakeLists.txt new file mode 100644 index 00000000..358df97a --- /dev/null +++ b/src/libs/lmscore/CMakeLists.txt @@ -0,0 +1,28 @@ + +add_library(lmscore SHARED + impl/CoverService.cpp + ) + +target_include_directories(lmscore INTERFACE + include + ) + +target_include_directories(lmscore PRIVATE + include + impl + ) + +target_link_libraries(lmscore PRIVATE + lmsav + lmsimage + ) + +target_link_libraries(lmscore PUBLIC + lmsdatabase + lmsimage + lmsutils + std::filesystem + ) + +install(TARGETS lmscore DESTINATION lib) + diff --git a/src/libs/cover/impl/CoverService.cpp b/src/libs/lmscore/impl/CoverService.cpp similarity index 95% rename from src/libs/cover/impl/CoverService.cpp rename to src/libs/lmscore/impl/CoverService.cpp index af768802..a968d5c4 100644 --- a/src/libs/cover/impl/CoverService.cpp +++ b/src/libs/lmscore/impl/CoverService.cpp @@ -26,19 +26,12 @@ #include "database/Session.hpp" #include "database/Track.hpp" -#if LMS_SUPPORT_IMAGE_STB -#include "stb/RawImage.hpp" -using RawImage = Cover::STB::RawImage; -#elif LMS_SUPPORT_IMAGE_GM -#include "graphicsmagick/RawImage.hpp" -using RawImage = Cover::GraphicsMagick::RawImage; -#endif - +#include "image/Exception.hpp" +#include "image/IRawImage.hpp" #include "utils/IConfig.hpp" #include "utils/Logger.hpp" #include "utils/Random.hpp" #include "utils/Utils.hpp" -#include "Exception.hpp" namespace { @@ -79,6 +72,8 @@ namespace namespace Cover { +using namespace Image; + static bool isFileSupported(const std::filesystem::path& file, const std::vector& extensions) @@ -117,7 +112,7 @@ CoverService::CoverService(Database::Db& db, { getDefault(512); } - catch (const ImageException& e) + catch (const Image::ImageException& e) { throw LmsException("Cannot read default cover file '" + _defaultCoverPath.string() + "': " + e.what()); } @@ -135,11 +130,11 @@ CoverService::getFromAvMediaFile(const Av::IAudioFile& input, ImageSize width) c try { - RawImage rawImage {picture.data, picture.dataSize}; - rawImage.resize(width); - image = rawImage.encodeToJPEG(_jpegQuality); + std::unique_ptr rawImage {decodeImage(picture.data, picture.dataSize)}; + rawImage->resize(width); + image = rawImage->encodeToJPEG(_jpegQuality); } - catch (const ImageException& e) + catch (const Image::ImageException& e) { LMS_LOG(COVER, ERROR) << "Cannot read embedded cover: " << e.what(); } @@ -155,9 +150,9 @@ CoverService::getFromCoverFile(const std::filesystem::path& p, ImageSize width) try { - RawImage rawImage {p}; - rawImage.resize(width); - image = rawImage.encodeToJPEG(_jpegQuality); + std::unique_ptr rawImage {decodeImage(p)}; + rawImage->resize(width); + image = rawImage->encodeToJPEG(_jpegQuality); } catch (const ImageException& e) { diff --git a/src/libs/cover/impl/CoverService.hpp b/src/libs/lmscore/impl/CoverService.hpp similarity index 66% rename from src/libs/cover/impl/CoverService.hpp rename to src/libs/lmscore/impl/CoverService.hpp index c67f068c..a740673e 100644 --- a/src/libs/cover/impl/CoverService.hpp +++ b/src/libs/lmscore/impl/CoverService.hpp @@ -29,8 +29,8 @@ #include #include -#include "cover/ICoverService.hpp" -#include "cover/IEncodedImage.hpp" +#include "lmscore/services/ICoverService.hpp" +#include "image/IEncodedImage.hpp" #include "database/Types.hpp" namespace Database @@ -96,34 +96,34 @@ namespace Cover CoverService& operator=(CoverService&&) = delete; private: - std::shared_ptr getFromTrack(Database::TrackId trackId, ImageSize width) override; - std::shared_ptr getFromRelease(Database::ReleaseId releaseId, ImageSize width) override; + std::shared_ptr getFromTrack(Database::TrackId trackId, Image::ImageSize width) override; + std::shared_ptr getFromRelease(Database::ReleaseId releaseId, Image::ImageSize width) override; void flushCache() override; void setJpegQuality(unsigned quality) override; - std::shared_ptr getFromTrack(Database::Session& dbSession, Database::TrackId trackId, ImageSize width, bool allowReleaseFallback); - std::unique_ptr getFromAvMediaFile(const Av::IAudioFile& input, ImageSize width) const; - std::unique_ptr getFromCoverFile(const std::filesystem::path& p, ImageSize width) const; + std::shared_ptr getFromTrack(Database::Session& dbSession, Database::TrackId trackId, Image::ImageSize width, bool allowReleaseFallback); + std::unique_ptr getFromAvMediaFile(const Av::IAudioFile& input, Image::ImageSize width) const; + std::unique_ptr getFromCoverFile(const std::filesystem::path& p, Image::ImageSize width) const; - std::unique_ptr getFromTrack(const std::filesystem::path& path, ImageSize width) const; + std::unique_ptr getFromTrack(const std::filesystem::path& path, Image::ImageSize width) const; std::multimap getCoverPaths(const std::filesystem::path& directoryPath) const; - std::unique_ptr getFromDirectory(const std::filesystem::path& directory, ImageSize width) const; - std::unique_ptr getFromSameNamedFile(const std::filesystem::path& filePath, ImageSize width) const; - std::shared_ptr getDefault(ImageSize width); + std::unique_ptr getFromDirectory(const std::filesystem::path& directory, Image::ImageSize width) const; + std::unique_ptr getFromSameNamedFile(const std::filesystem::path& filePath, Image::ImageSize width) const; + std::shared_ptr getDefault(Image::ImageSize width); bool checkCoverFile(const std::filesystem::path& directoryPath) const; Database::Db& _db; std::shared_mutex _cacheMutex; - std::unordered_map> _cache; - std::unordered_map> _defaultCoverCache; + std::unordered_map> _cache; + std::unordered_map> _defaultCoverCache; std::atomic _cacheMisses {}; std::atomic _cacheHits {}; std::size_t _cacheSize {}; - void saveToCache(const CacheEntryDesc& entryDesc, std::shared_ptr image); - std::shared_ptr loadFromCache(const CacheEntryDesc& entryDesc); + void saveToCache(const CacheEntryDesc& entryDesc, std::shared_ptr image); + std::shared_ptr loadFromCache(const CacheEntryDesc& entryDesc); const std::filesystem::path _defaultCoverPath; const std::size_t _maxCacheSize; diff --git a/src/libs/cover/include/cover/ICoverService.hpp b/src/libs/lmscore/include/lmscore/services/ICoverService.hpp similarity index 81% rename from src/libs/cover/include/cover/ICoverService.hpp rename to src/libs/lmscore/include/lmscore/services/ICoverService.hpp index 1df5942b..039260ef 100644 --- a/src/libs/cover/include/cover/ICoverService.hpp +++ b/src/libs/lmscore/include/lmscore/services/ICoverService.hpp @@ -23,7 +23,7 @@ #include #include "database/Types.hpp" -#include "cover/IEncodedImage.hpp" +#include "image/IEncodedImage.hpp" namespace Database { @@ -37,8 +37,8 @@ namespace Cover public: virtual ~ICoverService() = default; - virtual std::shared_ptr getFromTrack(Database::TrackId trackId, ImageSize width) = 0; - virtual std::shared_ptr getFromRelease(Database::ReleaseId releaseId, ImageSize width) = 0; + virtual std::shared_ptr getFromTrack(Database::TrackId trackId, Image::ImageSize width) = 0; + virtual std::shared_ptr getFromRelease(Database::ReleaseId releaseId, Image::ImageSize width) = 0; virtual void flushCache() = 0; diff --git a/src/libs/subsonic/CMakeLists.txt b/src/libs/subsonic/CMakeLists.txt index 98093601..aad488ca 100644 --- a/src/libs/subsonic/CMakeLists.txt +++ b/src/libs/subsonic/CMakeLists.txt @@ -19,7 +19,7 @@ target_include_directories(lmssubsonic PRIVATE target_link_libraries(lmssubsonic PRIVATE lmsauth lmsav - lmscover + lmscore lmsdatabase lmsrecommendation lmsscanner diff --git a/src/libs/subsonic/impl/SubsonicResource.cpp b/src/libs/subsonic/impl/SubsonicResource.cpp index 27881aa0..888eadf6 100644 --- a/src/libs/subsonic/impl/SubsonicResource.cpp +++ b/src/libs/subsonic/impl/SubsonicResource.cpp @@ -28,7 +28,7 @@ #include "auth/IPasswordService.hpp" #include "auth/IEnvService.hpp" -#include "cover/ICoverService.hpp" +#include "lmscore/services/ICoverService.hpp" #include "database/Artist.hpp" #include "database/Cluster.hpp" #include "database/Db.hpp" @@ -1802,7 +1802,7 @@ handleGetCoverArt(RequestContext& context, const Wt::Http::Request& /*request*/, std::size_t size {getParameterAs(context.parameters, "size").value_or(256)}; size = Utils::clamp(size, std::size_t {32}, std::size_t {1024}); - std::shared_ptr cover; + std::shared_ptr cover; if (trackId) cover = Service::get()->getFromTrack(*trackId, size); else if (releaseId) diff --git a/src/lms/CMakeLists.txt b/src/lms/CMakeLists.txt index 77570c7e..beff7583 100644 --- a/src/lms/CMakeLists.txt +++ b/src/lms/CMakeLists.txt @@ -51,7 +51,7 @@ target_include_directories(lms PRIVATE target_link_libraries(lms PRIVATE lmsav lmsauth - lmscover + lmscore lmsdatabase lmsrecommendation lmsscanner diff --git a/src/lms/main.cpp b/src/lms/main.cpp index 5ad76bfe..2d6230cf 100644 --- a/src/lms/main.cpp +++ b/src/lms/main.cpp @@ -28,7 +28,7 @@ #include "auth/IAuthTokenService.hpp" #include "auth/IPasswordService.hpp" #include "auth/IEnvService.hpp" -#include "cover/ICoverService.hpp" +#include "lmscore/services/ICoverService.hpp" #include "database/Db.hpp" #include "database/Session.hpp" #include "scanner/IScanner.hpp" diff --git a/src/lms/ui/LmsApplication.cpp b/src/lms/ui/LmsApplication.cpp index 38116bd8..8eb688e2 100644 --- a/src/lms/ui/LmsApplication.cpp +++ b/src/lms/ui/LmsApplication.cpp @@ -30,7 +30,7 @@ #include "auth/IEnvService.hpp" #include "auth/IPasswordService.hpp" -#include "cover/ICoverService.hpp" +#include "lmscore/services/ICoverService.hpp" #include "database/Artist.hpp" #include "database/Cluster.hpp" #include "database/Db.hpp" diff --git a/src/lms/ui/resource/CoverResource.cpp b/src/lms/ui/resource/CoverResource.cpp index c06b3159..c13c5996 100644 --- a/src/lms/ui/resource/CoverResource.cpp +++ b/src/lms/ui/resource/CoverResource.cpp @@ -22,7 +22,7 @@ #include #include -#include "cover/ICoverService.hpp" +#include "lmscore/services/ICoverService.hpp" #include "database/Track.hpp" #include "utils/Exception.hpp" #include "utils/Logger.hpp" @@ -83,7 +83,7 @@ CoverResource::handleRequest(const Wt::Http::Request& request, Wt::Http::Respons return; } - std::shared_ptr cover; + std::shared_ptr cover; if (trackIdStr) { diff --git a/src/tools/cover/CMakeLists.txt b/src/tools/cover/CMakeLists.txt index 141e2983..b695300f 100644 --- a/src/tools/cover/CMakeLists.txt +++ b/src/tools/cover/CMakeLists.txt @@ -4,7 +4,7 @@ add_executable(lms-cover ) target_link_libraries(lms-cover PRIVATE - lmscover + lmscore Boost::program_options ) diff --git a/src/tools/cover/LmsCover.cpp b/src/tools/cover/LmsCover.cpp index e09b223d..d2a5e784 100644 --- a/src/tools/cover/LmsCover.cpp +++ b/src/tools/cover/LmsCover.cpp @@ -24,7 +24,7 @@ #include -#include "cover/ICoverService.hpp" +#include "lmscore/services/ICoverService.hpp" #include "database/Db.hpp" #include "database/Release.hpp" #include "database/Session.hpp" @@ -36,7 +36,7 @@ static void -dumpTrackCovers(Database::Session& session, Cover::ImageSize width) +dumpTrackCovers(Database::Session& session, Image::ImageSize width) { std::vector trackIds; {