| Exiv2

Loading...
Searching...
No Matches
jp2image_int.hpp
1// SPDX-License-Identifier: GPL-2.0-or-later
2
3#ifndef JP2IMAGE_INT_HPP
4#define JP2IMAGE_INT_HPP
5
6#include <cstdint>
7#include <vector>
8
9 namespace Exiv2::Internal {
10
11 struct Jp2BoxHeader {
12 uint32_t length;
13 uint32_t type;
14};
15
16 struct Jp2ImageHeaderBox {
17 uint32_t imageHeight;
18 uint32_t imageWidth;
19 uint16_t componentCount;
20 uint8_t bpc;
21 uint8_t c;
22 uint8_t unkC;
23 uint8_t ipr;
24};
25
26 struct Jp2UuidBox {
27 uint8_t uuid[16];
28};
29
30 constexpr uint32_t brandJp2{0x6a703220};
31
33 bool isValidBoxFileType(const std::vector<std::uint8_t>& boxData);
34} // namespace Exiv2::Internal
35
36#endif // JP2IMAGE_INT_HPP
Exiv2::Internal
Helper structure for the Matroska tags lookup table.
Definition matroskavideo.hpp:39
Exiv2::Internal::Jp2BoxHeader
Definition jp2image_int.hpp:11
Exiv2::Internal::Jp2ImageHeaderBox
Definition jp2image_int.hpp:16
Exiv2::Internal::Jp2ImageHeaderBox::c
uint8_t c
Compression type.
Definition jp2image_int.hpp:21
Exiv2::Internal::Jp2ImageHeaderBox::ipr
uint8_t ipr
Intellectual property.
Definition jp2image_int.hpp:23
Exiv2::Internal::Jp2ImageHeaderBox::unkC
uint8_t unkC
Colourspace unknown.
Definition jp2image_int.hpp:22
Exiv2::Internal::Jp2ImageHeaderBox::bpc
uint8_t bpc
Bits per component.
Definition jp2image_int.hpp:20
Exiv2::Internal::Jp2UuidBox
Definition jp2image_int.hpp:26