RawSpeed
fast raw decoding library
Loading...
Searching...
No Matches
rawspeed::BitStreamCacheRightInLeftOut Struct Referencefinal

#include "bitstreams/BitStream.h"

Inheritance diagram for rawspeed::BitStreamCacheRightInLeftOut:
[legend]
Collaboration diagram for rawspeed::BitStreamCacheRightInLeftOut:
[legend]

Public Member Functions

void push (uint64_t bits, int count) noexcept
auto peek (int count) const noexcept
void skip (int count) noexcept
void establishClassInvariants () const noexcept

Public Attributes

uint64_t cache = 0
int fillLevel = 0

Static Public Attributes

static constexpr int Size = bitwidth<decltype(cache)>()
static constexpr int MaxGetBits = bitwidth<uint32_t>()

Detailed Description

Definition at line 92 of file BitStream.h.

Member Function Documentation

◆ establishClassInvariants()

void rawspeed::BitStreamCacheBase::establishClassInvariants ( ) const
noexceptinherited

References rawspeed::__attribute__(), establishClassInvariants(), fillLevel, invariant, and Size.

Referenced by establishClassInvariants(), rawspeed::BitStreamCacheRightInLeftOut::peek(), rawspeed::BitStreamCacheRightInLeftOut::push(), and rawspeed::BitStreamCacheRightInLeftOut::skip().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ peek()

auto rawspeed::BitStreamCacheRightInLeftOut::peek ( int count) const
inlinenodiscardnoexcept

Definition at line 119 of file BitStream.h.

References rawspeed::BitStreamCacheBase::cache, rawspeed::BitStreamCacheBase::establishClassInvariants(), rawspeed::extractHighBits(), rawspeed::BitStreamCacheBase::fillLevel, implicit_cast(), invariant, rawspeed::BitStreamCacheBase::MaxGetBits, and rawspeed::BitStreamCacheBase::Size.

Here is the call graph for this function:

◆ push()

void rawspeed::BitStreamCacheRightInLeftOut::push ( uint64_t bits,
int count )
inlinenoexcept

Definition at line 93 of file BitStream.h.

References rawspeed::BitStreamCacheBase::cache, rawspeed::BitStreamCacheBase::establishClassInvariants(), rawspeed::BitStreamCacheBase::fillLevel, invariant, and rawspeed::BitStreamCacheBase::Size.

Here is the call graph for this function:

◆ skip()

void rawspeed::BitStreamCacheRightInLeftOut::skip ( int count)
inlinenoexcept

Definition at line 131 of file BitStream.h.

References rawspeed::BitStreamCacheBase::cache, rawspeed::BitStreamCacheBase::establishClassInvariants(), rawspeed::BitStreamCacheBase::fillLevel, invariant, and rawspeed::BitStreamCacheBase::Size.

Here is the call graph for this function:

Member Data Documentation

◆ cache

uint64_t rawspeed::BitStreamCacheBase::cache = 0
inherited

◆ fillLevel

◆ MaxGetBits

int rawspeed::BitStreamCacheBase::MaxGetBits = bitwidth<uint32_t>()
staticconstexprinherited

◆ Size

int rawspeed::BitStreamCacheBase::Size = bitwidth<decltype(cache)>()
staticconstexprinherited

The documentation for this struct was generated from the following file: