digiKam
drawinfo.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-05-02
7  * Description : RAW file identification information container
8  * Note: this container permit to not expose the rest of
9  * digiKam code to libraw API and use Qt internal
10  * containers when possible.
11  *
12  * Copyright (C) 2007-2022 by Gilles Caulier <caulier dot gilles at gmail dot com>
13  *
14  * This program is free software; you can redistribute it
15  * and/or modify it under the terms of the GNU General
16  * Public License as published by the Free Software Foundation;
17  * either version 2, or (at your option)
18  * any later version.
19  *
20  * This program is distributed in the hope that it will be useful,
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23  * GNU General Public License for more details.
24  *
25  * ============================================================ */
26 
27 #ifndef DIGIKAM_DRAW_INFO_H
28 #define DIGIKAM_DRAW_INFO_H
29 
30 // Qt includes
31 
32 #include <QByteArray>
33 #include <QString>
34 #include <QDateTime>
35 #include <QSize>
36 #include <QDebug>
37 #include <QImage>
38 
39 // Local includes
40 
41 #include "digikam_export.h"
42 
43 namespace Digikam
44 {
45 
46 class DIGIKAM_EXPORT DRawInfo
47 {
48 
49 public:
50 
55  {
56  ORIENTATION_NONE = 0,
57  ORIENTATION_180 = 3,
58  ORIENTATION_Mirror90CCW = 4,
59  ORIENTATION_90CCW = 5,
60  ORIENTATION_90CW = 6
61  };
62 
63 public:
64 
68  explicit DRawInfo();
69 
73  ~DRawInfo();
74 
75 public:
76 
81 
86 
90  int rawColors;
91 
95  int rawImages;
96 
100  unsigned int blackPoint;
101 
105  unsigned int blackPointCh[4];
106 
110  unsigned int whitePoint;
111 
115  unsigned int topMargin;
116 
120  unsigned int leftMargin;
121 
126 
130  float sensitivity;
131 
136 
140  float aperture;
141 
145  float focalLength;
146 
151 
156 
161 
166 
171 
176 
181 
186 
191 
196 
201 
206 
210  double daylightMult[3];
211 
215  double cameraMult[4];
216 
220  float cameraColorMatrix1[3][4];
221  float cameraColorMatrix2[3][4];
222  float cameraXYZMatrix[4][3];
223 
227  double latitude;
228  double longitude;
229  double altitude;
230  bool hasGpsInfo;
231 
235  QString colorKeys;
236 
240  QString make;
241 
245  QString model;
246 
250  QString owner;
251 
255  QString software;
256 
260  QString firmware;
261 
265  QString description;
266 
270  unsigned int serialNumber;
271 
275  QString filterPattern;
276 
280  QString DNGVersion;
281 
286 
291 
295  QString imageID;
296 
301 
306 
310  QDateTime dateTime;
311 
315  QSize imageSize;
316 
320  QSize thumbSize;
321 
325  QSize fullSize;
326 
330  QSize outputSize;
331 
335  QByteArray xmpData;
336 
340  QByteArray iccData;
341 
345  QByteArray thumbnail;
346 
350  QString lensModel;
351  QString lensMake;
352  QString lensSerial;
354  float maxAperture;
355 };
356 
358 QDebug operator<<(QDebug dbg, const DRawInfo& c);
359 
360 } // namespace Digikam
361 
362 #endif // DIGIKAM_DRAW_INFO_H
Definition: drawinfo.h:47
QSize thumbSize
Definition: drawinfo.h:320
int focalLengthIn35mmFilm
Definition: drawinfo.h:353
QSize fullSize
Definition: drawinfo.h:325
float ambientAcceleration
Definition: drawinfo.h:180
int rawColors
Definition: drawinfo.h:90
QDateTime dateTime
Definition: drawinfo.h:310
QString firmware
Definition: drawinfo.h:260
bool isDecodable
Definition: drawinfo.h:85
QString uniqueCameraModel
Definition: drawinfo.h:285
QString owner
Definition: drawinfo.h:250
QString description
Definition: drawinfo.h:265
float ambientHumidity
Definition: drawinfo.h:165
unsigned int leftMargin
Definition: drawinfo.h:120
float ambientElevationAngle
Definition: drawinfo.h:185
float exposureIndex
Definition: drawinfo.h:205
int flashUsed
Definition: drawinfo.h:190
ImageOrientation
Definition: drawinfo.h:55
QSize imageSize
Definition: drawinfo.h:315
QString imageID
Definition: drawinfo.h:295
float exposureTime
Definition: drawinfo.h:135
QString localizedCameraModel
Definition: drawinfo.h:290
QString lensModel
Definition: drawinfo.h:350
unsigned int serialNumber
Definition: drawinfo.h:270
float ambientWaterDepth
Definition: drawinfo.h:175
QString filterPattern
Definition: drawinfo.h:275
QString DNGVersion
Definition: drawinfo.h:280
int rawImages
Definition: drawinfo.h:95
float focalLength
Definition: drawinfo.h:145
float baselineExposure
Definition: drawinfo.h:155
bool hasIccProfile
Definition: drawinfo.h:80
QString originalRawFileName
Definition: drawinfo.h:305
unsigned int whitePoint
Definition: drawinfo.h:110
double altitude
Definition: drawinfo.h:229
QString software
Definition: drawinfo.h:255
float ambientPressure
Definition: drawinfo.h:170
ImageOrientation orientation
Definition: drawinfo.h:125
bool hasGpsInfo
true if GPS info are parsed from RAW file.
Definition: drawinfo.h:230
QString lensMake
Definition: drawinfo.h:351
QString lensSerial
Definition: drawinfo.h:352
double longitude
Definition: drawinfo.h:228
float pixelAspectRatio
Definition: drawinfo.h:150
QByteArray thumbnail
Definition: drawinfo.h:345
QSize outputSize
Definition: drawinfo.h:330
double latitude
Definition: drawinfo.h:227
float sensitivity
Definition: drawinfo.h:130
unsigned int blackPoint
Definition: drawinfo.h:100
QByteArray iccData
Definition: drawinfo.h:340
float aperture
Definition: drawinfo.h:140
float ambientTemperature
Definition: drawinfo.h:160
QString rawDataUniqueID
Definition: drawinfo.h:300
unsigned int topMargin
Definition: drawinfo.h:115
int exposureProgram
Definition: drawinfo.h:200
QString colorKeys
Definition: drawinfo.h:235
int meteringMode
Definition: drawinfo.h:195
QByteArray xmpData
Definition: drawinfo.h:335
float maxAperture
Definition: drawinfo.h:354
QString make
Definition: drawinfo.h:240
QString model
Definition: drawinfo.h:245
Definition: datefolderview.cpp:43
QDebug operator<<(QDebug dbg, const DbEngineParameters &p)
Definition: dbengineparameters.cpp:863