• Skip to content
  • Skip to link menu
KDE 4.4 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

digikam

Digikam::AlbumDB

Digikam::AlbumDB Class Reference

#include <albumdb.h>

List of all members.

Public Types

enum  CopyrightPropertyUnique { PropertyUnique, PropertyExtraValueUnique, PropertyNoConstraint }
enum  ItemSortOrder {
  NoItemSorting, ByItemName, ByItemPath, ByItemDate,
  ByItemRating
}

Public Member Functions

int addAlbum (int albumRootId, const QString &relativePath, const QString &caption, const QDate &date, const QString &collection)
int addAlbumRoot (AlbumRoot::Type type, const QString &identifier, const QString &specificPath, const QString &label)
void addImageInformation (qlonglong imageID, const QVariantList &infos, DatabaseFields::ImageInformation fields=DatabaseFields::ImageInformationAll)
void addImageMetadata (qlonglong imageID, const QVariantList &infos, DatabaseFields::ImageMetadata fields=DatabaseFields::ImageMetadataAll)
void addImagePosition (qlonglong imageID, const QVariantList &infos, DatabaseFields::ImagePositions fields=DatabaseFields::ImagePositionsAll)
qlonglong addItem (int albumID, const QString &name, DatabaseItem::Status status, DatabaseItem::Category category, const QDateTime &modificationDate, int fileSize, const QString &uniqueHash)
void addItemTag (int albumID, const QString &name, int tagID)
void addItemTag (qlonglong imageID, int tagID)
int addSearch (DatabaseSearch::Type type, const QString &name, const QString &query)
int addTag (int parentTagID, const QString &name, const QString &iconKDE, qlonglong iconID)
void addTagsToItems (QList< qlonglong > imageIDs, QList< int > tagIDs)
int addToDownloadHistory (const QString &identifier, const QString &name, int fileSize, const QDateTime &date)
void addToUserImageFilterSettings (const QString &filterString)
void changeAlbumRootType (int rootId, AlbumRoot::Type newType)
void changeImageComment (int commentId, qlonglong imageID, const QVariantList &infos, DatabaseFields::ImageComments fields=DatabaseFields::ImageCommentsAll)
void changeImageInformation (qlonglong imageID, const QVariantList &infos, DatabaseFields::ImageInformation fields=DatabaseFields::ImageInformationAll)
void changeImageMetadata (qlonglong imageID, const QVariantList &infos, DatabaseFields::ImageMetadata fields=DatabaseFields::ImageMetadataAll)
void changeImagePosition (qlonglong imageID, const QVariantList &infos, DatabaseFields::ImagePositions fields=DatabaseFields::ImagePositionsAll)
bool copyAlbumProperties (int srcAlbumID, int dstAlbumID)
void copyImageAttributes (qlonglong srcId, qlonglong destId)
int copyItem (int srcAlbumID, const QString &srcName, int dstAlbumID, const QString &dstName)
QUuid databaseUuid ()
void deleteAlbum (int albumID)
void deleteAlbumRoot (int rootId)
void deleteItem (int albumID, const QString &file)
void deleteRemovedItems (QList< int > albumIDs)
void deleteRemovedItems ()
void deleteSearch (int searchID)
void deleteSearches (DatabaseSearch::Type type)
void deleteStaleAlbums ()
void deleteTag (int tagID)
int findInDownloadHistory (const QString &identifier, const QString &name, int fileSize, const QDateTime &date)
QList< int > getAlbumAndSubalbumsForPath (int albumRootId, const QString &relativePath)
QDate getAlbumAverageDate (int albumID)
int getAlbumForPath (int albumRootId, const QString &relativePath, bool create=true)
QDate getAlbumHighestDate (int albumID)
bool getAlbumIcon (int albumID, int *iconAlbumRootId, QString *iconAlbumRelativePath)
QDate getAlbumLowestDate (int albumID)
QString getAlbumRelativePath (int albumID)
int getAlbumRootId (int albumID)
QList< AlbumRootInfo > getAlbumRoots ()
QList< AlbumShortInfo > getAlbumShortInfos ()
QList< int > getAlbumsOnAlbumRoot (int albumRootId)
QList< QDateTime > getAllCreationDates ()
QMap< QDateTime, int > getAllCreationDatesAndNumberOfImages ()
QList< qlonglong > getDirtyOrMissingFingerprints ()
QStringList getDirtyOrMissingFingerprintURLs ()
void getFilterSettings (QStringList *imageFilter, QStringList *videoFilter, QStringList *audioFilter)
QList< ItemScanInfo > getIdenticalFiles (int fileSize, const QString &uniqueHash, qlonglong sourceId=-1)
QList< ItemScanInfo > getIdenticalFiles (qlonglong id)
QList< CommentInfo > getImageComments (qlonglong imageID)
QList< CopyrightInfo > getImageCopyright (qlonglong imageID, const QString &property=QString())
QMap< QString, int > getImageFormatStatistics ()
qlonglong getImageId (int albumID, const QString &name)
QVariantList getImageInformation (qlonglong imageID, DatabaseFields::ImageInformation infoFields=DatabaseFields::ImageInformationAll)
QVariantList getImageMetadata (qlonglong imageID, DatabaseFields::ImageMetadata metadataFields=DatabaseFields::ImageMetadataAll)
QVariantList getImagePosition (qlonglong imageID, DatabaseFields::ImagePositions positionFields=DatabaseFields::ImagePositionsAll)
QString getImageProperty (qlonglong imageID, const QString &property)
QVariantList getImagesFields (qlonglong imageID, DatabaseFields::Images imagesFields)
int getItemAlbum (qlonglong imageID)
QList< int > getItemCommonTagIDs (const QList< qlonglong > &imageIDList)
QMap< qlonglong, QString > getItemIDsAndURLsInAlbum (int albumID)
QList< qlonglong > getItemIDsInAlbum (int albumID)
QList< qlonglong > getItemIDsInTag (int tagID, bool recursive=false)
QString getItemName (qlonglong imageID)
QStringList getItemNamesInAlbum (int albumID, bool recurssive=false)
ItemScanInfo getItemScanInfo (qlonglong imageID)
QList< ItemScanInfo > getItemScanInfos (int albumID)
ItemShortInfo getItemShortInfo (int albumRootId, const QString &relativePath, const QString &name)
ItemShortInfo getItemShortInfo (qlonglong imageID)
QList< int > getItemTagIDs (qlonglong imageID)
QStringList getItemTagNames (qlonglong imageID)
QStringList getItemURLsInAlbum (int albumID, ItemSortOrder order=NoItemSorting)
QStringList getItemURLsInTag (int tagID, bool recursive=false)
QMap< int, int > getNumberOfImagesInAlbums ()
QMap< int, int > getNumberOfImagesInTags ()
QList< int > getRecentlyAssignedTags () const
SearchInfo getSearchInfo (int searchId)
QString getSearchQuery (int searchId)
QString getSetting (const QString &keyword)
bool getTagIcon (int tagID, int *iconAlbumRootId, QString *iconAlbumRelativePath, QString *icon)
QList< int > getTagsFromTagPaths (const QStringList &tagPaths, bool create)
void getUserFilterSettings (QString *imageFilterString, QString *videoFilterString, QString *audioFilterString)
bool hasHaarFingerprints ()
bool hasTags (const QList< qlonglong > &imageIDList)
void makeStaleAlbum (int albumID)
void migrateAlbumRoot (int rootId, const QString &identifier)
void moveItem (int srcAlbumID, const QString &srcName, int dstAlbumID, const QString &dstName)
void removeImageComment (int commentId, qlonglong imageid)
void removeImageCopyrightProperties (qlonglong imageID, const QString &property=QString(), const QString &extraValue=QString(), const QString &value=QString())
void removeImagePosition (qlonglong imageid)
void removeImageProperty (qlonglong imageID, const QString &property)
void removeItemAllTags (qlonglong imageID, QList< int > currentTagIds)
void removeItems (QList< qlonglong > itemIDs, QList< int > albumIDs=QList< int >())
void removeItemsFromAlbum (int albumID)
void removeItemTag (qlonglong imageID, int tagID)
void removeTagsFromItems (QList< qlonglong > imageIDs, QList< int > tagIDs)
void renameAlbum (int albumID, int newAlbumRootId, const QString &newRelativePath)
AlbumInfo::List scanAlbums ()
SearchInfo::List scanSearches ()
TagInfo::List scanTags ()
void setAlbumCaption (int albumID, const QString &caption)
void setAlbumCategory (int albumID, const QString &category)
void setAlbumDate (int albumID, const QDate &date)
void setAlbumIcon (int albumID, qlonglong iconID)
void setAlbumRootLabel (int rootId, const QString &newLabel)
void setFilterSettings (const QStringList &imageFilter, const QStringList &videoFilter, const QStringList &audioFilter)
int setImageComment (qlonglong imageID, const QString &comment, DatabaseComment::Type type, const QString &language=QString(), const QString &author=QString(), const QDateTime &date=QDateTime())
void setImageCopyrightProperty (qlonglong imageID, const QString &property, const QString &value, const QString &extraValue=QString(), CopyrightPropertyUnique uniqueness=PropertyUnique)
void setImageProperty (qlonglong imageID, const QString &property, const QString &value)
void setSetting (const QString &keyword, const QString &value)
void setTagIcon (int tagID, const QString &iconKDE, qlonglong iconID)
void setTagName (int tagID, const QString &name)
void setTagParentID (int tagID, int newParentTagID)
void setUserFilterSettings (const QString &imageFilterString, const QString &videoFilterString, const QString &audioFilterString)
void setUserFilterSettings (const QStringList &imageFilter, const QStringList &videoFilter, const QStringList &audioFilter)
void updateItem (qlonglong imageID, DatabaseItem::Category category, const QDateTime &modificationDate, int fileSize, const QString &uniqueHash)
void updateSearch (int searchID, DatabaseSearch::Type type, const QString &name, const QString &query)

Static Public Member Functions

static void addBoundValuePlaceholders (QString &query, int count)
static QStringList imageCommentsFieldList (DatabaseFields::ImageComments fields)
static QStringList imageInformationFieldList (DatabaseFields::ImageInformation fields)
static QStringList imageMetadataFieldList (DatabaseFields::ImageMetadata fields)
static QStringList imagePositionsFieldList (DatabaseFields::ImagePositions fields)
static QStringList imagesFieldList (DatabaseFields::Images fields)

Detailed Description

Definition at line 56 of file albumdb.h.


Member Enumeration Documentation

enum Digikam::AlbumDB::CopyrightPropertyUnique

Sets the property with the given name for the given image to the specified value and extraValue.

Enumerator:
PropertyUnique 
PropertyExtraValueUnique 
PropertyNoConstraint 

Definition at line 847 of file albumdb.h.

enum Digikam::AlbumDB::ItemSortOrder
Enumerator:
NoItemSorting 
ByItemName 
ByItemPath 
ByItemDate 
ByItemRating 

Definition at line 535 of file albumdb.h.


Member Function Documentation

int Digikam::AlbumDB::addAlbum ( int  albumRootId,
const QString &  relativePath,
const QString &  caption,
const QDate &  date,
const QString &  collection 
)

Add a new album to the database with the given attributes.

Parameters:
albumRootId id of the album root of the new album
relativePath url of the album
caption the album caption
date the date for the album
collection the album collection
Returns:
the id of the album added or -1 if it failed

Definition at line 354 of file albumdb.cpp.

int Digikam::AlbumDB::addAlbumRoot ( AlbumRoot::Type  type,
const QString &  identifier,
const QString &  specificPath,
const QString &  label 
)

Add a new album to the database with the given attributes.

Parameters:
type The type of the album root
absolutePath The last absolute path in the file system. The usage of this parameter is up to the CollectionManager
uuid The volume UUID of the volume this album root is contained on.
specificPath The path specific to volume
label An (optional) user-visible label
Returns:
the album root id of the newly created root

Definition at line 115 of file albumdb.cpp.

void Digikam::AlbumDB::addBoundValuePlaceholders ( QString &  query,
int  count 
) [static]

Definition at line 1783 of file albumdb.cpp.

void Digikam::AlbumDB::addImageInformation ( qlonglong  imageID,
const QVariantList &  infos,
DatabaseFields::ImageInformation  fields = DatabaseFields::ImageInformationAll 
)

Add (or replace) the ImageInformation of the specified item.

