From ecca21fd40be21164d664eb7d8a52ea1fdabfde0 Mon Sep 17 00:00:00 2001 From: Sebastian Unger Date: Thu, 13 Jun 2019 13:41:12 +0200 Subject: Add user custom timestamp interface Two new macros are introduced so that users can use their customized timestamps for DLT messages: - DLT_LOG_TS(CONTEXT, LOGLEVEL, TS, ARGS ...) - DLT_LOG_ID_TS(CONTEXT, LOGLEVEL, MSGID, TS, ARGS ...) Detailed explanations can be found in dlt_for_developers.md. Also a new option is added to dlt-system to use events' timestamps from journald adapter. Signed-off-by: Sebastian Unger --- src/lib/dlt_user.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/lib') diff --git a/src/lib/dlt_user.c b/src/lib/dlt_user.c index 55e57bf..4206dd2 100644 --- a/src/lib/dlt_user.c +++ b/src/lib/dlt_user.c @@ -1538,6 +1538,7 @@ DltReturnValue dlt_user_log_write_start_id(DltContext *handle, log->args_num = 0; log->log_level = loglevel; log->size = 0; + log->use_timestamp = DLT_AUTO_TIMESTAMP; /* In non-verbose mode, insert message id */ if (dlt_user.verbose_mode == 0) { @@ -3584,8 +3585,14 @@ DltReturnValue dlt_user_log_send_log(DltContextData *log, int mtype) /* Set header extra parameters */ dlt_set_id(msg.headerextra.ecu, dlt_user.ecuID); + /*msg.headerextra.seid = 0; */ - msg.headerextra.tmsp = dlt_uptime(); + if (log->use_timestamp == DLT_AUTO_TIMESTAMP) { + msg.headerextra.tmsp = dlt_uptime(); + } + else { + msg.headerextra.tmsp = log->user_timestamp; + } if (dlt_message_set_extraparameters(&msg, 0) == DLT_RETURN_ERROR) return DLT_RETURN_ERROR; -- cgit v1.2.1