diff options
author | Christoph Lipka <clipka@jp.adit-jv.com> | 2016-06-13 14:25:45 +0100 |
---|---|---|
committer | Christoph Lipka <clipka@jp.adit-jv.com> | 2016-10-24 13:39:56 +0900 |
commit | ce137a345cf2f637453aa1795af3d381157bf055 (patch) | |
tree | 87a0ae1e914c340315c23774d6b7b07d3da627cd /include/dlt | |
parent | 3894a8d101a7be0f67262de8af3746a768433fed (diff) | |
download | DLT-daemon-ce137a345cf2f637453aa1795af3d381157bf055.tar.gz |
DLT_PTR macro: Improve implementation and function API added
The original implementation result in a compile error when DLT_PTR is used with
other macros like DLT_STRING.
This patch overcomes that problem.
Signed-off-by: Christoph Lipka <clipka@jp.adit-jv.com>
Diffstat (limited to 'include/dlt')
-rw-r--r-- | include/dlt/dlt_user.h | 10 | ||||
-rw-r--r-- | include/dlt/dlt_user_macros.h | 8 |
2 files changed, 11 insertions, 7 deletions
diff --git a/include/dlt/dlt_user.h b/include/dlt/dlt_user.h index 326a733..a151e95 100644 --- a/include/dlt/dlt_user.h +++ b/include/dlt/dlt_user.h @@ -333,6 +333,16 @@ DltReturnValue dlt_user_log_write_uint32_formatted(DltContextData *log, uint32_t DltReturnValue dlt_user_log_write_uint64_formatted(DltContextData *log, uint64_t data, DltFormatType type); /** + * Write a pointer value architecture independent. + * dlt_user_log_write_start has to be called before adding any attributes to the log message. + * Finish sending log message by calling dlt_user_log_write_finish. + * @param log pointer to an object containing information about logging context data + * @param data void* parameter written into log message. + * @return Value from DltReturnValue enum + */ +DltReturnValue dlt_user_log_write_ptr(DltContextData *log, void *data); + +/** * Write a int parameter into a DLT log message. * dlt_user_log_write_start has to be called before adding any attributes to the log message. * Finish sending log message by calling dlt_user_log_write_finish. diff --git a/include/dlt/dlt_user_macros.h b/include/dlt/dlt_user_macros.h index e1e9104..e1968a2 100644 --- a/include/dlt/dlt_user_macros.h +++ b/include/dlt/dlt_user_macros.h @@ -331,13 +331,7 @@ * Architecture independent macro to print pointers */ #define DLT_PTR(PTR_VAR) \ - do { \ - if (sizeof(void *) < 8) { \ - DLT_HEX32((uintptr_t)PTR_VAR); \ - } else { \ - DLT_HEX64((uintptr_t)PTR_VAR); \ - } \ - } while(0) + (void)dlt_user_log_write_ptr(&log_local, PTR_VAR) /** * Trace network message |