1 // ***************************************************************** -*- C++ -*-
2 /*
3  * Copyright (C) 2004-2021 Exiv2 authors
4  * This program is part of the Exiv2 distribution.
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version 2
9  * of the License, or (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA.
19  */
20 /*!
21   @file    easyaccess.hpp
22   @brief   Provides easy (high-level) access to some Exif meta data.
23   @author  Carsten Pfeiffer <pfeiffer@kde.org>
24   @date    28-Feb-09, gis: created
25  */
26 #ifndef EASYACCESS_HPP_
27 #define EASYACCESS_HPP_
28 
29 // *****************************************************************************
30 #include "exiv2lib_export.h"
31 
32 // included header files
33 #include "exif.hpp"
34 
35 namespace Exiv2 {
36 
37 // *****************************************************************************
38 // class declarations
39     class ExifData;
40 
41     //! Return the orientation of the image
42     EXIV2API ExifData::const_iterator orientation(const ExifData& ed);
43     //! Return the ISO speed used to shoot the image
44     EXIV2API ExifData::const_iterator isoSpeed(const ExifData& ed);
45     //! Return the date and time when the original image data was generated
46     EXIV2API ExifData::const_iterator dateTimeOriginal(const ExifData& ed);
47     //! Return the flash bias value
48     EXIV2API ExifData::const_iterator flashBias(const ExifData& ed);
49     //! Return the exposure mode setting
50     EXIV2API ExifData::const_iterator exposureMode(const ExifData& ed);
51     //! Return the scene mode setting
52     EXIV2API ExifData::const_iterator sceneMode(const ExifData& ed);
53     //! Return the macro mode setting
54     EXIV2API ExifData::const_iterator macroMode(const ExifData& ed);
55     //! Return the image quality setting
56     EXIV2API ExifData::const_iterator imageQuality(const ExifData& ed);
57     //! Return the white balance setting
58     EXIV2API ExifData::const_iterator whiteBalance(const ExifData& ed);
59     //! Return the name of the lens used
60     EXIV2API ExifData::const_iterator lensName(const ExifData& ed);
61     //! Return the saturation level
62     EXIV2API ExifData::const_iterator saturation(const ExifData& ed);
63     //! Return the sharpness level
64     EXIV2API ExifData::const_iterator sharpness(const ExifData& ed);
65     //! Return the contrast level
66     EXIV2API ExifData::const_iterator contrast(const ExifData& ed);
67     //! Return the scene capture type
68     EXIV2API ExifData::const_iterator sceneCaptureType(const ExifData& ed);
69     //! Return the metering mode setting
70     EXIV2API ExifData::const_iterator meteringMode(const ExifData& ed);
71     //! Return the camera make
72     EXIV2API ExifData::const_iterator make(const ExifData& ed);
73     //! Return the camera model
74     EXIV2API ExifData::const_iterator model(const ExifData& ed);
75     //! Return the exposure time
76     EXIV2API ExifData::const_iterator exposureTime(const ExifData& ed);
77     //! Return the F number
78     EXIV2API ExifData::const_iterator fNumber(const ExifData& ed);
79     //! Return the shutter speed value
80     EXIV2API ExifData::const_iterator shutterSpeedValue(const ExifData& ed);
81     //! Return the aperture value
82     EXIV2API ExifData::const_iterator apertureValue(const ExifData& ed);
83     //! Return the brightness value
84     EXIV2API ExifData::const_iterator brightnessValue(const ExifData& ed);
85     //! Return the exposure bias value
86     EXIV2API ExifData::const_iterator exposureBiasValue(const ExifData& ed);
87     //! Return the max aperture value
88     EXIV2API ExifData::const_iterator maxApertureValue(const ExifData& ed);
89     //! Return the subject distance
90     EXIV2API ExifData::const_iterator subjectDistance(const ExifData& ed);
91     //! Return the kind of light source
92     EXIV2API ExifData::const_iterator lightSource(const ExifData& ed);
93     //! Return the status of flash
94     EXIV2API ExifData::const_iterator flash(const ExifData& ed);
95     //! Return the camera serial number
96     EXIV2API ExifData::const_iterator serialNumber(const ExifData& ed);
97     //! Return the focal length setting
98     EXIV2API ExifData::const_iterator focalLength(const ExifData& ed);
99     //! Return the subject location and area
100     EXIV2API ExifData::const_iterator subjectArea(const ExifData& ed);
101     //! Return the flash energy
102     EXIV2API ExifData::const_iterator flashEnergy(const ExifData& ed);
103     //! Return the exposure index
104     EXIV2API ExifData::const_iterator exposureIndex(const ExifData& ed);
105     //! Return the image sensor type
106     EXIV2API ExifData::const_iterator sensingMethod(const ExifData& ed);
107     //! Return the AF point
108     EXIV2API ExifData::const_iterator afPoint(const ExifData& ed);
109 
110 } // namespace Exiv2
111 
112 #endif // EASYACCESS_HPP_
113