C++ Utilities 5.22.0
Useful C++ classes and routines such as argument parser, IO and conversion utilities
Loading...
Searching...
No Matches
bitreader.cpp
Go to the documentation of this file.
1#include "./bitreader.h"
2
3using namespace std;
4
5namespace CppUtilities {
6
18void BitReader::skipBits(std::size_t bitCount)
19{
20 if (bitCount <= m_bitsAvail) {
21 m_bitsAvail -= static_cast<std::uint8_t>(bitCount);
22 } else {
23 if ((m_buffer += 1 + (bitCount -= m_bitsAvail) / 8) >= m_end) {
24 throw ios_base::failure("end of buffer exceeded");
25 }
26 m_bitsAvail = 8 - (bitCount % 8);
27 }
28}
29
30} // namespace CppUtilities
void skipBits(std::size_t bitCount)
Skips the specified number of bits without reading it.
Definition: bitreader.cpp:18
Contains all utilities provides by the c++utilities library.
STL namespace.