37 #ifndef ti_loggers_utils_LogSinkBuf__include 38 #define ti_loggers_utils_LogSinkBuf__include 40 #include <ti/log/Log.h> 43 #if defined(__cplusplus) 47 #define Log_TI_LOG_SINK_BUF_VERSION 0.2.0 49 #define LogSinkBuf_Type_LINEAR (1) 50 #define LogSinkBuf_Type_CIRCULAR (2) 51 #define LogSinkBuf_WORDS_PER_RECORD (5) 52 #define LogSinkBuf_BUF_HEADER_SIZE sizeof(LogSinkBuf_RecordType) + sizeof(uint32_t) 53 #define LogSinkBuf_SIZEOF_RECORD (sizeof(uint32_t) * LogSinkBuf_WORDS_PER_RECORD) 125 extern void LogSinkBuf_printfSingleton(
const Log_Module *handle,
131 extern void LogSinkBuf_printfSingleton0(
const Log_Module *handle, uint32_t header, uint32_t index, ...);
133 extern void LogSinkBuf_printfSingleton1(
const Log_Module *handle, uint32_t header, uint32_t index, ...);
135 extern void LogSinkBuf_printfSingleton2(
const Log_Module *handle, uint32_t header, uint32_t index, ...);
137 extern void LogSinkBuf_printfSingleton3(
const Log_Module *handle, uint32_t header, uint32_t index, ...);
166 extern void LogSinkBuf_printfDepInjection(
const Log_Module *handle,
172 extern void LogSinkBuf_printfDepInjection0(
const Log_Module *handle, uint32_t header, uint32_t index, ...);
174 extern void LogSinkBuf_printfDepInjection1(
const Log_Module *handle, uint32_t header, uint32_t index, ...);
176 extern void LogSinkBuf_printfDepInjection2(
const Log_Module *handle, uint32_t header, uint32_t index, ...);
178 extern void LogSinkBuf_printfDepInjection3(
const Log_Module *handle, uint32_t header, uint32_t index, ...);
206 extern void LogSinkBuf_bufDepInjection(
const Log_Module *handle,
216 #define Log_SINK_BUF_DEFINE(name, type, num_entries) \ 217 static LogSinkBuf_Rec logSinkBuf_##name##_buffer[num_entries]; \ 218 LogSinkBuf_Instance LogSinkBuf_##name##_config = {.serial = 0, \ 221 .numEntries = num_entries, \ 222 .buffer = logSinkBuf_##name##_buffer, \ 223 .curEntry = logSinkBuf_##name##_buffer, \ 224 .endEntry = logSinkBuf_##name##_buffer + (num_entries - 1)} 225 #define Log_SINK_BUF_USE(name) extern LogSinkBuf_Instance LogSinkBuf_##name##_config 226 #define Log_MODULE_INIT_SINK_BUF(name, _levels, printfDelegate, bufDelegate, _dynamicLevelsPtr) \ 228 .sinkConfig = &LogSinkBuf_##name##_config, .printf = printfDelegate, .printf0 = printfDelegate##0, \ 229 .printf1 = printfDelegate##1, .printf2 = printfDelegate##2, .printf3 = printfDelegate##3, .buf = bufDelegate, \ 230 .levels = _levels, .dynamicLevelsPtr = _dynamicLevelsPtr, \ 235 #if defined(__cplusplus) uint32_t timestampLow
Definition: LogSinkBuf.h:70
LogSinkBuf_Rec * buffer
Definition: LogSinkBuf.h:84
#define LogSinkBuf_WORDS_PER_RECORD
Definition: LogSinkBuf.h:51
Definition: LogSinkBuf.h:59
Definition: LogSinkBuf.h:58
uint32_t serial
Definition: LogSinkBuf.h:83
LogSinkBuf_Rec * curEntry
Definition: LogSinkBuf.h:85
LogSinkBuf_RecordType
Definition: LogSinkBuf.h:55
LogSinkBuf_Rec * endEntry
Definition: LogSinkBuf.h:86
struct LogSinkBuf_Instance LogSinkBuf_Instance
int8_t advance
Definition: LogSinkBuf.h:81
Definition: LogSinkBuf.h:66
_Log_DEFINE_LOG_VERSION(LogSinkBuf, 0.2.0)
LogSinkBuf_RecordType type
Definition: LogSinkBuf.h:71
uint32_t data[(5)]
Definition: LogSinkBuf.h:72
struct LogSinkBuf_Rec LogSinkBuf_Rec
Definition: LogSinkBuf.h:57
uint32_t serial
Definition: LogSinkBuf.h:68
Definition: LogSinkBuf.h:60
#define Log_TI_LOG_SINK_BUF_VERSION
Definition: LogSinkBuf.h:47
uint16_t numEntries
Definition: LogSinkBuf.h:82
LogSinkBuf_Instance * LogSinkBuf_Handle
Definition: LogSinkBuf.h:92
uint32_t timestampHigh
Definition: LogSinkBuf.h:69
Definition: LogSinkBuf.h:78
uint8_t bufType
Definition: LogSinkBuf.h:80