Fixed unity build

This commit is contained in:
emeric
2025-06-21 18:52:57 +02:00
parent dd2f97903e
commit 67db09685d
2 changed files with 23 additions and 23 deletions
@@ -45,8 +45,8 @@ namespace lms::scanner
{
namespace
{
using Artwork = std::variant<std::monostate, db::TrackEmbeddedImageId, db::ImageId>;
bool isSameArtwork(Artwork preferredArtwork, const db::ObjectPtr<db::Artwork>& artwork)
using ReleaseArtwork = std::variant<std::monostate, db::TrackEmbeddedImageId, db::ImageId>;
bool isSameArtwork(ReleaseArtwork preferredArtwork, const db::ObjectPtr<db::Artwork>& artwork)
{
if (std::holds_alternative<std::monostate>(preferredArtwork))
return !artwork;
@@ -63,7 +63,7 @@ namespace lms::scanner
struct ReleaseImageAssociation
{
db::ReleaseId releaseId;
Artwork preferredArtwork;
ReleaseArtwork preferredArtwork;
};
using ReleaseImageAssociationContainer = std::deque<ReleaseImageAssociation>;
@@ -149,11 +149,11 @@ namespace lms::scanner
return image;
}
Artwork computePreferredReleaseArtwork(SearchReleaseImageContext& searchContext, const db::Release::pointer& release)
ReleaseArtwork computePreferredReleaseArtwork(SearchReleaseImageContext& searchContext, const db::Release::pointer& release)
{
const db::Image::pointer image{ computePreferredReleaseImage(searchContext, release) };
if (image)
return Artwork{ image->getId() };
return ReleaseArtwork{ image->getId() };
// Fallback on embedded Front image
db::TrackEmbeddedImageId trackEmbeddedImageId;
@@ -168,7 +168,7 @@ namespace lms::scanner
}
if (trackEmbeddedImageId.isValid())
return Artwork{ trackEmbeddedImageId };
return ReleaseArtwork{ trackEmbeddedImageId };
// Fallback on embedded media image
{
@@ -182,9 +182,9 @@ namespace lms::scanner
}
if (trackEmbeddedImageId.isValid())
return Artwork{ trackEmbeddedImageId };
return ReleaseArtwork{ trackEmbeddedImageId };
return Artwork{};
return ReleaseArtwork{};
}
bool fetchNextReleaseArtworksToUpdate(SearchReleaseImageContext& searchContext, ReleaseImageAssociationContainer& releaseImageAssociations)
@@ -197,7 +197,7 @@ namespace lms::scanner
auto transaction{ searchContext.session.createReadTransaction() };
db::Release::find(searchContext.session, searchContext.lastRetrievedReleaseId, readBatchSize, [&](const db::Release::pointer& release) {
const Artwork preferredArtwork{ computePreferredReleaseArtwork(searchContext, release) };
const ReleaseArtwork preferredArtwork{ computePreferredReleaseArtwork(searchContext, release) };
const db::Artwork::pointer currentPreferredArtwork{ release->getPreferredArtwork() };
if (!isSameArtwork(preferredArtwork, currentPreferredArtwork))
@@ -42,8 +42,8 @@ namespace lms::scanner
namespace
{
// May come from an embedded image in a track, or from what has been previously resolved for the release
using Artwork = std::variant<std::monostate, db::TrackEmbeddedImageId, db::ArtworkId>;
bool isSameArtwork(Artwork preferredArtwork, const db::ObjectPtr<db::Artwork>& artwork)
using TrackArtwork = std::variant<std::monostate, db::TrackEmbeddedImageId, db::ArtworkId>;
bool isSameArtwork(TrackArtwork preferredArtwork, const db::ObjectPtr<db::Artwork>& artwork)
{
if (std::holds_alternative<std::monostate>(preferredArtwork))
return !artwork;
@@ -57,7 +57,7 @@ namespace lms::scanner
return false;
}
bool isValid(const Artwork& res)
bool isValid(const TrackArtwork& res)
{
return !std::holds_alternative<std::monostate>(res);
}
@@ -65,8 +65,8 @@ namespace lms::scanner
struct TrackImageAssociation
{
db::Track::pointer track;
Artwork preferredArtwork;
Artwork preferredMediaArtwork;
TrackArtwork preferredArtwork;
TrackArtwork preferredMediaArtwork;
};
using TrackImageAssociationContainer = std::deque<TrackImageAssociation>;
@@ -77,10 +77,10 @@ namespace lms::scanner
std::size_t processedTrackCount{};
};
Artwork computePreferredTrackArtwork(SearchTrackImageContext& searchContext, const db::Track::pointer& track)
TrackArtwork computePreferredTrackArtwork(SearchTrackImageContext& searchContext, const db::Track::pointer& track)
{
// Try to get a media image
Artwork res;
TrackArtwork res;
{
db::TrackEmbeddedImage::FindParameters params;
params.setTrack(track->getId());
@@ -96,7 +96,7 @@ namespace lms::scanner
// Fallback on another track of the same disc
const db::ReleaseId releaseId{ track->getReleaseId() };
if (!releaseId.isValid())
return Artwork{};
return res;
{
db::TrackEmbeddedImage::FindParameters params;
@@ -135,9 +135,9 @@ namespace lms::scanner
return res;
}
Artwork computePreferredTrackMediaArtwork(SearchTrackImageContext& searchContext, const db::Track::pointer& track)
TrackArtwork computePreferredTrackMediaArtwork(SearchTrackImageContext& searchContext, const db::Track::pointer& track)
{
Artwork res;
TrackArtwork res;
{
db::TrackEmbeddedImage::FindParameters params;
params.setTrack(track->getId());
@@ -175,8 +175,8 @@ namespace lms::scanner
auto transaction{ searchContext.session.createReadTransaction() };
db::Track::find(searchContext.session, searchContext.lastRetrievedTrackId, readBatchSize, [&](const db::Track::pointer& track) {
const Artwork preferredArtwork{ computePreferredTrackArtwork(searchContext, track) };
const Artwork preferredMediaArtwork{ computePreferredTrackMediaArtwork(searchContext, track) };
const TrackArtwork preferredArtwork{ computePreferredTrackArtwork(searchContext, track) };
const TrackArtwork preferredMediaArtwork{ computePreferredTrackMediaArtwork(searchContext, track) };
const db::Artwork::pointer currentPreferredArtwork{ track->getPreferredArtwork() };
const db::Artwork::pointer currentPreferredMediaArtwork{ track->getPreferredMediaArtwork() };
@@ -194,7 +194,7 @@ namespace lms::scanner
return trackId != searchContext.lastRetrievedTrackId;
}
void updateTrackPreferredArtwork(db::Session& session, db::Track::pointer& track, Artwork preferredArtwork)
void updateTrackPreferredArtwork(db::Session& session, db::Track::pointer& track, TrackArtwork preferredArtwork)
{
db::Artwork::pointer artwork;
if (const db::TrackEmbeddedImageId * trackEmbeddedImageId{ std::get_if<db::TrackEmbeddedImageId>(&preferredArtwork) })
@@ -210,7 +210,7 @@ namespace lms::scanner
LMS_LOG(DBUPDATER, DEBUG, "Removed preferred artwork from track " << track->getAbsoluteFilePath());
}
void updateTrackPreferredMediaArtwork(db::Session& session, db::Track::pointer& track, Artwork preferredArtwork)
void updateTrackPreferredMediaArtwork(db::Session& session, db::Track::pointer& track, TrackArtwork preferredArtwork)
{
db::Artwork::pointer artwork;
if (const db::TrackEmbeddedImageId * trackEmbeddedImageId{ std::get_if<db::TrackEmbeddedImageId>(&preferredArtwork) })