If there is already an entry, it will be discarded. The QVariantList shall have 9 entries, of types in this order: 0) Int rating 1) DateTime* creationDate 2) DateTime* digitizationDate 3) Int orientation 4) Int width 5) Int height 6) String format 7) Int colorDepth 8) Int colorModel ( (*) You can provide the date also as a string in the format Qt::IsoDate) You can leave out entries from this list, which will then be filled with null values. Indicate the values that you have passed in the ImageInformation flag in the third parameters.

Definition at line 1153 of file albumdb.cpp.

void Digikam::AlbumDB::addImageMetadata ( qlonglong  imageID,
const QVariantList &  infos,
DatabaseFields::ImageMetadata  fields = DatabaseFields::ImageMetadataAll 
)

Add (or replace) the ImageMetadata of the specified item.

If there is already an entry, it will be discarded. The QVariantList shall have at most 16 entries, of types as defined in the DBSCHEMA and in metadatainfo.h, in this order: 0) String make 1) String model 2) String lens 3) Double aperture 4) Double focalLength 5) Double focalLength35 6) Double exposureTime 7) Int exposureProgram 8) Int exposureMode 9) Int sensitivity 10) Int flash 11) Int WhiteBalance 12) Int WhiteBalanceColorTemperature 13) Int meteringMode 14) Double subjectDistance 15) Double subjectDistanceCategory You can leave out entries from this list. Indicate the values that you have passed in the ImageMetadata flag in the third parameters.

Definition at line 1222 of file albumdb.cpp.

void Digikam::AlbumDB::addImagePosition ( qlonglong  imageID,
const QVariantList &  infos,
DatabaseFields::ImagePositions  fields = DatabaseFields::ImagePositionsAll 
)

Add (or replace) the ImagePosition of the specified item.

If there is already an entry, it will be discarded. The QVariantList shall have at most 10 entries, of types in this order: 0) String Latitude 1) Double LatitudeNumber 2) String Longitude 3) Double LongitudeNumber 4) Double Altitude 5) Double Orientation 6) Double Tilt 7) Double Roll 8) Double Accuracy 9) String Description You can leave out entries from this list. Indicate the values that you have passed in the ImageInfo flag in the third parameters.

Definition at line 1265 of file albumdb.cpp.

qlonglong Digikam::AlbumDB::addItem ( int  albumID,
const QString &  name,
DatabaseItem::Status  status,
DatabaseItem::Category  category,
const QDateTime &  modificationDate,
int  fileSize,
const QString &  uniqueHash 
)

Put a new item in the database or replace an existing one.

Returns:
the id of item added or -1 if it fails

Definition at line 2222 of file albumdb.cpp.

void Digikam::AlbumDB::addItemTag ( int  albumID,
const QString &  name,
int  tagID 
)

Add a tag for the item.

Parameters:
albumID the albumID of the item
name the name of the item
tagID the tagID for the tag

Definition at line 1872 of file albumdb.cpp.

void Digikam::AlbumDB::addItemTag ( qlonglong  imageID,
int  tagID 
)

Get the datetime for the item.

Parameters:
imageID the ID of the item
Returns:
the datetime for the item Get the item rating
Parameters:
imageID the ID of the item
Returns:
the rating for the item Update the date of a item to supplied date
Parameters:
imageID The ID of the item
datetime The datetime to be stored. Should try to let that be the exif-datetime, but if not available the modification date.
Returns:
It will always return true. Maybe that will change. Update the rating of a item to supplied value
Parameters:
imageID The ID of the item
rating The rating value to be stored. Get the datetime for the item
albumID the albumID of the item
name the name of the item
Returns:
the datetime for the item Update the date of a item to supplied date
Parameters:
albumID The albumID where the file is located.
name The filename
datetime The datetime to be stored. Should try to let that be the exif-datetime, but if not available the modification date.
Returns:
It will always return true. Maybe that will change. Get the caption for the item
Parameters:
imageID the id of the item
Returns:
the caption for the item Get the caption for the item
Parameters:
albumID the albumID of the item
name the name of the item
Returns:
the caption for the item Set the caption for the item
Parameters:
imageID the id of the item
caption the caption for the item Set the caption for the item
albumID the albumID of the item
name the name of the item
caption the caption for the item Add a tag for the item
imageID the ID of the item
tagID the tagID for the tag

Definition at line 1855 of file albumdb.cpp.

int Digikam::AlbumDB::addSearch ( DatabaseSearch::Type  type,
const QString &  name,
const QString &  query 
)

Add a new search to the database with the given attributes.

Parameters:
name name of the search
url url of the search
Returns:
the id of the album added or -1 if it failed

Definition at line 565 of file albumdb.cpp.

int Digikam::AlbumDB::addTag ( int  parentTagID,
const QString &  name,
const QString &  iconKDE,
qlonglong  iconID 
)

Adds a new tag to the database with given name, icon and parent id.

Parameters:
parentTagID the id of the tag which will become the new tags parent
name the name of the tag
iconKDE the name of the icon file (this is filename which kde iconloader can load up)
iconID the id of the icon file Note: if the iconKDE parameter is empty, then the iconID parameter is used
Returns:
the id of the tag added or -1 if it failed

Definition at line 466 of file albumdb.cpp.

void Digikam::AlbumDB::addTagsToItems ( QList< qlonglong >  imageIDs,
QList< int >  tagIDs 
)

Add each tag of a list of tags to each member of a list of items.

Definition at line 1887 of file albumdb.cpp.

int Digikam::AlbumDB::addToDownloadHistory ( const QString &  identifier,
const QString &  name,
int  fileSize,
const QDateTime &  date 
)

Add the specified fingerprint to the download history table.

Returns the id of the entry.

Definition at line 1810 of file albumdb.cpp.

void Digikam::AlbumDB::addToUserImageFilterSettings ( const QString &  filterString  ) 

Adds the given filters to the user image filter settings.

Definition at line 763 of file albumdb.cpp.

void Digikam::AlbumDB::changeAlbumRootType ( int  rootId,
AlbumRoot::Type  newType 
)

Sets the type of the specified album root to a new value.

Definition at line 147 of file albumdb.cpp.

void Digikam::AlbumDB::changeImageComment ( int  commentId,
qlonglong  imageID,
const QVariantList &  infos,
DatabaseFields::ImageComments  fields = DatabaseFields::ImageCommentsAll 
)

Changes the properties of a comment.

The QVariantList shall have at most 5 entries, of types in this order: 0) Int Type 1) String Language 2) String Author 3) DateTime Date 4) String Comment

Definition at line 1365 of file albumdb.cpp.

void Digikam::AlbumDB::changeImageInformation ( qlonglong  imageID,
const QVariantList &  infos,
DatabaseFields::ImageInformation  fields = DatabaseFields::ImageInformationAll 
)

Change the indicated fields of the image information for the specified item.

Fields not indicated by the fields parameter will not be touched. This method does nothing if the item does not yet have an entry in the ImageInformation table. The parameters are as for the method above.

Definition at line 1188 of file albumdb.cpp.

void Digikam::AlbumDB::changeImageMetadata ( qlonglong  imageID,
const QVariantList &  infos,
DatabaseFields::ImageMetadata  fields = DatabaseFields::ImageMetadataAll 
)

Change the indicated fields of the image information for the specified item.

This method does nothing if the item does not yet have an entry in the ImageInformation table. The parameters are as for the method above.

Definition at line 1244 of file albumdb.cpp.

void Digikam::AlbumDB::changeImagePosition ( qlonglong  imageID,
const QVariantList &  infos,
DatabaseFields::ImagePositions  fields = DatabaseFields::ImagePositionsAll 
)

Change the indicated fields of the image information for the specified item.

This method does nothing if the item does not yet have an entry in the ImageInformation table. The parameters are as for the method above.

Definition at line 1287 of file albumdb.cpp.

bool Digikam::AlbumDB::copyAlbumProperties ( int  srcAlbumID,
int  dstAlbumID 
)

Copy the properties of the given srcAlbum to the dstAlbum.

Both albums must exist.

Returns:
true if the operations succeeds

Definition at line 3126 of file albumdb.cpp.

void Digikam::AlbumDB::copyImageAttributes ( qlonglong  srcId,
qlonglong  destId 
)

Copies all image-specific information, in all tables, from image srcId to destId.

Definition at line 3055 of file albumdb.cpp.

int Digikam::AlbumDB::copyItem ( int  srcAlbumID,
const QString &  srcName,
int  dstAlbumID,
const QString &  dstName 
)

Copy the attributes of an item to a different item.

Useful when say a file is copied. The operation fails (returns -1) of src and dest are identical.

Parameters:
srcAlbumID the id of the source album
dstAlbumID the id of the destination album
srcName the name of the source file
dstName the name of the destination file
Returns:
the id of item added or -1 if it fails

Definition at line 3017 of file albumdb.cpp.

QUuid Digikam::AlbumDB::databaseUuid (  ) 

Returns a UUID for the database file.

This UUID is kept stable over schema updates.

Definition at line 779 of file albumdb.cpp.

void Digikam::AlbumDB::deleteAlbum ( int  albumID  ) 

Deletes an album from the database.

This will not delete the subalbums of the album.

Parameters:
albumID the id of the album

Definition at line 425 of file albumdb.cpp.

void Digikam::AlbumDB::deleteAlbumRoot ( int  rootId  ) 

Deletes an album root from the database.

Parameters:
rootId the id of the album root

Definition at line 126 of file albumdb.cpp.

void Digikam::AlbumDB::deleteItem ( int  albumID,
const QString &  file 
)

Deletes an item from the database.

Parameters:
albumID The id of the album.
file The filename of the file to delete.

Definition at line 2884 of file albumdb.cpp.

void Digikam::AlbumDB::deleteRemovedItems ( QList< int >  albumIDs  ) 

Delete from the database all items in the specified albums that are marked as removed.

Definition at line 2929 of file albumdb.cpp.

void Digikam::AlbumDB::deleteRemovedItems (  ) 

Delete all items from the database that are marked as removed.

Use with care!

Definition at line 2921 of file albumdb.cpp.

void Digikam::AlbumDB::deleteSearch ( int  searchID  ) 

Delete a search from the database.

Parameters:
searchID the id of the search

Definition at line 586 of file albumdb.cpp.

void Digikam::AlbumDB::deleteSearches ( DatabaseSearch::Type  type  ) 

Delete all search with the given type.

Definition at line 593 of file albumdb.cpp.

void Digikam::AlbumDB::deleteStaleAlbums (  ) 

Deletes albums from the database that were previously removed with makeStaleAlbum().

Definition at line 460 of file albumdb.cpp.

void Digikam::AlbumDB::deleteTag ( int  tagID  ) 

Deletes a tag from the database.

This will not delete the subtags of the tag.

Parameters:
tagID the id of the tag

Definition at line 496 of file albumdb.cpp.

int Digikam::AlbumDB::findInDownloadHistory ( const QString &  identifier,
const QString &  name,
int  fileSize,
const QDateTime &  date 
)

Search for the specified fingerprint in the download history table.

Returns the id of the entry, or -1 if not found.

Definition at line 1798 of file albumdb.cpp.

QList< int > Digikam::AlbumDB::getAlbumAndSubalbumsForPath ( int  albumRootId,
const QString &  relativePath 
)

Find out the album ids for a given relative path, including the subalbums.

Parameters:
albumRootId id of the album root of the album
relativePath The path for which you want the albumIDs relative to the album root
Returns:
a list of album ids. The list is empty if no albums are found.

Definition at line 2194 of file albumdb.cpp.

QDate Digikam::AlbumDB::getAlbumAverageDate ( int  albumID  ) 

Returns the average date of all images for that album.

Parameters:
albumID the id of the album to calculate
Returns:
the date.

Definition at line 2847 of file albumdb.cpp.

int Digikam::AlbumDB::getAlbumForPath ( int  albumRootId,
const QString &  relativePath,
bool  create = true 
)

Find out the album for a given folder.

Parameters:
albumRootId id of the album root of the album
relativePath The relative path for which you want the albumID relative to the album root
create If true, an album is newly created if it does not yet exist. If false, -1 is returned if no album exists.
Returns:
The albumID for that folder, or -1 if it does not exist and create is false.

Definition at line 2174 of file albumdb.cpp.

QDate Digikam::AlbumDB::getAlbumHighestDate ( int  albumID  ) 

Returns the highest/newest date of all images for that album.

Parameters:
albumID the id of the album to calculate
Returns:
the date.

Definition at line 2834 of file albumdb.cpp.

