File indexing completed on 2025-01-05 03:56:23
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2006-04-21 0007 * Description : photo information container 0008 * 0009 * SPDX-FileCopyrightText: 2006-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0010 * 0011 * SPDX-License-Identifier: GPL-2.0-or-later 0012 * 0013 * ============================================================ */ 0014 0015 #ifndef DIGIKAM_PHOTO_INFO_CONTAINER_H 0016 #define DIGIKAM_PHOTO_INFO_CONTAINER_H 0017 0018 // Qt includes 0019 0020 #include <QString> 0021 #include <QDateTime> 0022 #include <QDebug> 0023 0024 // Local includes 0025 0026 #include "digikam_export.h" 0027 0028 namespace Digikam 0029 { 0030 0031 class DIGIKAM_EXPORT PhotoInfoContainer 0032 { 0033 0034 public: 0035 0036 PhotoInfoContainer() = default; 0037 PhotoInfoContainer(const PhotoInfoContainer&) = default; 0038 ~PhotoInfoContainer() = default; 0039 0040 PhotoInfoContainer& operator=(const PhotoInfoContainer&) = default; 0041 PhotoInfoContainer& operator=(PhotoInfoContainer&&) = default; 0042 0043 bool isEmpty() const; 0044 bool isNull() const; 0045 0046 bool operator==(const PhotoInfoContainer& t) const; 0047 0048 public: 0049 0050 QString make; 0051 QString model; 0052 QString lens; 0053 QString exposureTime; 0054 QString exposureMode; 0055 QString exposureProgram; 0056 QString aperture; 0057 QString focalLength; 0058 QString focalLength35mm; 0059 QString sensitivity; 0060 QString flash; 0061 QString whiteBalance; 0062 0063 QDateTime dateTime; 0064 0065 bool hasCoordinates = false; ///< true if GPS info are present 0066 }; 0067 0068 DIGIKAM_EXPORT QDataStream& operator<<(QDataStream& ds, const PhotoInfoContainer& info); 0069 DIGIKAM_EXPORT QDataStream& operator>>(QDataStream& ds, PhotoInfoContainer& info); 0070 0071 //! qDebug() stream operator. Writes property @a t to the debug output in a nicely formatted way. 0072 DIGIKAM_EXPORT QDebug operator<<(QDebug dbg, const PhotoInfoContainer& t); 0073 0074 } // namespace Digikam 0075 0076 #endif // DIGIKAM_PHOTO_INFO_CONTAINER_H