digiKam
metadatainfo.h
Go to the documentation of this file.
1 /* ============================================================
2  *
3  * This file is a part of digiKam project
4  * https://www.digikam.org
5  *
6  * Date : 2007-09-12
7  * Description : Metadata info containers
8  *
9  * Copyright (C) 2007-2012 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
10  * Copyright (C) 2009-2022 by Gilles Caulier <caulier dot gilles at gmail dot com>
11  *
12  * This program is free software; you can redistribute it
13  * and/or modify it under the terms of the GNU General
14  * Public License as published by the Free Software Foundation;
15  * either version 2, or (at your option)
16  * any later version.
17  *
18  * This program is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21  * GNU General Public License for more details.
22  *
23  * ============================================================ */
24 
25 #ifndef DIGIKAM_META_DATA_INFO_H
26 #define DIGIKAM_META_DATA_INFO_H
27 
28 // Qt includes
29 
30 #include <QMetaType>
31 #include <QDebug>
32 
33 // Local includes
34 
35 #include "digikam_export.h"
36 
37 namespace Digikam
38 {
39 
40 class DIGIKAM_EXPORT IptcCoreLocationInfo
41 {
42 public:
43 
44  bool operator==(const IptcCoreLocationInfo& t) const;
45  bool isEmpty() const;
46  bool isNull() const;
47 
48 public:
49 
50  QString country;
51  QString countryCode;
52  QString provinceState;
53  QString city;
54  QString location;
55 };
56 
58 DIGIKAM_EXPORT QDebug operator<<(QDebug dbg, const IptcCoreLocationInfo& inf);
59 
60 // ---------------------------------------------------------------------------------------------------
61 
62 class DIGIKAM_EXPORT IptcCoreContactInfo
63 {
64 public:
65 
66  bool operator==(const IptcCoreContactInfo& t) const;
67  bool isEmpty() const;
68  bool isNull() const;
69 
70 public:
71 
72  QString city;
73  QString country;
74  QString address;
75  QString postalCode;
76  QString provinceState;
77  QString email;
78  QString phone;
79  QString webUrl;
80 };
81 
83 DIGIKAM_EXPORT QDebug operator<<(QDebug dbg, const IptcCoreContactInfo& inf);
84 
85 // ---------------------------------------------------------------------------------------------------
86 
87 namespace MetadataInfo
88 {
89 
90 enum Field
91 {
100 
102 
107 
124 
135 
141 
144 
151 
156 
166 
168 
169  // Description, DescriptionWriter, Headline, Title: see above
170  // DateCreated: see above, CreationDate
171  // Keywords: see above, Keywords
172  // not supported: CreatorContactInfo
173 
174  // Dublin Core: Description, Title, Subject (keywords) see above
175 
187 };
188 
189 } // namespace MetadataInfo
190 
192 
193 } // namespace Digikam
194 
195 Q_DECLARE_METATYPE(Digikam::IptcCoreContactInfo)
196 Q_DECLARE_METATYPE(Digikam::IptcCoreLocationInfo)
197 
198 #endif // DIGIKAM_META_DATA_INFO_H
Definition: metadatainfo.h:63
QString country
Definition: metadatainfo.h:73
QString email
Definition: metadatainfo.h:77
QString postalCode
Definition: metadatainfo.h:75
QString city
Definition: metadatainfo.h:72
QString address
Definition: metadatainfo.h:74
QString webUrl
Definition: metadatainfo.h:79
QString provinceState
Definition: metadatainfo.h:76
QString phone
Definition: metadatainfo.h:78
Definition: metadatainfo.h:41
QString city
Definition: metadatainfo.h:53
QString provinceState
Definition: metadatainfo.h:52
QString location
Definition: metadatainfo.h:54
QString country
Definition: metadatainfo.h:50
QString countryCode
Definition: metadatainfo.h:51
Definition: piwigotalker.h:48
Field
Definition: metadatainfo.h:91
@ FlashMode
Int, bit mask from Exif.
Definition: metadatainfo.h:118
@ ExposureProgram
Int, enum from Exif.
Definition: metadatainfo.h:115
@ Title
Map language -> String.
Definition: metadatainfo.h:97
@ IptcCoreContactInfoAddress
String.
Definition: metadatainfo.h:160
@ Description
Map language -> String.
Definition: metadatainfo.h:96
@ IptcCoreContactInfoCity
String.
Definition: metadatainfo.h:158
@ AspectRatio
String.
Definition: metadatainfo.h:176
@ VideoHeight
String.
Definition: metadatainfo.h:184
@ CommentExif
String.
Definition: metadatainfo.h:94
@ Model
String.
Definition: metadatainfo.h:109
@ IptcCoreScene
List of type String.
Definition: metadatainfo.h:154
@ IptcCoreContactInfoCountry
String.
Definition: metadatainfo.h:159
@ IptcCoreCreatorJobTitle
String.
Definition: metadatainfo.h:142
@ IptcCoreCreator
List of type String.
Definition: metadatainfo.h:137
@ IptcCoreContactInfo
object of IptcCoreContactInfo, including:
Definition: metadatainfo.h:157
@ IptcCoreContactInfoProvinceState
String.
Definition: metadatainfo.h:162
@ IptcCoreRightsUsageTerms
Map language -> String.
Definition: metadatainfo.h:139
@ Longitude
String (as XMP GPSCoordinate)
Definition: metadatainfo.h:127
@ IptcCoreJobID
String.
Definition: metadatainfo.h:153
@ IptcCoreLocationInfo
object of IptcCoreLocation, including:
Definition: metadatainfo.h:145
@ Headline
String.
Definition: metadatainfo.h:98
@ IptcCoreCopyrightNotice
Map language -> String.
Definition: metadatainfo.h:136
@ LatitudeNumber
double, degrees
Definition: metadatainfo.h:126
@ WhiteBalanceColorTemperature
double, color temperature in K
Definition: metadatainfo.h:120
@ CommentIptc
String (see also IptcCoreDescription)
Definition: metadatainfo.h:95
@ IptcCoreLocation
String.
Definition: metadatainfo.h:149
@ PositionRoll
double, ?
Definition: metadatainfo.h:132
@ CreationDate
DateTime.
Definition: metadatainfo.h:104
@ SubjectDistance
double, m
Definition: metadatainfo.h:122
@ IptcCoreContactInfoWebUrl
String.
Definition: metadatainfo.h:165
@ MeteringMode
Int, enum from Exif.
Definition: metadatainfo.h:121
@ AudioCodec
String.
Definition: metadatainfo.h:179
@ IptcCoreProvinceState
String.
Definition: metadatainfo.h:150
@ ExposureMode
Int, enum from Exif.
Definition: metadatainfo.h:116
@ AudioChannelType
String.
Definition: metadatainfo.h:178
@ IptcCoreSubjectCode
List of type String.
Definition: metadatainfo.h:155
@ Aperture
Double, FNumber.
Definition: metadatainfo.h:111
@ Duration
String.
Definition: metadatainfo.h:180
@ Latitude
String (as XMP GPSCoordinate)
Definition: metadatainfo.h:125
@ IptcCoreContactInfoPostalCode
String.
Definition: metadatainfo.h:161
@ IptcCoreCountryCode
String.
Definition: metadatainfo.h:146
@ IptcCoreContactInfoEmail
String.
Definition: metadatainfo.h:163
@ SubjectDistanceCategory
int, enum from Exif
Definition: metadatainfo.h:123
@ Sensitivity
Int, ISO sensitivity.
Definition: metadatainfo.h:117
@ LongitudeNumber
double, degrees
Definition: metadatainfo.h:128
@ DescriptionWriter
String.
Definition: metadatainfo.h:99
@ ExposureTime
Double, s.
Definition: metadatainfo.h:114
@ Orientation
Int, enum from libMetaEngine.
Definition: metadatainfo.h:106
@ DigitizationDate
DateTime.
Definition: metadatainfo.h:105
@ PositionAccuracy
double, m
Definition: metadatainfo.h:133
@ PositionOrientation
double, ?
Definition: metadatainfo.h:130
@ Altitude
double, m
Definition: metadatainfo.h:129
@ CommentJfif
String.
Definition: metadatainfo.h:93
@ PositionTilt
double, ?
Definition: metadatainfo.h:131
@ VideoWidth
String.
Definition: metadatainfo.h:185
@ IptcCoreProvider
String.
Definition: metadatainfo.h:138
@ IptcCoreSource
String.
Definition: metadatainfo.h:140
@ Comment
String (one of the following three values)
Definition: metadatainfo.h:92
@ FocalLength
Double, mm.
Definition: metadatainfo.h:112
@ Keywords
StringList.
Definition: metadatainfo.h:101
@ VideoBitDepth
String.
Definition: metadatainfo.h:183
@ WhiteBalance
Int, enum from Exif.
Definition: metadatainfo.h:119
@ PositionDescription
String.
Definition: metadatainfo.h:134
@ FrameRate
String.
Definition: metadatainfo.h:181
@ Lens
String.
Definition: metadatainfo.h:110
@ VideoCodec
String.
Definition: metadatainfo.h:182
@ IptcCoreInstructions
String.
Definition: metadatainfo.h:143
@ IptcCoreIntellectualGenre
String.
Definition: metadatainfo.h:152
@ Rating
Int.
Definition: metadatainfo.h:103
@ Faces
QMap<QString, QVariant>
Definition: metadatainfo.h:167
@ VideoColorSpace
String.
Definition: metadatainfo.h:186
@ FocalLengthIn35mm
Double, mm.
Definition: metadatainfo.h:113
@ AudioBitRate
String.
Definition: metadatainfo.h:177
@ IptcCoreCity
String.
Definition: metadatainfo.h:148
@ IptcCoreCountry
String.
Definition: metadatainfo.h:147
@ IptcCoreContactInfoPhone
String.
Definition: metadatainfo.h:164
@ Make
String.
Definition: metadatainfo.h:108
Definition: datefolderview.cpp:43
QDebug operator<<(QDebug dbg, const DbEngineParameters &p)
Definition: dbengineparameters.cpp:863
QList< MetadataInfo::Field > MetadataFields
Definition: metadatainfo.h:191
bool operator==(const SearchTextSettings &a, const SearchTextSettings &b)
Definition: searchtextbar.cpp:49