RawSpeed
fast raw decoding library
Loading...
Searching...
No Matches
rawspeed::BitMSBIterator< T > Struct Template Referencefinal

#include "adt/BitIterator.h"

Collaboration diagram for rawspeed::BitMSBIterator< T >:
[legend]

Public Types

using iterator_category = std::input_iterator_tag
using difference_type = std::ptrdiff_t
using value_type = bool
using pointer = const value_type*
using reference = const value_type&

Public Member Functions

 BitMSBIterator (T bitsPat_, int bitIdx_)
value_type operator* () const
BitMSBIteratoroperator++ ()

Public Attributes

T bitsPat
int bitIdx

Friends

bool operator== (const BitMSBIterator &a, const BitMSBIterator &b)

Detailed Description

template<typename T>
requires std::is_unsigned_v<T>
struct rawspeed::BitMSBIterator< T >

Definition at line 33 of file BitIterator.h.

Member Typedef Documentation

◆ difference_type

template<typename T>
using rawspeed::BitMSBIterator< T >::difference_type = std::ptrdiff_t

Definition at line 38 of file BitIterator.h.

◆ iterator_category

template<typename T>
using rawspeed::BitMSBIterator< T >::iterator_category = std::input_iterator_tag

Definition at line 37 of file BitIterator.h.

◆ pointer

template<typename T>
using rawspeed::BitMSBIterator< T >::pointer = const value_type*

Definition at line 40 of file BitIterator.h.

◆ reference

template<typename T>
using rawspeed::BitMSBIterator< T >::reference = const value_type&

Definition at line 41 of file BitIterator.h.

◆ value_type

template<typename T>
using rawspeed::BitMSBIterator< T >::value_type = bool

Definition at line 39 of file BitIterator.h.

Constructor & Destructor Documentation

◆ BitMSBIterator()

template<typename T>
rawspeed::BitMSBIterator< T >::BitMSBIterator ( T bitsPat_,
int bitIdx_ )
inline

Definition at line 43 of file BitIterator.h.

References bitIdx, bitsPat, rawspeed::bitwidth(), invariant, and rawspeed::T().

Referenced by operator++(), and operator==.

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

Member Function Documentation

◆ operator*()

template<typename T>
value_type rawspeed::BitMSBIterator< T >::operator* ( ) const
inline

Definition at line 47 of file BitIterator.h.

References bitIdx, bitsPat, rawspeed::bitwidth(), and invariant.

Here is the call graph for this function:

◆ operator++()

template<typename T>
BitMSBIterator & rawspeed::BitMSBIterator< T >::operator++ ( )
inline

Definition at line 52 of file BitIterator.h.

References BitMSBIterator(), bitIdx, and invariant.

Here is the call graph for this function:

◆ operator==

template<typename T>
bool operator== ( const BitMSBIterator< T > & a,
const BitMSBIterator< T > & b )
friend

Definition at line 57 of file BitIterator.h.

References BitMSBIterator(), bitIdx, bitsPat, and invariant.

Member Data Documentation

◆ bitIdx

template<typename T>
int rawspeed::BitMSBIterator< T >::bitIdx

Definition at line 35 of file BitIterator.h.

Referenced by BitMSBIterator(), operator*(), operator++(), and operator==.

◆ bitsPat

template<typename T>
T rawspeed::BitMSBIterator< T >::bitsPat

Definition at line 34 of file BitIterator.h.

Referenced by BitMSBIterator(), operator*(), and operator==.


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