CRC++ 1.0.1.0
Easy to use and fast C++ CRC library.
Loading...
Searching...
No Matches
CRC::Table< CRCType, CRCWidth > Struct Template Reference

CRC lookup table. After construction, the CRC parameters are fixed. More...

#include <CRC.h>

Public Member Functions

 Table (const Parameters< CRCType, CRCWidth > &parameters)
 Constructs a CRC table from a set of CRC parameters.
 
 Table (Parameters< CRCType, CRCWidth > &&parameters)
 Constructs a CRC table from a set of CRC parameters.
 
const Parameters< CRCType, CRCWidth > & GetParameters () const
 Gets the CRC parameters used to construct the CRC table.
 
const CRCTypeGetTable () const
 Gets the CRC table.
 
CRCType operator[] (unsigned char index) const
 Gets an entry in the CRC table.
 

Private Member Functions

void InitTable ()
 Initializes a CRC table.
 

Private Attributes

Parameters< CRCType, CRCWidthparameters
 CRC parameters used to construct the table.
 
CRCType table [1<< CHAR_BIT]
 CRC lookup table.
 

Detailed Description

template<typename CRCType, crcpp_uint16 CRCWidth>
struct CRC::Table< CRCType, CRCWidth >

CRC lookup table. After construction, the CRC parameters are fixed.

Note
A CRC table can be used for multiple CRC calculations.

Constructor & Destructor Documentation

◆ Table() [1/2]

template<typename CRCType , crcpp_uint16 CRCWidth>
CRC::Table< CRCType, CRCWidth >::Table ( const Parameters< CRCType, CRCWidth > & params)
inline

Constructs a CRC table from a set of CRC parameters.

Parameters
[in]paramsCRC parameters
Template Parameters
CRCTypeInteger type for storing the CRC result
CRCWidthNumber of bits in the CRC

◆ Table() [2/2]

template<typename CRCType , crcpp_uint16 CRCWidth>
CRC::Table< CRCType, CRCWidth >::Table ( Parameters< CRCType, CRCWidth > && params)
inline

Constructs a CRC table from a set of CRC parameters.

Parameters
[in]paramsCRC parameters
Template Parameters
CRCTypeInteger type for storing the CRC result
CRCWidthNumber of bits in the CRC

Member Function Documentation

◆ GetParameters()

template<typename CRCType , crcpp_uint16 CRCWidth>
const CRC::Parameters< CRCType, CRCWidth > & CRC::Table< CRCType, CRCWidth >::GetParameters ( ) const
inline

Gets the CRC parameters used to construct the CRC table.

Template Parameters
CRCTypeInteger type for storing the CRC result
CRCWidthNumber of bits in the CRC
Returns
CRC parameters

◆ GetTable()

template<typename CRCType , crcpp_uint16 CRCWidth>
const CRCType * CRC::Table< CRCType, CRCWidth >::GetTable ( ) const
inline

Gets the CRC table.

Template Parameters
CRCTypeInteger type for storing the CRC result
CRCWidthNumber of bits in the CRC
Returns
CRC table

◆ InitTable()

template<typename CRCType , crcpp_uint16 CRCWidth>
void CRC::Table< CRCType, CRCWidth >::InitTable ( )
inlineprivate

Initializes a CRC table.

Template Parameters
CRCTypeInteger type for storing the CRC result
CRCWidthNumber of bits in the CRC

◆ operator[]()

template<typename CRCType , crcpp_uint16 CRCWidth>
CRCType CRC::Table< CRCType, CRCWidth >::operator[] ( unsigned char index) const
inline

Gets an entry in the CRC table.

Parameters
[in]indexIndex into the CRC table
Template Parameters
CRCTypeInteger type for storing the CRC result
CRCWidthNumber of bits in the CRC
Returns
CRC table entry

Member Data Documentation

◆ parameters

template<typename CRCType , crcpp_uint16 CRCWidth>
Parameters<CRCType, CRCWidth> CRC::Table< CRCType, CRCWidth >::parameters
private

CRC parameters used to construct the table.

◆ table

template<typename CRCType , crcpp_uint16 CRCWidth>
CRCType CRC::Table< CRCType, CRCWidth >::table[1<< CHAR_BIT]
private

CRC lookup table.


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