pabigot
0.1.1
C++ support classes
|
Templates supporting CRC calculation using Rocksoft^tm Model parameters. More...
#include <array>
#include <cstdint>
#include <limits>
#include <tuple>
#include <type_traits>
#include <utility>
#include <pabigot/byteorder.hpp>
Go to the source code of this file.
Data Structures | |
struct | pabigot::crc::details::uint_size_traits< C > |
Entry-point to identifying unsigned integral types supporting a specific number of bits. More... | |
struct | pabigot::crc::details::uint_size_traits< 4 > |
struct | pabigot::crc::details::uint_size_traits< 3 > |
struct | pabigot::crc::details::uint_size_traits< 2 > |
struct | pabigot::crc::details::uint_size_traits< 1 > |
struct | pabigot::crc::details::uint_traits< C > |
Extend the size-related traits with functionality operating on the specific types. More... | |
struct | pabigot::crc::details::uint_support< B > |
Type and policy traits providing support for operations on B -bit values. More... | |
class | pabigot::crc::details::base_crc< W, Rin > |
CRC core framework using Rocksoft^tm Model characteristics. More... | |
class | pabigot::crc::Tabler< CRC > |
Class encapsulating everything necessary for table-driven CRC calculations. More... | |
struct | pabigot::crc::Tabler< CRC >::params |
Rocksoft^TM model parameters for the checksum algorithm supported by this type. More... | |
class | pabigot::crc::crc< W, Poly, Rin, Rout, Init, XorOut > |
CRC calculation using Rocksoft^tm Model characteristics. More... | |
Namespaces | |
pabigot | |
Root for all pabigot namespaces. | |
pabigot::crc | |
Templates supporting CRC calculation using Rocksoft^tm Model parameters. | |
pabigot::crc::details | |
Internal support for pabigot::crc. | |
Typedefs | |
using | pabigot::crc::details::uint8_traits = uint_traits< 4 > |
for uint8_t | |
using | pabigot::crc::details::uint16_traits = uint_traits< 3 > |
for uint16_t | |
using | pabigot::crc::details::uint32_traits = uint_traits< 2 > |
for uint32_t | |
using | pabigot::crc::details::uint64_traits = uint_traits< 1 > |
for uint64_t | |
using | pabigot::crc::CRC32 = crc< 32, 0x04c11db7, true, true, -1, -1 > |
The standard 32-bit CRC algorithm. More... | |
Functions | |
template<typename UI > | |
static constexpr UI | pabigot::crc::details::reverse_low_bits (const UI &v, unsigned int bits) |
Reverse bits [0..bits) of v . More... | |
template<unsigned int B> | |
constexpr unsigned int | pabigot::crc::details::uint_category () |
Compute the #uint_size_traits category value for a required bit length. More... | |
template<typename CRC , size_t... n> | |
constexpr auto | pabigot::crc::details::lookup_table (std::index_sequence< n... >) |
Use a template parameter pack to fill out a 256-element std::initializer_list for a std::array. | |
template<typename CRC > | |
constexpr auto | pabigot::crc::details::lookup_table () |
Return a std::array for the CRC byte-indexed table. More... | |
Templates supporting CRC calculation using Rocksoft^tm Model parameters.