18#include "digikam_config.h"
27# include <QDBusArgument>
39class AlbumCopyMoveHint;
40class CollectionLocation;
41class CollectionScannerObserver;
43class ItemCopyMoveHint;
45class ItemMetadataAdjustmentHint;
56 virtual void recordHints(
const QList<AlbumCopyMoveHint>& hints) = 0;
57 virtual void recordHints(
const QList<ItemCopyMoveHint>& hints) = 0;
58 virtual void recordHints(
const QList<ItemChangeHint>& hints) = 0;
70namespace CollectionScannerHints
73class DIGIKAM_DATABASE_EXPORT Album
78 Album(
int albumRootId,
int albumId);
92class DIGIKAM_DATABASE_EXPORT DstPath
97 DstPath(
int albumRootId,
const QString& relativePath);
106 QString relativePath;
111class DIGIKAM_DATABASE_EXPORT Item
116 explicit Item(qlonglong
id);
159 int dstAlbumRootId,
const QString& dstRelativePath);
161 int albumRootIdSrc()
const;
162 int albumIdSrc()
const;
163 bool isSrcAlbum(
int albumRootId,
int albumId)
const;
165 CollectionScannerHints::Album
src()
const
170 int albumRootIdDst()
const;
171 QString relativePathDst()
const;
172 bool isDstAlbum(
int albumRootId,
const QString& relativePath)
const;
174 CollectionScannerHints::DstPath
dst()
const
181 bool operator==(
const CollectionScannerHints::Album& src)
const
183 return (src == m_src);
186 bool operator==(
const CollectionScannerHints::DstPath& dst)
const
188 return (dst == m_dst);
198 operator const CollectionScannerHints::Album& ()
const
203 operator const CollectionScannerHints::DstPath& ()
const
210 CollectionScannerHints::Album
m_src;
211 CollectionScannerHints::DstPath
m_dst;
230 const QStringList& dstNames);
232 QList<qlonglong> srcIds()
const;
233 bool isSrcId(qlonglong
id)
const;
234 int albumRootIdDst()
const;
235 int albumIdDst()
const;
236 bool isDstAlbum(
int albumRootId,
int albumId)
const;
238 CollectionScannerHints::Album
dst()
const
243 QStringList dstNames()
const;
244 QString dstName(qlonglong
id)
const;
246 bool operator==(
const CollectionScannerHints::Album& dst)
const
248 return (dst == m_dst);
258 operator const CollectionScannerHints::Album& ()
const
266 CollectionScannerHints::Album
m_dst;
293 QList<qlonglong> ids()
const;
294 bool isId(qlonglong
id)
const;
299 return (changeType() == ItemModified);
304 return (changeType() == ItemRescan);
337 MetadataEditingAborted
345 const QDateTime& modificationDateOnDisk,
348 qlonglong id()
const;
350 QDateTime modificationDate()
const;
351 qlonglong fileSize()
const;
355 return (adjustmentStatus() == AboutToEditMetadata);
360 return (adjustmentStatus() == MetadataEditingFinished);
365 return (adjustmentStatus() == MetadataEditingAborted);
380 qlonglong m_fileSize = 0;
size_t qHash(const QList< Digikam::Album * > &key)
Definition albumhistory.cpp:36
Definition collectionscannerhints.h:149
CollectionScannerHints::Album src() const
Definition collectionscannerhints.h:165
CollectionScannerHints::Album m_src
Definition collectionscannerhints.h:210
CollectionScannerHints::DstPath dst() const
Definition collectionscannerhints.h:174
bool operator==(const CollectionScannerHints::DstPath &dst) const
Definition collectionscannerhints.h:186
AlbumCopyMoveHint()=default
QT_HASH_TYPE qHash() const
Definition collectionscannerhints.cpp:150
CollectionScannerHints::DstPath m_dst
Definition collectionscannerhints.h:211
bool operator==(const CollectionScannerHints::Album &src) const
Definition collectionscannerhints.h:181
Definition collectionscannerhints.h:48
virtual void recordHints(const QList< ItemCopyMoveHint > &hints)=0
virtual ~CollectionScannerHintContainer()=default
CollectionScannerHintContainer()=default
Note: All methods of this class must be thread-safe.
virtual void recordHints(const QList< AlbumCopyMoveHint > &hints)=0
virtual void recordHint(const ItemMetadataAdjustmentHint &hints)=0
virtual void recordHints(const QList< ItemChangeHint > &hints)=0
Definition collectionscannerhints.h:273
QList< qlonglong > m_ids
Definition collectionscannerhints.h:316
bool needsRescan() const
Definition collectionscannerhints.h:302
bool isModified() const
Definition collectionscannerhints.h:297
ChangeType
Definition collectionscannerhints.h:282
@ ItemModified
treat as if modification date changed
Definition collectionscannerhints.h:283
Definition collectionscannerhints.h:217
ItemCopyMoveHint()=default
QStringList m_dstNames
Definition collectionscannerhints.h:267
CollectionScannerHints::Album dst() const
Definition collectionscannerhints.h:238
QList< qlonglong > m_srcIds
Definition collectionscannerhints.h:265
bool operator==(const CollectionScannerHints::Album &dst) const
Definition collectionscannerhints.h:246
CollectionScannerHints::Album m_dst
Definition collectionscannerhints.h:266
#define DECLARE_METATYPE_FOR_DBUS(x)
Definition dbenginedbusutils.h:19
#define QT_HASH_TYPE
Definition digikam_globals.h:56
Definition datefolderview.cpp:34
bool operator==(const SearchTextSettings &a, const SearchTextSettings &b)
Definition searchtextbar.cpp:40
size_t qHash(const PAlbumPath &id)
Definition albummanager_p.h:135
QDataStream & operator<<(QDataStream &dataStream, const unsigned long &in)
Definition qdatastreamoverloads.cpp:29
QDataStream & operator>>(QDataStream &dataStream, unsigned long &in)
Definition qdatastreamoverloads.cpp:19