Exiv2
panasonicmn_int.hpp
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#ifndef PANASONICMN_INT_HPP_
21#define PANASONICMN_INT_HPP_
22
23// *****************************************************************************
24// included header files
25#include "tags.hpp"
26#include "types.hpp"
27
28// + standard includes
29#include <string>
30#include <iosfwd>
31
32// *****************************************************************************
33// namespace extensions
34namespace Exiv2 {
35 namespace Internal {
36
37// *****************************************************************************
38// class definitions
39
42 public:
44 static const TagInfo* tagList();
46 static const TagInfo* tagListRaw();
47
49
50
51 static std::ostream& print0x000f(std::ostream& os, const Value& value, const ExifData*);
53 static std::ostream& print0x0023(std::ostream& os, const Value& value, const ExifData*);
55 static std::ostream& print0x0029(std::ostream& os, const Value& value, const ExifData*);
57 static std::ostream& print0x0033(std::ostream& os, const Value& value, const ExifData*);
59 static std::ostream& print0x0036(std::ostream& os, const Value& value, const ExifData*);
61 static std::ostream& print0x003c(std::ostream& os, const Value& value, const ExifData*);
63 static std::ostream& printPressure(std::ostream& os, const Value& value, const ExifData*);
65 static std::ostream& printPanasonicText(std::ostream& os, const Value& value, const ExifData*);
67 static std::ostream& printAccelerometer(std::ostream& os, const Value& value, const ExifData*);
69 static std::ostream& printRollAngle(std::ostream& os, const Value& value, const ExifData*);
71 static std::ostream& printPitchAngle(std::ostream& os, const Value& value, const ExifData*);
73
74 private:
76 static const TagInfo tagInfo_[];
78 static const TagInfo tagInfoRaw_[];
79
80 }; // class PanasonicMakerNote
81
82}} // namespace Internal, Exiv2
83
84#endif // #ifndef PANASONICMN_INT_HPP_
A container for Exif data. This is a top-level class of the Exiv2 library. The container holds Exifda...
Definition: exif.hpp:434
MakerNote for Panasonic cameras.
Definition: panasonicmn_int.hpp:41
static std::ostream & print0x0023(std::ostream &os, const Value &value, const ExifData *)
Print WhiteBalanceBias.
Definition: panasonicmn_int.cpp:570
static std::ostream & print0x0033(std::ostream &os, const Value &value, const ExifData *)
Print Baby age.
Definition: panasonicmn_int.cpp:605
static const TagInfo * tagListRaw()
Return read-only list of built-in Panasonic RAW image tags (IFD0)
Definition: panasonicmn_int.cpp:757
static const TagInfo * tagList()
Return read-only list of built-in Panasonic tags.
Definition: panasonicmn_int.cpp:534
static std::ostream & printPitchAngle(std::ostream &os, const Value &value, const ExifData *)
Print pitch angle.
Definition: panasonicmn_int.cpp:714
static std::ostream & print0x0036(std::ostream &os, const Value &value, const ExifData *)
Print Travel days.
Definition: panasonicmn_int.cpp:621
static std::ostream & print0x003c(std::ostream &os, const Value &value, const ExifData *)
Print ISO.
Definition: panasonicmn_int.cpp:637
static std::ostream & printPressure(std::ostream &os, const Value &value, const ExifData *)
Print Manometer Pressure.
Definition: panasonicmn_int.cpp:679
static std::ostream & print0x000f(std::ostream &os, const Value &value, const ExifData *)
Print SpotMode.
Definition: panasonicmn_int.cpp:540
static std::ostream & printAccelerometer(std::ostream &os, const Value &value, const ExifData *)
Print accerometer readings.
Definition: panasonicmn_int.cpp:693
static std::ostream & print0x0029(std::ostream &os, const Value &value, const ExifData *)
Print TimeSincePowerOn.
Definition: panasonicmn_int.cpp:587
static std::ostream & printRollAngle(std::ostream &os, const Value &value, const ExifData *)
Print roll angle.
Definition: panasonicmn_int.cpp:701
static std::ostream & printPanasonicText(std::ostream &os, const Value &value, const ExifData *)
Print special text values: title, landmark, county and so on.
Definition: panasonicmn_int.cpp:656
Common interface for all types of values used with metadata.
Definition: value.hpp:51
Provides classes and functions to encode and decode Exif and Iptc data. The libexiv2 API consists of ...
Definition: asfvideo.hpp:36
Tag information.
Definition: tags.hpp:74