MCPcopy Create free account
hub / github.com/Serial-Studio/Serial-Studio / big_endian_memcpy

Function big_endian_memcpy

app/src/IO/Checksum.cpp:48–63  ·  view source on GitHub ↗

* @brief Copies data in big-endian format to a frame buffer. */

Source from the content-addressed store, hash-verified

46 * @brief Copies data in big-endian format to a frame buffer.
47 */
48static void big_endian_memcpy(uint8_t* frame, const void* data, size_t size)
49{
50 if (!frame || !data || size == 0) {
51 qWarning() << "big_endian_memcpy: invalid arguments";
52 return;
53 }
54
55 const uint8_t* raw_data = static_cast<const uint8_t*>(data);
56
57#if IS_LITTLE_ENDIAN
58 for (size_t i = 0; i < size; ++i)
59 frame[i] = raw_data[size - 1 - i];
60#else
61 memcpy(frame, raw_data, size);
62#endif
63}
64
65/**
66 * @brief Copies data in little-endian format to a frame buffer.

Callers 2

packU16BEFunction · 0.85
packU32BEFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected