15 for (int32_t i = strLen - 1; i >= 0; --i) {
19 hash = ((hash << 5) + hash) + str[i];
25void cs_log_arg(
const uint8_t*
const valPtr,
size_t valSize);
34 const uint8_t*
const ptr,
53 const uint8_t*
const valPtr =
reinterpret_cast<const uint8_t* const
>(&val);
64template <
class... Args>
66 uint32_t
fileNameHash, uint32_t lineNumber, uint8_t logLevel,
bool addNewLine,
const Args&... args) {
75 size_t totalSize =
sizeof(header);
91template <
class... Args>
98 const Args&... args) {
112 const uint8_t*
const ptr,
116 const char* startFormat,
117 const char* endFormat,
118 const char* seperationFormat,
119 const char* elementFormat) {
129 const uint8_t*
const ptr,
131 const char* startFormat,
132 const char* endFormat,
133 const char* seperationFormat,
134 const char* elementFormat =
"%3u") {
157 const uint16_t*
const ptr,
159 const char* startFormat,
160 const char* endFormat,
161 const char* seperationFormat,
162 const char* elementFormat =
"%5u") {
169 reinterpret_cast<const uint8_t*
>(ptr),
185 const uint32_t*
const ptr,
187 const char* startFormat,
188 const char* endFormat,
189 const char* seperationFormat,
190 const char* elementFormat =
"%10u") {
197 reinterpret_cast<const uint8_t*
>(ptr),
213 const uint64_t*
const ptr,
215 const char* startFormat,
216 const char* endFormat,
217 const char* seperationFormat,
218 const char* elementFormat =
"%20u") {
225 reinterpret_cast<const uint8_t*
>(ptr),
241 const int8_t*
const ptr,
243 const char* startFormat,
244 const char* endFormat,
245 const char* seperationFormat,
246 const char* elementFormat =
"%3i") {
253 reinterpret_cast<const uint8_t*
>(ptr),
269 const int16_t*
const ptr,
271 const char* startFormat,
272 const char* endFormat,
273 const char* seperationFormat,
274 const char* elementFormat =
"%5i") {
281 reinterpret_cast<const uint8_t*
>(ptr),
297 const int32_t*
const ptr,
299 const char* startFormat,
300 const char* endFormat,
301 const char* seperationFormat,
302 const char* elementFormat =
"%10i") {
309 reinterpret_cast<const uint8_t*
>(ptr),
325 const int64_t*
const ptr,
327 const char* startFormat,
328 const char* endFormat,
329 const char* seperationFormat,
330 const char* elementFormat =
"%20i") {
337 reinterpret_cast<const uint8_t*
>(ptr),
353 const float*
const ptr,
355 const char* startFormat,
356 const char* endFormat,
357 const char* seperationFormat,
358 const char* elementFormat =
"%f.") {
365 reinterpret_cast<const uint8_t*
>(ptr),
381 const double*
const ptr,
383 const char* startFormat,
384 const char* endFormat,
385 const char* seperationFormat,
386 const char* elementFormat =
"%f.") {
393 reinterpret_cast<const uint8_t*
>(ptr),
void cs_log_array(uint32_t fileNameHash, uint32_t lineNumber, uint8_t logLevel, bool addNewLine, bool reverse, const uint8_t *const ptr, size_t size, ElementType elementType, size_t elementSize, const char *startFormat, const char *endFormat, const char *seperationFormat, const char *elementFormat)
Definition: cs_LogUtils.h:106
void cs_log_array_no_fmt(uint32_t fileNameHash, uint32_t lineNumber, uint8_t logLevel, bool addNewLine, bool reverse, const uint8_t *const ptr, size_t size, ElementType elementType, size_t elementSize)
constexpr uint32_t fileNameHash(const char *str, size_t strLen)
Returns the 32 bits DJB2 hash of the reversed file name, up to the first '/'.
Definition: cs_LogUtils.h:13
void cs_log_args_no_fmt(uint32_t fileNameHash, uint32_t lineNumber, uint8_t logLevel, bool addNewLine, const Args &... args)
Definition: cs_LogUtils.h:65
void cs_log_start(size_t msgSize, uart_msg_log_header_t &header)
void cs_log_arg(const uint8_t *const valPtr, size_t valSize)
void cs_log_args(uint32_t fileNameHash, uint32_t lineNumber, uint8_t logLevel, bool addNewLine, const char *fmt, const Args &... args)
Definition: cs_LogUtils.h:92
void cs_log_add_arg_size(size_t &size, uint8_t &numArgs, T val)
Definition: cs_LogUtils.h:40
ElementType
Definition: cs_UartMsgTypes.h:98
@ ELEMENT_TYPE_UNSIGNED_INTEGER
Definition: cs_UartMsgTypes.h:100
@ ELEMENT_TYPE_FLOAT
Definition: cs_UartMsgTypes.h:101
@ ELEMENT_TYPE_SIGNED_INTEGER
Definition: cs_UartMsgTypes.h:99