File indexing completed on 2025-03-09 03:52:45
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2008-01-04 0007 * Description : Container classes holding user presentable information 0008 * 0009 * SPDX-FileCopyrightText: 2008-2012 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de> 0010 * 0011 * SPDX-License-Identifier: GPL-2.0-or-later 0012 * 0013 * ============================================================ */ 0014 0015 #ifndef DIGIKAM_CORE_DB_INFO_CONTAINERS_H 0016 #define DIGIKAM_CORE_DB_INFO_CONTAINERS_H 0017 0018 // Qt includes 0019 0020 #include <QString> 0021 #include <QDateTime> 0022 0023 namespace Digikam 0024 { 0025 0026 class ImageCommonContainer 0027 { 0028 public: 0029 0030 explicit ImageCommonContainer() 0031 : fileSize (0), 0032 rating (-1), 0033 width (0), 0034 height (0), 0035 colorDepth(0) 0036 { 0037 } 0038 0039 QString fileName; 0040 QDateTime fileModificationDate; 0041 qint64 fileSize; 0042 0043 int rating; 0044 QDateTime creationDate; 0045 QDateTime digitizationDate; 0046 QString orientation; 0047 int width; 0048 int height; 0049 QString format; 0050 int colorDepth; // bits per channel, 8/16 0051 QString colorModel; 0052 }; 0053 0054 // ------------------------------------------------------------ 0055 0056 class ImageMetadataContainer 0057 { 0058 public: 0059 0060 explicit ImageMetadataContainer() 0061 : allFieldsNull(true) 0062 { 0063 } 0064 0065 bool allFieldsNull; 0066 0067 QString make; 0068 QString model; 0069 QString lens; 0070 QString aperture; 0071 QString focalLength; 0072 QString focalLength35; 0073 QString exposureTime; 0074 QString exposureProgram; 0075 QString exposureMode; 0076 QString sensitivity; 0077 QString flashMode; 0078 QString whiteBalance; 0079 QString whiteBalanceColorTemperature; 0080 QString meteringMode; 0081 QString subjectDistance; 0082 QString subjectDistanceCategory; 0083 }; 0084 0085 // ------------------------------------------------------------ 0086 0087 class VideoMetadataContainer 0088 { 0089 public: 0090 0091 explicit VideoMetadataContainer() 0092 : allFieldsNull(true) 0093 { 0094 } 0095 0096 bool allFieldsNull; 0097 0098 QString aspectRatio; 0099 QString audioBitRate; 0100 QString audioChannelType; 0101 QString audioCodec; 0102 QString duration; 0103 QString frameRate; 0104 QString videoCodec; 0105 }; 0106 0107 } // namespace Digikam 0108 0109 #endif // DIGIKAM_CORE_DB_INFO_CONTAINERS_H