bool Digikam::AlbumDB::getAlbumIcon ( int  albumID,
int *  iconAlbumRootId,
QString *  iconAlbumRelativePath 
)

Get the image that is set as album icon.

Parameters:
albumID the id of the album
iconAlbumRootId Returns the album root id of the image
iconAlbumRelativePath Returns the path below the album root of the image
Returns:
true if there is an icon set.

Definition at line 401 of file albumdb.cpp.

QDate Digikam::AlbumDB::getAlbumLowestDate ( int  albumID  ) 

Returns the lowest/oldest date of all images for that album.

Parameters:
albumID the id of the album to calculate
Returns:
the date.

Definition at line 2821 of file albumdb.cpp.

QString Digikam::AlbumDB::getAlbumRelativePath ( int  albumID  ) 

Given an albumid, this returns the path for that album.

Parameters:
albumID the id of the album
Returns:
the url of the album Given an albumid, this returns the relative path for that album (the path below the album root, starting with a slash)
Parameters:
albumID the id of the album
Returns:
the url of the album

Definition at line 2799 of file albumdb.cpp.

int Digikam::AlbumDB::getAlbumRootId ( int  albumID  ) 

Given an albumid, this returns the album root id for that album.

Parameters:
albumID the id of the albumdb
Returns:
the id of the album root of this album

Definition at line 2810 of file albumdb.cpp.

QList< AlbumRootInfo > Digikam::AlbumDB::getAlbumRoots (  ) 

Returns all albums and their attributes in the database.

Returns:
a list of albums and their attributes

Definition at line 86 of file albumdb.cpp.

QList< AlbumShortInfo > Digikam::AlbumDB::getAlbumShortInfos (  ) 

Returns all albums in the database with their albumRoot and ID.

Definition at line 276 of file albumdb.cpp.

QList< int > Digikam::AlbumDB::getAlbumsOnAlbumRoot ( int  albumRootId  ) 

Find out all album ids of a given album root.

Returns:
a list of album ids.

Definition at line 2208 of file albumdb.cpp.

QList< QDateTime > Digikam::AlbumDB::getAllCreationDates (  ) 

Returns all creation dates found in the image metadata table.

Definition at line 2003 of file albumdb.cpp.

QMap< QDateTime, int > Digikam::AlbumDB::getAllCreationDatesAndNumberOfImages (  ) 

Returns a QMap<QDateTime,int> of creationDate -> count of items with the tag.

Definition at line 2019 of file albumdb.cpp.

QList< qlonglong > Digikam::AlbumDB::getDirtyOrMissingFingerprints (  ) 

Returns a list of all images where the Haar fingerprint has either not been generated yet, or is outdated because the file is identified as changed since the generation of the fingerprint.

Return image ids or item URLs.

Definition at line 1528 of file albumdb.cpp.

QStringList Digikam::AlbumDB::getDirtyOrMissingFingerprintURLs (  ) 

Definition at line 1549 of file albumdb.cpp.

void Digikam::AlbumDB::getFilterSettings ( QStringList *  imageFilter,
QStringList *  videoFilter,
QStringList *  audioFilter 
)

Get the settings for the file name filters of this database.

Returns a list with lowercase suffixes only, no wildcards added ("png", not "*.png") Returned is a joint result of main and user settings. If you are not interested in a specific value, pass 0.

Definition at line 674 of file albumdb.cpp.

QList< ItemScanInfo > Digikam::AlbumDB::getIdenticalFiles ( int  fileSize,
const QString &  uniqueHash,
qlonglong  sourceId = -1 
)

Definition at line 1602 of file albumdb.cpp.

QList< ItemScanInfo > Digikam::AlbumDB::getIdenticalFiles ( qlonglong  id  ) 

Find items that are, with reasonable certainty, identical to the file pointed to by id.

Criteria: Unique Hash, file size. The first variant will not return an ItemScanInfo for id. The second allows to pass one id as source id for exclusion from the list. If this is -1, no id is excluded.

Definition at line 1581 of file albumdb.cpp.

QList< CommentInfo > Digikam::AlbumDB::getImageComments ( qlonglong  imageID  ) 

Retrieves all available comments for the specified item.

Definition at line 1316 of file albumdb.cpp.

QList< CopyrightInfo > Digikam::AlbumDB::getImageCopyright ( qlonglong  imageID,
const QString &  property = QString() 
)

Returns the copyright properties of the specified image.

If property is not null, only the given property is returned.

Definition at line 1421 of file albumdb.cpp.

QMap< QString, int > Digikam::AlbumDB::getImageFormatStatistics (  ) 

Returns a QMap<QString,int> of ImageInformation.format -> count of items with that format.

Definition at line 2113 of file albumdb.cpp.

qlonglong Digikam::AlbumDB::getImageId ( int  albumID,
const QString &  name 
)

Get the imageId of the item.

Parameters:
albumId the albumID of the item
name the name of the item
Returns:
the ImageId for the item, or -1 if it does not exist

Definition at line 855 of file albumdb.cpp.

QVariantList Digikam::AlbumDB::getImageInformation ( qlonglong  imageID,
DatabaseFields::ImageInformation  infoFields = DatabaseFields::ImageInformationAll 
)

Read image information.

Parameters as above.

Definition at line 1046 of file albumdb.cpp.

QVariantList Digikam::AlbumDB::getImageMetadata ( qlonglong  imageID,
DatabaseFields::ImageMetadata  metadataFields = DatabaseFields::ImageMetadataAll 
)

Read image metadata.

Parameters as above.

Definition at line 1075 of file albumdb.cpp.

QVariantList Digikam::AlbumDB::getImagePosition ( qlonglong  imageID,
DatabaseFields::ImagePositions  positionFields = DatabaseFields::ImagePositionsAll 
)

Read image metadata.

Parameters as above.

Definition at line 1112 of file albumdb.cpp.

QString Digikam::AlbumDB::getImageProperty ( qlonglong  imageID,
const QString &  property 
)

Returns the property with the specified name for the specified image.

Definition at line 1392 of file albumdb.cpp.

QVariantList Digikam::AlbumDB::getImagesFields ( qlonglong  imageID,
DatabaseFields::Images  imagesFields 
)

Returns the requested fields from the Images table.

