|
RawSpeed
fast raw decoding library
|
#include "bitstreams/BitStreamer.h"
Public Types | |
| using | size_type = int32_t |
| using | Traits = BitStreamerTraits<Derived> |
| using | StreamTraits = BitStreamTraits<Traits::Tag> |
| using | Cache = typename StreamTraits::StreamFlow |
Public Member Functions | |
| void | establishClassInvariants () const noexcept |
| BitStreamer ()=delete | |
| BitStreamer (Array1DRef< const std::byte > input) | |
| void | reload () |
| void | fill (int nbits=Cache::MaxGetBits) |
| size_type RAWSPEED_READONLY | getInputPosition () const |
| size_type | getStreamPosition () const |
| size_type | getRemainingSize () const |
| size_type RAWSPEED_READONLY | getFillLevel () const |
| uint32_t RAWSPEED_READONLY | peekBitsNoFill (int nbits) |
| void | skipBitsNoFill (int nbits) |
| uint32_t | getBitsNoFill (int nbits) |
| uint32_t | peekBits (int nbits) |
| void | skipBits (int nbits) |
| uint32_t | getBits (int nbits) |
| void | skipManyBits (int nbits) |
| void | skipBytes (int nbytes) |
Protected Attributes | |
| Cache | cache |
Private Member Functions | |
| size_type | fillCache (std::array< std::byte, BitStreamerTraits< Derived >::MaxProcessBytes > inputStorage) |
Private Attributes | |
| Replenisher | replenisher |
Definition at line 138 of file BitStreamer.h.
| using rawspeed::BitStreamer< Tag >::Cache = typename StreamTraits::StreamFlow |
Definition at line 144 of file BitStreamer.h.
| using rawspeed::BitStreamer< Tag >::size_type = int32_t |
Definition at line 140 of file BitStreamer.h.
| using rawspeed::BitStreamer< Tag >::StreamTraits = BitStreamTraits<Traits::Tag> |
Definition at line 142 of file BitStreamer.h.
| using rawspeed::BitStreamer< Tag >::Traits = BitStreamerTraits<Derived> |
Definition at line 141 of file BitStreamer.h.
|
delete |
Referenced by rawspeed::BitStreamer< BitStreamerJPEG >::reload().
|
inlineexplicit |
Definition at line 192 of file BitStreamer.h.
|
inlinenoexcept |
Definition at line 185 of file BitStreamer.h.
Referenced by rawspeed::BitStreamer< BitStreamerJPEG >::BitStreamer(), rawspeed::BitStreamer< BitStreamerJPEG >::fill(), rawspeed::BitStreamer< BitStreamerJPEG >::fillCache(), rawspeed::BitStreamer< BitStreamerJPEG >::getBits(), rawspeed::BitStreamer< BitStreamerJPEG >::getBitsNoFill(), rawspeed::BitStreamer< BitStreamerJPEG >::getFillLevel(), rawspeed::BitStreamer< BitStreamerJPEG >::getInputPosition(), rawspeed::BitStreamer< BitStreamerJPEG >::getRemainingSize(), rawspeed::BitStreamer< BitStreamerJPEG >::getStreamPosition(), rawspeed::BitStreamer< BitStreamerJPEG >::peekBits(), rawspeed::BitStreamer< BitStreamerJPEG >::peekBitsNoFill(), rawspeed::BitStreamer< BitStreamerJPEG >::reload(), rawspeed::BitStreamer< BitStreamerJPEG >::skipBits(), rawspeed::BitStreamer< BitStreamerJPEG >::skipBitsNoFill(), rawspeed::BitStreamer< BitStreamerJPEG >::skipBytes(), and rawspeed::BitStreamer< BitStreamerJPEG >::skipManyBits().
|
inline |
Definition at line 216 of file BitStreamer.h.
Referenced by rawspeed::anonymous_namespace{OlympusDecompressor.cpp}::__attribute__(), rawspeed::CrwDecompressor::decodeBlock(), rawspeed::anonymous_namespace{NikonDecompressor.cpp}::NikonLASDecompressor::decodeDifference(), rawspeed::SonyArw1Decompressor::decompress(), rawspeed::PhaseOneDecompressor::decompressStrip(), rawspeed::SamsungV0Decompressor::decompressStrip(), rawspeed::BitStreamer< BitStreamerJPEG >::getBits(), rawspeed::BitStreamer< BitStreamerJPEG >::peekBits(), rawspeed::PanasonicV5Decompressor::processPixelPacket(), rawspeed::SamsungV1Decompressor::samsungDiff(), rawspeed::BitStreamer< BitStreamerJPEG >::skipBits(), and rawspeed::BitStreamer< BitStreamerJPEG >::skipManyBits().
|
inlineprivate |
Definition at line 156 of file BitStreamer.h.
Referenced by rawspeed::BitStreamer< BitStreamerJPEG >::fill().
|
inline |
Definition at line 294 of file BitStreamer.h.
Referenced by rawspeed::SamsungV2Decompressor::SamsungV2Decompressor(), rawspeed::__attribute__(), rawspeed::SamsungV0Decompressor::calcAdj(), rawspeed::VC5Decompressor::Wavelet::LowPassBand::decode(), rawspeed::anonymous_namespace{NikonDecompressor.cpp}::NikonLASDecompressor::decodeDifference(), rawspeed::OrfDecoder::decodeUncompressedInterleaved(), rawspeed::SonyArw2Decompressor::decompressRow(), rawspeed::SamsungV0Decompressor::decompressStrip(), rawspeed::HasselbladDecompressor::getBits(), and rawspeed::NefDecoder::readCoolpixSplitRaw().
|
inline |
Definition at line 269 of file BitStreamer.h.
Referenced by rawspeed::anonymous_namespace{OlympusDecompressor.cpp}::__attribute__(), rawspeed::CrwDecompressor::decodeBlock(), rawspeed::anonymous_namespace{NikonDecompressor.cpp}::NikonLASDecompressor::decodeDifference(), rawspeed::SonyArw1Decompressor::decompress(), rawspeed::PhaseOneDecompressor::decompressStrip(), rawspeed::SamsungV0Decompressor::decompressStrip(), rawspeed::BitStreamer< BitStreamerJPEG >::getBits(), rawspeed::SonyArw1Decompressor::getDiff(), rawspeed::VC5Decompressor::getRLV(), rawspeed::PanasonicV5Decompressor::processPixelPacket(), and rawspeed::SamsungV1Decompressor::samsungDiff().
|
inlinenodiscard |
Definition at line 248 of file BitStreamer.h.
Referenced by rawspeed::PanasonicV5Decompressor::processPixelPacket(), and rawspeed::BitStreamer< BitStreamerJPEG >::reload().
|
inlinenodiscard |
Definition at line 232 of file BitStreamer.h.
Referenced by rawspeed::SamsungV2Decompressor::SamsungV2Decompressor(), rawspeed::BitStreamer< BitStreamerJPEG >::getStreamPosition(), and rawspeed::BitStreamer< BitStreamerJPEG >::reload().
|
inlinenodiscard |
Definition at line 243 of file BitStreamer.h.
Referenced by rawspeed::SamsungV2Decompressor::SamsungV2Decompressor(), and rawspeed::NefDecoder::readCoolpixSplitRaw().
|
inlinenodiscard |
Definition at line 238 of file BitStreamer.h.
Referenced by rawspeed::HasselbladDecompressor::decompress(), and rawspeed::SamsungV2Decompressor::decompressRow().
|
inline |
Definition at line 279 of file BitStreamer.h.
Referenced by rawspeed::NikonDecompressor::decompress(), and rawspeed::SonyArw2Decompressor::decompressRow().
|
inline |
Definition at line 253 of file BitStreamer.h.
Referenced by rawspeed::anonymous_namespace{OlympusDecompressor.cpp}::__attribute__(), rawspeed::anonymous_namespace{NikonDecompressor.cpp}::NikonLASDecompressor::decodeDifference(), rawspeed::BitStreamer< BitStreamerJPEG >::getBitsNoFill(), rawspeed::BitStreamer< BitStreamerJPEG >::peekBits(), and rawspeed::SamsungV1Decompressor::samsungDiff().
|
inline |
Definition at line 196 of file BitStreamer.h.
|
inline |
Definition at line 288 of file BitStreamer.h.
|
inline |
Definition at line 261 of file BitStreamer.h.
Referenced by rawspeed::anonymous_namespace{OlympusDecompressor.cpp}::__attribute__(), rawspeed::anonymous_namespace{NikonDecompressor.cpp}::NikonLASDecompressor::decodeDifference(), rawspeed::BitStreamer< BitStreamerJPEG >::getBitsNoFill(), rawspeed::PanasonicV5Decompressor::processPixelPacket(), rawspeed::SamsungV1Decompressor::samsungDiff(), rawspeed::BitStreamer< BitStreamerJPEG >::skipBits(), and rawspeed::BitStreamer< BitStreamerJPEG >::skipManyBits().
|
inline |
Definition at line 321 of file BitStreamer.h.
|
inline |
Definition at line 305 of file BitStreamer.h.
Referenced by rawspeed::BitStreamer< BitStreamerJPEG >::skipBytes().
|
protected |
Definition at line 147 of file BitStreamer.h.
|
private |
Definition at line 150 of file BitStreamer.h.