|
RawSpeed
fast raw decoding library
|
#include "codes/AbstractPrefixCodeDecoder.h"
Public Types | |
| using | Base = AbstractPrefixCodeTranscoder<CodeTag> |
| using | Tag = typename Base::Tag |
| using | Parent = typename Base::Parent |
| using | CodeSymbol = typename Base::CodeSymbol |
| using | Traits = typename Base::Traits |
Public Member Functions | |
| template<typename BIT_STREAM, bool FULL_DECODE> | |
| int | processSymbol (BIT_STREAM &bs, CodeSymbol symbol, typename Traits::CodeValueTy codeValue) const |
| void | verifyCodeValuesAsDiffLengths () const |
| bool RAWSPEED_READONLY | isFullDecode () const |
| bool RAWSPEED_READONLY | handleDNGBug16 () const |
| bool | operator== (const AbstractPrefixCodeTranscoder &other) const |
Static Public Member Functions | |
| static int RAWSPEED_READNONE | extend (uint32_t diff, uint32_t len) |
Public Attributes | |
| PrefixCode< CodeTag > | code |
Protected Member Functions | |
| size_t RAWSPEED_READONLY | maxCodeLength () const |
| size_t RAWSPEED_READONLY | __attribute__ ((pure)) maxCodePlusDiffLength() const |
| void | setup (bool fullDecode_, bool fixDNGBug16_) |
Private Attributes | |
| bool | fullDecode = true |
| bool | fixDNGBug16 = false |
Definition at line 32 of file AbstractPrefixCodeDecoder.h.
| using rawspeed::AbstractPrefixCodeDecoder< CodeTag >::Base = AbstractPrefixCodeTranscoder<CodeTag> |
Definition at line 34 of file AbstractPrefixCodeDecoder.h.
| using rawspeed::AbstractPrefixCodeDecoder< CodeTag >::CodeSymbol = typename Base::CodeSymbol |
Definition at line 38 of file AbstractPrefixCodeDecoder.h.
| using rawspeed::AbstractPrefixCodeDecoder< CodeTag >::Parent = typename Base::Parent |
Definition at line 37 of file AbstractPrefixCodeDecoder.h.
| using rawspeed::AbstractPrefixCodeDecoder< CodeTag >::Tag = typename Base::Tag |
Definition at line 36 of file AbstractPrefixCodeDecoder.h.
| using rawspeed::AbstractPrefixCodeDecoder< CodeTag >::Traits = typename Base::Traits |
Definition at line 39 of file AbstractPrefixCodeDecoder.h.
|
inlinenodiscardprotectedinherited |
Definition at line 65 of file AbstractPrefixCodeTranscoder.h.
References code, and maxCodeLength().
|
inlinestatic |
Definition at line 70 of file AbstractPrefixCodeDecoder.h.
References invariant.
Referenced by rawspeed::CrwDecompressor::decodeBlock(), rawspeed::PanasonicV8Decompressor::InternalDecoder::decodeNextDiffValue(), rawspeed::KodakDecompressor::decodeSegment(), rawspeed::HasselbladDecompressor::getBits(), rawspeed::SonyArw1Decompressor::getDiff(), processSymbol(), rawspeed::SamsungV1Decompressor::samsungDiff(), rawspeed::PrefixCodeLUTDecoder< CodeTag, PrefixCodeLookupDecoder< CodeTag > >::setup(), and rawspeed_test::anonymous_namespace{HuffmanCodeTest.cpp}::TEST_P().
|
inlinenodiscardinherited |
Definition at line 90 of file AbstractPrefixCodeTranscoder.h.
References fixDNGBug16.
Referenced by rawspeed::PrefixCodeVectorEncoder< CodeTag >::encodeDifference(), rawspeed::AbstractPrefixCodeDecoder< CodeTag >::processSymbol(), and rawspeed::PrefixCodeLUTDecoder< CodeTag, PrefixCodeLookupDecoder< CodeTag > >::setup().
|
inlinenodiscardinherited |
Definition at line 87 of file AbstractPrefixCodeTranscoder.h.
References fullDecode.
Referenced by rawspeed::PrefixCodeLUTDecoder< CodeTag, PrefixCodeLookupDecoder< CodeTag > >::__attribute__(), rawspeed::PrefixCodeLUTDecoder< CodeTag, PrefixCodeLookupDecoder< CodeTag > >::__attribute__(), rawspeed::PrefixCodeLUTDecoder< CodeTag, PrefixCodeLookupDecoder< CodeTag > >::__attribute__(), rawspeed::PrefixCodeLookupDecoder< CodeTag >::decode(), rawspeed::PrefixCodeTreeDecoder< CodeTag >::decode(), rawspeed::PrefixCodeVectorDecoder< CodeTag >::decode(), rawspeed::PrefixCodeLookupDecoder< CodeTag >::decodeCodeValue(), rawspeed::PrefixCodeTreeDecoder< CodeTag >::decodeCodeValue(), rawspeed::PrefixCodeVectorDecoder< CodeTag >::decodeCodeValue(), rawspeed::PrefixCodeLookupDecoder< CodeTag >::decodeDifference(), rawspeed::PrefixCodeTreeDecoder< CodeTag >::decodeDifference(), rawspeed::PrefixCodeVectorDecoder< CodeTag >::decodeDifference(), rawspeed::PrefixCodeVectorEncoder< CodeTag >::encode(), rawspeed::PrefixCodeVectorEncoder< CodeTag >::encodeCodeValue(), rawspeed::PrefixCodeVectorEncoder< CodeTag >::encodeDifference(), and rawspeed::PrefixCodeLUTDecoder< CodeTag, PrefixCodeLookupDecoder< CodeTag > >::setup().
|
inlinenodiscardprotectedinherited |
Definition at line 61 of file AbstractPrefixCodeTranscoder.h.
References code.
Referenced by __attribute__(), rawspeed::PrefixCodeLookupDecoder< CodeTag >::finishReadingPartialSymbol(), rawspeed::PrefixCodeVectorDecoder< CodeTag >::finishReadingPartialSymbol(), and rawspeed::PrefixCodeLookupDecoder< CodeTag >::setup().
|
inlineinherited |
Definition at line 94 of file AbstractPrefixCodeTranscoder.h.
References AbstractPrefixCodeTranscoder(), and code.
|
inline |
Definition at line 44 of file AbstractPrefixCodeDecoder.h.
References extend(), rawspeed::AbstractPrefixCodeTranscoder< CodeTag >::handleDNGBug16(), and invariant.
Referenced by rawspeed::PrefixCodeLUTDecoder< CodeTag, PrefixCodeLookupDecoder< CodeTag > >::__attribute__(), rawspeed::PrefixCodeLookupDecoder< CodeTag >::decode(), rawspeed::PrefixCodeTreeDecoder< CodeTag >::decode(), and rawspeed::PrefixCodeVectorDecoder< CodeTag >::decode().
|
inlineprotectedinherited |
Definition at line 71 of file AbstractPrefixCodeTranscoder.h.
References fullDecode, invariant, and verifyCodeValuesAsDiffLengths().
Referenced by rawspeed::AbstractPrefixCodeEncoder< CodeTag >::setup(), rawspeed::PrefixCodeLookupDecoder< CodeTag >::setup(), rawspeed::PrefixCodeTreeDecoder< CodeTag >::setup(), and rawspeed::PrefixCodeVectorDecoder< CodeTag >::setup().
|
inlineinherited |
|
inherited |
Definition at line 45 of file AbstractPrefixCodeTranscoder.h.
Referenced by AbstractPrefixCodeTranscoder(), __attribute__(), rawspeed::PrefixCodeVectorEncoder< CodeTag >::encodeCodeValueImpl(), rawspeed::PrefixCodeLookupDecoder< CodeTag >::finishReadingPartialSymbol(), rawspeed::PrefixCodeVectorDecoder< CodeTag >::finishReadingPartialSymbol(), rawspeed::PrefixCodeVectorEncoder< CodeTag >::getCodeIndexOfCodeValue(), maxCodeLength(), operator==(), rawspeed::PrefixCodeLookupDecoder< CodeTag >::setup(), rawspeed::PrefixCodeLUTDecoder< CodeTag, PrefixCodeLookupDecoder< CodeTag > >::setup(), rawspeed::PrefixCodeTreeDecoder< CodeTag >::setup(), rawspeed::PrefixCodeVectorDecoder< CodeTag >::setup(), and verifyCodeValuesAsDiffLengths().
|
privateinherited |
Definition at line 37 of file AbstractPrefixCodeTranscoder.h.
Referenced by handleDNGBug16().
|
privateinherited |
Definition at line 36 of file AbstractPrefixCodeTranscoder.h.
Referenced by isFullDecode(), and setup().