From 965e022b9d5375691763864658b3f0cf39ecf875 Mon Sep 17 00:00:00 2001 From: Alexander Wenzel Date: Tue, 13 May 2014 17:06:31 +0200 Subject: Send ECU Id if enabled and added library API to change. Signed-off-by: Alexander Wenzel --- include/dlt/dlt_user.h | 9 +++++++++ src/examples/dlt-example-user.c | 5 +++++ src/lib/dlt_user.c | 27 ++++++++++++++++++++++++++- src/lib/dlt_user_cfg.h | 3 +++ 4 files changed, 43 insertions(+), 1 deletion(-) diff --git a/include/dlt/dlt_user.h b/include/dlt/dlt_user.h index 0c665ab..93ac0a0 100644 --- a/include/dlt/dlt_user.h +++ b/include/dlt/dlt_user.h @@ -232,6 +232,7 @@ typedef struct int8_t use_extende_header_for_non_verbose; /**< Use extended header for non verbose: 1 enabled, 0 disabled */ int8_t with_session_id; /**< Send always session id: 1 enabled, 0 disabled */ int8_t with_timestamp; /**< Send always timestamp: 1 enabled, 0 disabled */ + int8_t with_ecu_id; /**< Send always ecu id: 1 enabled, 0 disabled */ int8_t enable_local_print; /**< Local printing of log messages: 1 enabled, 0 disabled */ int8_t local_print_mode; /**< Local print mode, controlled by environment variable */ @@ -568,6 +569,14 @@ int dlt_with_session_id(int8_t with_session_id); */ int dlt_with_timestamp(int8_t with_timestamp); +/** + * Send ecu id configuration. + * Enabled by default. + * @param with_ecu_id Send ecu id in each message if enabled + * @return negative value if no success + */ +int dlt_with_ecu_id(int8_t with_ecu_id); + /** * Set maximum logged log level and trace status of application * diff --git a/src/examples/dlt-example-user.c b/src/examples/dlt-example-user.c index 3dcf245..25d3110 100755 --- a/src/examples/dlt-example-user.c +++ b/src/examples/dlt-example-user.c @@ -235,6 +235,11 @@ int main(int argc, char* argv[]) } } + dlt_with_session_id(1); + dlt_with_timestamp(1); + dlt_with_ecu_id(1); + dlt_verbose_mode(); + DLT_REGISTER_APP("LOG","Test Application for Logging"); DLT_REGISTER_CONTEXT(mycontext,"TEST","Test Context for Logging"); diff --git a/src/lib/dlt_user.c b/src/lib/dlt_user.c index b7ab992..0b28ff8 100644 --- a/src/lib/dlt_user.c +++ b/src/lib/dlt_user.c @@ -408,6 +408,9 @@ int dlt_init_common(void) /* With timestamp is enabled by default */ dlt_user.with_timestamp= DLT_USER_WITH_TIMESTAMP; + /* With timestamp is enabled by default */ + dlt_user.with_ecu_id= DLT_USER_WITH_ECU_ID; + /* Local print is disabled by default */ dlt_user.enable_local_print = 0; @@ -2761,6 +2764,22 @@ int dlt_with_timestamp(int8_t with_timestamp) return 0; } +int dlt_with_ecu_id(int8_t with_ecu_id) +{ + if (dlt_user_initialised==0) + { + if (dlt_init()<0) + { + return -1; + } + } + + /* Set with_timestamp */ + dlt_user.with_ecu_id = with_ecu_id; + + return 0; +} + int dlt_enable_local_print(void) { if (dlt_user_initialised==0) @@ -2940,7 +2959,13 @@ DltReturnValue dlt_user_log_send_log(DltContextData *log, int mtype) } msg.standardheader = (DltStandardHeader*)(msg.headerbuffer + sizeof(DltStorageHeader)); - msg.standardheader->htyp = DLT_HTYP_WEID | DLT_HTYP_PROTOCOL_VERSION1 ; + msg.standardheader->htyp = DLT_HTYP_PROTOCOL_VERSION1 ; + + /* send ecu id */ + if(dlt_user.with_ecu_id) + { + msg.standardheader->htyp |= DLT_HTYP_WEID; + } /* send timestamp */ if(dlt_user.with_timestamp) diff --git a/src/lib/dlt_user_cfg.h b/src/lib/dlt_user_cfg.h index 4c3e201..9559c98 100755 --- a/src/lib/dlt_user_cfg.h +++ b/src/lib/dlt_user_cfg.h @@ -114,6 +114,9 @@ /* send always timestamp: 0 - don't use, 1 - use */ #define DLT_USER_WITH_TIMESTAMP 1 +/* send always ecu id: 0 - don't use, 1 - use */ +#define DLT_USER_WITH_ECU_ID 1 + /* default message id for non-verbose mode, if no message id was provided */ #define DLT_USER_DEFAULT_MSGID 0xffff -- cgit v1.2.1