|
RawSpeed
fast raw decoding library
|
#include "decompressors/NikonDecompressor.h"
Public Member Functions | |
| NikonDecompressor (RawImage raw, ByteStream metadata, uint32_t bitsPS) | |
| void | decompress (Array1DRef< const uint8_t > input, bool uncorrectedRawValues) |
Private Member Functions | |
| template<typename Huffman> | |
| void | decompress (BitStreamerMSB &bits, int start_y, int end_y) |
Static Private Member Functions | |
| static std::vector< uint16_t > | createCurve (ByteStream &metadata, uint32_t bitsPS, uint32_t v0, uint32_t v1, uint32_t *split) |
| template<typename Huffman> | |
| static Huffman | createPrefixCodeDecoder (uint32_t huffSelect) |
| template<> | |
| PrefixCodeDecoder | createPrefixCodeDecoder (uint32_t huffSelect) |
| template<> | |
| PrefixCodeDecoder | createPrefixCodeDecoder (uint32_t huffSelect) |
Private Attributes | |
| RawImage | mRaw |
| uint32_t | bitsPS |
| uint32_t | huffSelect = 0 |
| uint32_t | split = 0 |
| std::array< std::array< int, 2 >, 2 > | pUp |
| std::vector< uint16_t > | curve |
| uint32_t | random |
Static Private Attributes | |
| static const std::array< std::array< std::array< uint8_t, 16 >, 2 >, 6 > | nikon_tree |
Definition at line 38 of file NikonDecompressor.h.
| rawspeed::NikonDecompressor::NikonDecompressor | ( | RawImage | raw, |
| ByteStream | metadata, | ||
| uint32_t | bitsPS ) |
Definition at line 473 of file NikonDecompressor.cpp.
References bitsPS, createCurve(), curve, rawspeed::EXTRA, huffSelect, metadata, mRaw, pUp, split, ThrowRDE, rawspeed::UINT16, and rawspeed::writeLog().
Referenced by createPrefixCodeDecoder().
|
staticprivate |
Definition at line 381 of file NikonDecompressor.cpp.
References assert(), bitsPS, curve, rawspeed::implicit_cast(), metadata, split, and ThrowRDE.
Referenced by NikonDecompressor().
|
staticprivate |
Definition at line 448 of file NikonDecompressor.cpp.
|
staticprivate |
Definition at line 448 of file NikonDecompressor.cpp.
References huffSelect, and nikon_tree.
Referenced by decompress().
|
staticprivate |
| void rawspeed::NikonDecompressor::decompress | ( | Array1DRef< const uint8_t > | input, |
| bool | uncorrectedRawValues ) |
Definition at line 543 of file NikonDecompressor.cpp.
References curve, decompress(), huffSelect, invariant, mRaw, rawspeed::BitStreamer< Tag >::peekBits(), random, and split.
Referenced by rawspeed::NefDecoder::decodeRawInternal(), decompress(), and LLVMFuzzerTestOneInput().
|
private |
Definition at line 519 of file NikonDecompressor.cpp.
References rawspeed::clampBits(), createPrefixCodeDecoder(), huffSelect, invariant, mRaw, pUp, random, and rawspeed::Array2DRef< T >::width().
|
private |
Definition at line 40 of file NikonDecompressor.h.
Referenced by NikonDecompressor(), and createCurve().
|
private |
Definition at line 47 of file NikonDecompressor.h.
Referenced by NikonDecompressor(), createCurve(), and decompress().
|
private |
Definition at line 42 of file NikonDecompressor.h.
Referenced by NikonDecompressor(), createPrefixCodeDecoder(), decompress(), and decompress().
|
private |
Definition at line 39 of file NikonDecompressor.h.
Referenced by NikonDecompressor(), decompress(), and decompress().
|
staticprivate |
Definition at line 57 of file NikonDecompressor.h.
Referenced by createPrefixCodeDecoder().
|
private |
Definition at line 45 of file NikonDecompressor.h.
Referenced by NikonDecompressor(), and decompress().
|
private |
Definition at line 49 of file NikonDecompressor.h.
Referenced by decompress(), and decompress().
|
private |
Definition at line 43 of file NikonDecompressor.h.
Referenced by NikonDecompressor(), createCurve(), and decompress().