Exiv2
orfimage_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 ORFIMAGE_INT_HPP_
21#define ORFIMAGE_INT_HPP_
22
23// *****************************************************************************
24// included header files
25#include "tiffimage_int.hpp"
26#include "types.hpp"
27
28// *****************************************************************************
29// namespace extensions
30namespace Exiv2 {
31 namespace Internal {
32
33// *****************************************************************************
34// class definitions
35
39 class OrfHeader : public TiffHeaderBase {
40 public:
42
43
44 explicit OrfHeader(ByteOrder byteOrder =littleEndian);
46 ~OrfHeader();
48
50
51 bool read(const byte* pData, uint32_t size);
53
55
56 DataBuf write() const;
58 private:
59 // DATA
60 uint16_t sig_; //<! The actual magic number
61 }; // class OrfHeader
62
63}} // namespace Internal, Exiv2
64
65#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:193
Olympus ORF header structure.
Definition: orfimage_int.hpp:39
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:36
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:57
~OrfHeader()
Destructor.
Definition: orfimage_int.cpp:32
OrfHeader(ByteOrder byteOrder=littleEndian)
Default constructor.
Definition: orfimage_int.cpp:26
Abstract base class defining the interface of an image header. Used internally by classes for TIFF-ba...
Definition: tiffimage_int.hpp:52
virtual uint32_t size() const
Return the size (in bytes) of the image header.
Definition: tiffimage_int.cpp:1976
virtual ByteOrder byteOrder() const
Return the byte order (little or big endian).
Definition: tiffimage_int.cpp:1956
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:102