shared
depthai-shared
src
utility
Checksum.cpp
Go to the documentation of this file.
1
#include "
depthai-shared/utility/Checksum.hpp
"
2
3
namespace
dai
{
4
namespace
utility {
5
6
std::uint32_t
checksum
(
const
void
*
buffer
, std::size_t
size
, uint32_t prevChecksum) {
7
uint32_t
checksum
= prevChecksum;
8
auto
p =
reinterpret_cast<
const
uint8_t*
>
(
buffer
);
9
10
for
(std::size_t i = 0; i <
size
; i++) {
11
checksum
= ((
checksum
<< 5) +
checksum
) + p[i];
/* hash * 33 + p[i] */
12
}
13
14
return
checksum
;
15
}
16
17
std::uint32_t
checksum
(
const
void
*
buffer
, std::size_t
size
) {
18
constexpr
static
auto
checksumInitialValue = 5381U;
19
return
checksum
(
buffer
,
size
, checksumInitialValue);
20
}
21
22
}
// namespace utility
23
}
// namespace dai
Checksum.hpp
dai::utility::checksum
std::uint32_t checksum(const void *buffer, std::size_t size, uint32_t prevChecksum)
Definition:
Checksum.cpp:6
nanorpc::core::type::buffer
std::vector< std::uint8_t > buffer
Definition:
type.h:28
DAI_SPAN_NAMESPACE_NAME::detail::size
constexpr auto size(const C &c) -> decltype(c.size())
Definition:
span.hpp:167
dai
Definition:
CameraExposureOffset.hpp:6
depthai
Author(s): Martin Peterlin
autogenerated on Sat Mar 22 2025 02:58:18