F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
Crc32.hpp
Go to the documentation of this file.
1
#ifndef UTILS_HASH_CRC32_CRC32_HPP
2
#define UTILS_HASH_CRC32_CRC32_HPP
3
4
#include "
Fw/FPrimeBasicTypes.hpp
"
5
6
namespace
Utils
{
7
8
// This is an implementation of the IEEE 802.3 CRC32 polynomial, which is
9
// 0x82608EDB when expressed as a reverse reciprocal form, or 0xEDB88320
10
// when expressed in a reverse form.
11
//
12
// Note that this specific function does not perform the one's complement
13
// that is typically performed when calculating a CRC32 hash. Use the Hash
14
// class implementation instead.
15
U32
crc32_ieee802_3_update
(
const
U8
* data,
FwSizeType
length, U32 crc);
16
19
#ifndef HASH_HANDLE_TYPE
20
#define HASH_HANDLE_TYPE U32 // NO_CODESONAR LANG.PREPROC.MACROSTART/END
21
#endif
22
25
#ifndef HASH_DIGEST_LENGTH
26
#define HASH_DIGEST_LENGTH (4)
27
#endif
28
32
#ifndef HASH_EXTENSION_STRING
33
#define HASH_EXTENSION_STRING (".CRC32")
34
#endif
35
36
}
// namespace Utils
37
38
#endif
FwSizeType
PlatformSizeType FwSizeType
Definition:
FwSizeTypeAliasAc.h:15
FPrimeBasicTypes.hpp
Utils
Definition:
CRCChecker.cpp:20
U8
uint8_t U8
8-bit unsigned integer
Definition:
BasicTypes.h:53
Utils::crc32_ieee802_3_update
U32 crc32_ieee802_3_update(const U8 *data, FwSizeType length, U32 crc)
Definition:
Crc32.cpp:172
Utils
Hash
Crc32
Crc32.hpp
Generated by
1.8.14