Choose the fields with the mask. The fields will be returned in the following order and type: 0) Int Album 1) String Name 2) Int Status 3) Int Category 4) DateTime ModificationDate 5) int FileSize 6) String uniqueHash

Definition at line 1023 of file albumdb.cpp.

int Digikam::AlbumDB::getItemAlbum ( qlonglong  imageID  ) 

Find the album of an item.

Parameters:
imageID The ID of the item
Returns:
The ID of the PAlbum of the item, or -1 if not found

Definition at line 2433 of file albumdb.cpp.

QList< int > Digikam::AlbumDB::getItemCommonTagIDs ( const QList< qlonglong > &  imageIDList  ) 

Given a set of items (identified by their IDs), get a list of ID of all common tags.

Parameters:
imageIDList a list of IDs of the items
Returns:
the list of common IDs of the given items

Definition at line 988 of file albumdb.cpp.

QMap< qlonglong, QString > Digikam::AlbumDB::getItemIDsAndURLsInAlbum ( int  albumID  ) 

Given a albumID, get a map of Ids and urls of all items in the album NOTE: Uses the CollectionManager.

Parameters:
albumID the id of the album
Returns:
a map of Ids and urls for the items in the album. The urls are the absolute path of the items

Definition at line 2606 of file albumdb.cpp.

QList< qlonglong > Digikam::AlbumDB::getItemIDsInAlbum ( int  albumID  ) 

Given a albumID, get a list of Ids of all items in the album.

Parameters:
albumID the id of the album
Returns:
a list of Ids for the items in the album.

Definition at line 2590 of file albumdb.cpp.

QList< qlonglong > Digikam::AlbumDB::getItemIDsInTag ( int  tagID,
bool  recursive = false 
)

Given a tagID, get a list of Ids of all items in the tag.

Parameters:
tagID the id of the tag
recursive perform a recursive folder hierarchy parsing
Returns:
a list of Ids for the items in the tag.

Definition at line 2761 of file albumdb.cpp.

QString Digikam::AlbumDB::getItemName ( qlonglong  imageID  ) 

Retrieve the name of the item.

Parameters:
imageID The ID of the item
Returns:
The name of the item, or a null string if not found

Definition at line 2446 of file albumdb.cpp.

QStringList Digikam::AlbumDB::getItemNamesInAlbum ( int  albumID,
bool  recurssive = false 
)

Returns all items for a given albumid.

This is used to verify if all items on disk are consistent with the database in the CollectionScanner class.

Parameters:
albumID The albumID for which you want all items.
recursive perform a recursive folder hierarchy parsing
Returns:
It returns a QStringList with the filenames.

Definition at line 1955 of file albumdb.cpp.

ItemScanInfo Digikam::AlbumDB::getItemScanInfo ( qlonglong  imageID  ) 

Get scan info from the image ID.

Definition at line 2683 of file albumdb.cpp.

QList< ItemScanInfo > Digikam::AlbumDB::getItemScanInfos ( int  albumID  ) 

Returns an ItemScanInfo object for each item in the album with the specified album id.

Definition at line 2646 of file albumdb.cpp.

ItemShortInfo Digikam::AlbumDB::getItemShortInfo ( int  albumRootId,
const QString &  relativePath,
const QString &  name 
)

Get item and album if from albumRootId, album path and file name.

Definition at line 932 of file albumdb.cpp.

ItemShortInfo Digikam::AlbumDB::getItemShortInfo ( qlonglong  imageID  ) 

Get item and album info from the image ID.

Definition at line 907 of file albumdb.cpp.

QList< int > Digikam::AlbumDB::getItemTagIDs ( qlonglong  imageID  ) 

Get a list of IDs of all the tags for the item.

Parameters:
imageID the ID of the item
Returns:
the list of IDs of all tags for the item

Definition at line 888 of file albumdb.cpp.

QStringList Digikam::AlbumDB::getItemTagNames ( qlonglong  imageID  ) 

Get a list of names of all the tags for the item.

Parameters:
imageID the ID of the item
Returns:
the list of names of all tags for the item

Definition at line 871 of file albumdb.cpp.

QStringList Digikam::AlbumDB::getItemURLsInAlbum ( int  albumID,
ItemSortOrder  order = NoItemSorting 
)

Given a albumID, get a list of the url of all items in the album NOTE: Uses the CollectionManager.

Parameters:
albumID the id of the album
Returns:
a list of urls for the items in the album. The urls are the absolute path of the items

Definition at line 2521 of file albumdb.cpp.

QStringList Digikam::AlbumDB::getItemURLsInTag ( int  tagID,
bool  recursive = false 
)

Given a tagid, get a list of the url of all items in the tag NOTE: Uses the CollectionManager.

Parameters:
tagID the id of the tag
recursive perform a recursive folder hierarchy parsing
Returns:
a list of urls for the items in the tag. The urls are the absolute path of the items

Definition at line 2718 of file albumdb.cpp.

QMap< int, int > Digikam::AlbumDB::getNumberOfImagesInAlbums (  ) 

Returns a QMap<int,int> of album id -> count of items in the album.

Definition at line 2045 of file albumdb.cpp.

QMap< int, int > Digikam::AlbumDB::getNumberOfImagesInTags (  ) 

Returns a QMap<int,int> of tag id -> count of items with the tag.

Definition at line 2078 of file albumdb.cpp.

QList< int > Digikam::AlbumDB::getRecentlyAssignedTags (  )  const

Get a list of recently assigned tags (only last 6 tags are listed).

Returns:
the list of recently assigned tags

Definition at line 1909 of file albumdb.cpp.

SearchInfo Digikam::AlbumDB::getSearchInfo ( int  searchId  ) 

Get information about the specified search.

Definition at line 612 of file albumdb.cpp.

QString Digikam::AlbumDB::getSearchQuery ( int  searchId  ) 

Get the query for the search specified by its id.

Definition at line 600 of file albumdb.cpp.

QString Digikam::AlbumDB::getSetting ( const QString &  keyword  ) 

This function returns the value which is stored in the database (table Settings).

Parameters:
keyword The keyword for which the value has to be returned.
Returns:
The values which belongs to the keyword, or a null string if no value is set.

Definition at line 643 of file albumdb.cpp.

bool Digikam::AlbumDB::getTagIcon ( int  tagID,
int *  iconAlbumRootId,
QString *  iconAlbumRelativePath,
QString *  icon 
)

