Exiv2
Loading...
Searching...
No Matches
tifffwd_int.hpp
1// SPDX-License-Identifier: GPL-2.0-or-later
2
3#ifndef TIFFFWD_INT_HPP_
4#define TIFFFWD_INT_HPP_
5
6// *****************************************************************************
7// included header files
8#include "tags_int.hpp"
9#include "types.hpp"
10
11// + standard includes
12#include <stack>
13
14// *****************************************************************************
15// Exiv2 namespace extensions
16namespace Exiv2 {
17class Exifdatum;
18
19namespace Internal {
20class TiffHeaderBase;
21class TiffComponent;
22class TiffEntryBase;
23class TiffEntry;
24class TiffDataEntry;
25class TiffSizeEntry;
26class TiffDirectory;
27class TiffSubIfd;
28class TiffMnEntry;
29class TiffBinaryArray;
30class TiffBinaryElement;
31
32class TiffIfdMakernote;
33class MnHeader;
34
35class TiffVisitor;
36class TiffFinder;
37class TiffDecoder;
38class TiffEncoder;
39class TiffReader;
40
41class TiffRwState;
42class TiffPathItem;
43struct TiffMappingInfo;
44
45class IoWrapper;
46class OffsetWriter;
47
48// *****************************************************************************
49// type definitions
50
55using DecoderFct = void (TiffDecoder::*)(const TiffEntryBase*);
60using EncoderFct = void (TiffEncoder::*)(TiffEntryBase*, const Exifdatum*);
64using FindDecoderFct = DecoderFct (*)(const std::string& make, uint32_t extendedTag, IfdId group);
68using FindEncoderFct = EncoderFct (*)(const std::string& make, uint32_t extendedTag, IfdId group);
74using NewTiffCompFct = std::unique_ptr<TiffComponent> (*)(uint16_t tag, IfdId group);
75
77using TiffPath = std::stack<TiffPathItem>;
78
80using PrimaryGroups = std::vector<IfdId>;
81} // namespace Internal
82} // namespace Exiv2
83
84#endif // #ifndef TIFFFWD_INT_HPP_
An Exif metadatum, consisting of an ExifKey and a Value and methods to manipulate these.
Definition exif.hpp:41
TIFF composite visitor to decode metadata from the TIFF tree and add it to an Image,...
Definition tiffvisitor_int.hpp:251
TIFF composite visitor to encode metadata from an image to the TIFF tree. The metadata containers and...
Definition tiffvisitor_int.hpp:343
This abstract base class provides the common functionality of an IFD directory entry and defines an e...
Definition tiffcomposite_int.hpp:380
EncoderFct(*)(const std::string &make, uint32_t extendedTag, IfdId group) FindEncoderFct
Type for a function pointer for a function to encode a TIFF component.
Definition tifffwd_int.hpp:68
void(TiffEncoder::*)(TiffEntryBase *, const Exifdatum *) EncoderFct
Function pointer type for a TiffDecoder member function to decode a TIFF component.
Definition tifffwd_int.hpp:60
DecoderFct(*)(const std::string &make, uint32_t extendedTag, IfdId group) FindDecoderFct
Type for a function pointer for a function to decode a TIFF component.
Definition tifffwd_int.hpp:64
std::stack< TiffPathItem > TiffPath
Stack to hold a path from the TIFF root element to a TIFF entry.
Definition tifffwd_int.hpp:77
std::vector< IfdId > PrimaryGroups
Type for a list of primary image groups.
Definition tifffwd_int.hpp:80
void(TiffDecoder::*)(const TiffEntryBase *) DecoderFct
Function pointer type for a TiffDecoder member function to decode a TIFF component.
Definition tifffwd_int.hpp:55
std::unique_ptr< TiffComponent >(*)(uint16_t tag, IfdId group) NewTiffCompFct
Type for a function pointer for a function to create a TIFF component. Use TiffComponent::UniquePtr,...
Definition tifffwd_int.hpp:74
Class CrwImage to access Canon CRW images. References: The Canon RAW (CRW) File Format by Phil Harv...
Definition asfvideo.hpp:15
IfdId
Type to specify the IFD to which a metadata belongs.
Definition tags.hpp:34
EXIV2API ExifData::const_iterator make(const ExifData &ed)
Return the camera make. Please keep in mind that this accessor is provided for convenience only and w...
Definition easyaccess.cpp:333