Exiv2
orfimage_int.hpp
Go to the documentation of this file.
1// ***************************************************************** -*- C++ -*-
2/*
3 * Copyright (C) 2004-2018 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 */
28#ifndef ORFIMAGE_INT_HPP_
29#define ORFIMAGE_INT_HPP_
30
31// *****************************************************************************
32// included header files
33#include "tiffimage_int.hpp"
34#include "types.hpp"
35
36// *****************************************************************************
37// namespace extensions
38namespace Exiv2 {
39 namespace Internal {
40
41// *****************************************************************************
42// class definitions
43
47 class OrfHeader : public TiffHeaderBase {
48 public:
50
51
52 explicit OrfHeader(ByteOrder byteOrder =littleEndian);
54 ~OrfHeader();
56
58
59 bool read(const byte* pData, uint32_t size);
61
63
64 DataBuf write() const;
66 private:
67 // DATA
68 uint16_t sig_; //<! The actual magic number
69 }; // class OrfHeader
70
71}} // namespace Internal, Exiv2
72
73#endif // #ifndef ORFIMAGE_INT_HPP_
Utility class containing a character array. All it does is to take care of memory allocation and dele...
Definition: types.hpp:204
Olympus ORF header structure.
Definition: orfimage_int.hpp:47
bool read(const byte *pData, uint32_t size)
Read the image header from a data buffer. Return false if the data buffer does not contain an image h...
Definition: orfimage_int.cpp:16
DataBuf write() const
Return the image header in binary format. The caller owns this data and DataBuf ensures that it will ...
Definition: orfimage_int.cpp:37
~OrfHeader()
Destructor.
Definition: orfimage_int.cpp:12
OrfHeader(ByteOrder byteOrder=littleEndian)
Default constructor.
Definition: orfimage_int.cpp:6
Abstract base class defining the interface of an image header. Used internally by classes for TIFF-ba...
Definition: tiffimage_int.hpp:59
virtual uint32_t size() const
Return the size (in bytes) of the image header.
Definition: tiffimage_int.cpp:1856
virtual ByteOrder byteOrder() const
Return the byte order (little or big endian).
Definition: tiffimage_int.cpp:1836
Provides classes and functions to encode and decode Exif and Iptc data. The libexiv2 API consists of ...
Definition: asfvideo.hpp:36
ByteOrder
Type to express the byte order (little or big endian)
Definition: types.hpp:113
Internal class TiffParserWorker to parse TIFF data.
Type definitions for Exiv2 and related functionality.