Get the icon for the tag.

This can be either an image of the collection, or a system icon name. So either iconAlbumRelativePath or icon will be null.

Parameters:
tagID the id of the tag
iconAlbumRootId Returns the album root id of the image
iconAlbumRelativePath Returns the path below the album root of the image
icon an icon name that can be loaded by the system iconloader
Returns:
true if there is an icon set.

Definition at line 517 of file albumdb.cpp.

QList< int > Digikam::AlbumDB::getTagsFromTagPaths ( const QStringList &  tagPaths,
bool  create 
)

Add tags for the item, create tags with the given paths if they do not yet exist.

Parameters:
tagPaths a list of tag paths
create create new tags if necessary
Returns:
a list of albumIDs of the tags in tagPaths

Definition at line 2261 of file albumdb.cpp.

void Digikam::AlbumDB::getUserFilterSettings ( QString *  imageFilterString,
QString *  videoFilterString,
QString *  audioFilterString 
)

Returns the user-configurable filter settings.

If you are not interested in a specific value, pass 0.

Definition at line 700 of file albumdb.cpp.

bool Digikam::AlbumDB::hasHaarFingerprints (  ) 

Returns if there are valid entries in the ImageHaarMatrix table.

Returns false if the table is empty.

Definition at line 1516 of file albumdb.cpp.

bool Digikam::AlbumDB::hasTags ( const QList< qlonglong > &  imageIDList  ) 

Given a set of items (identified by their IDs), this will see if any of the items has a tag.

Parameters:
imageIDList a list of IDs of the items
Returns:
true if at least one of the items has a tag

Definition at line 957 of file albumdb.cpp.

QStringList Digikam::AlbumDB::imageCommentsFieldList ( DatabaseFields::ImageComments  fields  )  [static]

Definition at line 1764 of file albumdb.cpp.

QStringList Digikam::AlbumDB::imageInformationFieldList ( DatabaseFields::ImageInformation  fields  )  [static]

Definition at line 1670 of file albumdb.cpp.

QStringList Digikam::AlbumDB::imageMetadataFieldList ( DatabaseFields::ImageMetadata  fields  )  [static]

Definition at line 1696 of file albumdb.cpp.

QStringList Digikam::AlbumDB::imagePositionsFieldList ( DatabaseFields::ImagePositions  fields  )  [static]

Definition at line 1736 of file albumdb.cpp.

QStringList Digikam::AlbumDB::imagesFieldList ( DatabaseFields::Images  fields  )  [static]

Definition at line 1648 of file albumdb.cpp.

void Digikam::AlbumDB::makeStaleAlbum ( int  albumID  ) 

Makes the album a stale entry by setting the albumRoot to 0.

Emits the same changeset as deleteAlbum()

Definition at line 432 of file albumdb.cpp.

void Digikam::AlbumDB::migrateAlbumRoot ( int  rootId,
const QString &  identifier 
)

Migrates a given album root to a new disk location.

This only changes the values in the AlbumRoots table. It is expected that this merely reflects underlying partition changes, still pointing to the same data.

Definition at line 133 of file albumdb.cpp.

void Digikam::AlbumDB::moveItem ( int  srcAlbumID,
const QString &  srcName,
int  dstAlbumID,
const QString &  dstName 
)

Move the attributes of an item to a different item.

Useful when say a file is renamed

Parameters:
srcAlbumID the id of the source album
dstAlbumID the id of the destination album
srcName the name of the source file
dstName the name of the destination file

Definition at line 2997 of file albumdb.cpp.

void Digikam::AlbumDB::removeImageComment ( int  commentId,
qlonglong  imageid 
)

Remove the specified entry in ImageComments.

Definition at line 1384 of file albumdb.cpp.

void Digikam::AlbumDB::removeImageCopyrightProperties ( qlonglong  imageID,
const QString &  property = QString(),
const QString &  extraValue = QString(),
const QString &  value = QString() 
)

Removes copyright properties for the given image id.

All values after the first null value, in order of parameters, are treated as wild cards (you can give value as wildcard; value and extraValue; or property, extraValue and value). Note that extraValue is ordered before value in this method!

Definition at line 1480 of file albumdb.cpp.

void Digikam::AlbumDB::removeImagePosition ( qlonglong  imageid  ) 

Remove the entry in ImagePositions for the given image.

Definition at line 1308 of file albumdb.cpp.

void Digikam::AlbumDB::removeImageProperty ( qlonglong  imageID,
const QString &  property 
)

Definition at line 1415 of file albumdb.cpp.

void Digikam::AlbumDB::removeItemAllTags ( qlonglong  imageID,
QList< int >  currentTagIds 
)

Remove all tags for the item.

Parameters:
imageID the ID of the item
currentTagIds the current tags ids assigned to the item

Definition at line 1924 of file albumdb.cpp.

void Digikam::AlbumDB::removeItems ( QList< qlonglong >  itemIDs,
QList< int >  albumIDs = QList<int>() 
)

Marks all items in the list as removed, resets their dirids.

The items can later be removed by deleteRemovedItems().

Parameters:
itemIDs a list of item IDs to be marked
albumIDs this parameter is purely informational. it shall contain the albums that the items are removed from.

Definition at line 2902 of file albumdb.cpp.

void Digikam::AlbumDB::removeItemsFromAlbum ( int  albumID  ) 

Marks all items in the specified album as removed, resets their dirids.

The album can be deleted afterwards without removing the entries for the items, which can later be removed by deleteRemovedItems().

Parameters:
albumID The id of the album

Definition at line 2894 of file albumdb.cpp.

void Digikam::AlbumDB::removeItemTag ( qlonglong  imageID,
int  tagID 
)

Remove a specific tag for the item.

Parameters:
imageID the ID of the item
tagID the tagID for the tag

Definition at line 1914 of file albumdb.cpp.

void Digikam::AlbumDB::removeTagsFromItems ( QList< qlonglong >  imageIDs,
QList< int >  tagIDs 
)

Remove each tag from a list of tags from a each member of a list of items.

Definition at line 1933 of file albumdb.cpp.

void Digikam::AlbumDB::renameAlbum ( int  albumID,
int  newAlbumRootId,
const QString &  newRelativePath 
)

Give an existing album a new relativePath and a newAlbumRootId.

