49 virtual bool dbFetchTracks(QSqlQuery& q,
MetaDataList& result)
const;
51 virtual int getNumTracks()
const;
56 const ::Library::Filter& filter,
int discnumber)
const;
57 virtual bool getAllTracksByArtist(
const IdList& artistIds,
MetaDataList& result)
const;
59 const ::Library::Filter& filter)
const;
60 virtual bool getAllTracksBySearchString(const ::Library::Filter& filter,
MetaDataList& result)
const;
61 virtual bool getAllTracksByPaths(
const QStringList& paths,
MetaDataList& tracks)
const;
63 virtual MetaData getTrackById(TrackID
id)
const;
64 virtual MetaData getTrackByPath(
const QString& path)
const;
65 virtual bool getMultipleTracksByPath(
const QStringList& paths,
MetaDataList& tracks)
const;
68 insertTrackIntoDatabase(
const MetaData& track, ArtistId artistId, AlbumId albumId, ArtistId albumArtistId);
69 virtual bool updateTrack(
const MetaData& track);
72 virtual bool renameFilepath(
const QString& oldPath,
const QString& newPath, LibraryId libraryId);
74 virtual bool deleteTrack(TrackID
id);
75 virtual bool deleteTracks(
const IdList& ids);
81 virtual bool deleteInvalidTracks(
const QString& libraryPath,
MetaDataList& doubleMetadata);
83 virtual QString fetchQueryTracks(
const QString& where)
const;
87 void deleteAllTracks(
bool alsoViews);
90 [[nodiscard]]
virtual ArtistIdInfo artistIdInfo()
const = 0;
91 [[nodiscard]]
virtual QString trackView()
const = 0;
92 [[nodiscard]]
virtual QString trackSearchView()
const = 0;
93 [[nodiscard]]
virtual LibraryId libraryId()
const = 0;
95 virtual Module* module() = 0;
96 virtual const Module* module()
const = 0;
98 virtual void updateTrackCissearch();
101 MetaData getSingleTrack(
const QString& queryText,
const std::pair<QString, QVariant>& binding,
102 const QString& errorMessage)
const;
103 [[nodiscard]]
MetaDataList getAllTracksByIdList(
const IdList& ids, const ::Library::Filter& filter,
104 std::function<Id(
MetaData)>&& whichId)
const;
106 MetaDataList getAllTracks(const ::Library::Filter& filter)
const;