Definition at line 2948 of file albumdb.cpp.

AlbumInfo::List Digikam::AlbumDB::scanAlbums (  ) 

Returns all albums and their attributes in the database.

Returns:
a list of albums and their attributes

Definition at line 156 of file albumdb.cpp.

SearchInfo::List Digikam::AlbumDB::scanSearches (  ) 

Returns all searches from the database.

Returns:
a list of searches from the database

Definition at line 250 of file albumdb.cpp.

TagInfo::List Digikam::AlbumDB::scanTags (  ) 

Returns all tags and their attributes in the database.

Returns:
a list of tags and their attributes

Definition at line 202 of file albumdb.cpp.

void Digikam::AlbumDB::setAlbumCaption ( int  albumID,
const QString &  caption 
)

Set a caption for the album.

Parameters:
albumID the id of the album
caption the new caption for the album

Definition at line 370 of file albumdb.cpp.

void Digikam::AlbumDB::setAlbumCategory ( int  albumID,
const QString &  category 
)

Set a category for the album.

Parameters:
albumID the id of the album
category the new category for the album

Definition at line 377 of file albumdb.cpp.

void Digikam::AlbumDB::setAlbumDate ( int  albumID,
const QDate &  date 
)

Set a date for the album.

Parameters:
albumID the id of the album
date the date for the album

Definition at line 385 of file albumdb.cpp.

void Digikam::AlbumDB::setAlbumIcon ( int  albumID,
qlonglong  iconID 
)

Set the icon for the album.

Parameters:
albumID the id of the album
iconID the id of the icon file

Definition at line 393 of file albumdb.cpp.

void Digikam::AlbumDB::setAlbumRootLabel ( int  rootId,
const QString &  newLabel 
)

Changes the label of the specified album root.

Parameters:
rootId the id of the album root

Definition at line 140 of file albumdb.cpp.

void Digikam::AlbumDB::setFilterSettings ( const QStringList &  imageFilter,
const QStringList &  videoFilter,
const QStringList &  audioFilter 
)

Sets the main filter settings of the database.

Should only be called at schema update.

Definition at line 710 of file albumdb.cpp.

int Digikam::AlbumDB::setImageComment ( qlonglong  imageID,
const QString &  comment,
DatabaseComment::Type  type,
const QString &  language = QString(),
const QString &  author = QString(),
const QDateTime &  date = QDateTime() 
)

Sets the comments for the image.

A comment for the image with the same source, language and author will be overwritten.

Parameters:
imageID The imageID of the image
comment The comment string
source The source of the comment
language Information about the language of the comment. A null string shall be used if language information is not available from the source, or if the comment is in the default language.
author Optional information about the author who wrote the comment. If not supported by the source, pass a null string.
date Optional information about the date when the comment was written If not supported by the source, pass a null string.
Returns:
the comment ID of the comment

Definition at line 1349 of file albumdb.cpp.

void Digikam::AlbumDB::setImageCopyrightProperty ( qlonglong  imageID,
const QString &  property,
const QString &  value,
const QString &  extraValue = QString(),
CopyrightPropertyUnique  uniqueness = PropertyUnique 
)

Definition at line 1457 of file albumdb.cpp.

void Digikam::AlbumDB::setImageProperty ( qlonglong  imageID,
const QString &  property,
const QString &  value 
)

Sets the property with the given name for the given image to the specified value.

Definition at line 1407 of file albumdb.cpp.

void Digikam::AlbumDB::setSetting ( const QString &  keyword,
const QString &  value 
)

This adds a keyword-value combination to the database Settings table if the keyword already exists, the value will be replaced with the new value.

Parameters:
keyword The keyword
value The value

Definition at line 636 of file albumdb.cpp.

void Digikam::AlbumDB::setTagIcon ( int  tagID,
const QString &  iconKDE,
qlonglong  iconID 
)

Set the icon for the tag.

Parameters:
tagID the id of the tag
iconKDE the filename for the kde icon file
iconID the id of the icon file Note: Only one of the iconKDE or iconID parameters is used. if the iconKDE parameter is empty, then the iconID parameter is used

Definition at line 503 of file albumdb.cpp.

void Digikam::AlbumDB::setTagName ( int  tagID,
const QString &  name 
)

Set a new name for the tag.

Parameters:
tagID the id of the tag
name the new name for the tag

Definition at line 2990 of file albumdb.cpp.

void Digikam::AlbumDB::setTagParentID ( int  tagID,
int  newParentTagID 
)

Set the parent tagid for the tag.

This is equivalent to reparenting the tag

Parameters:
tagID the id of the tag
newParentTagID the new parentid for the tag

Definition at line 558 of file albumdb.cpp.

void Digikam::AlbumDB::setUserFilterSettings ( const QString &  imageFilterString,
const QString &  videoFilterString,
const QString &  audioFilterString 
)

Sets the user-configurable filter settings.

The strings shall be lists joined either by ";" or " ". Extra whitespace, dots and wildcard characters (*.) are removed.

Definition at line 749 of file albumdb.cpp.

void Digikam::AlbumDB::setUserFilterSettings ( const QStringList &  imageFilter,
const QStringList &  videoFilter,
const QStringList &  audioFilter 
)

Sets the user-configurable filter settings.

The lists shall be as specified for getFilterSettings. They may include entries starting with "-", which indicates that this format shall be removed from the list, if it is included in the main settings list.

Definition at line 756 of file albumdb.cpp.

void Digikam::AlbumDB::updateItem ( qlonglong  imageID,
DatabaseItem::Category  category,
const QDateTime &  modificationDate,
int  fileSize,
const QString &  uniqueHash 
)

Update the fields of the Images table that have changed when the file has been modified on disk.

Parameters:
imageID the image that has been modified

Definition at line 2247 of file albumdb.cpp.

void Digikam::AlbumDB::updateSearch ( int  searchID,
DatabaseSearch::Type  type,
const QString &  name,
const QString &  query 
)

Updates Search with new attributes.

Parameters:
searchID the id of the search
name name of the search
url url of the search

Definition at line 578 of file albumdb.cpp.


The documentation for this class was generated from the following files:
  • albumdb.h
  • albumdb.cpp

digikam

Skip menu "digikam"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members

API Reference

Skip menu "API Reference"
  • digikam
Generated for API Reference by doxygen 1.5.9-20090814
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal