summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLassi Marttala <Lassi.LM.Marttala@partner.bmw.de>2012-07-30 17:31:47 +0200
committerAlexander Wenzel <Alexander.AW.Wenzel@bmw.de>2012-11-26 12:39:08 +0100
commit5e3ec2f8655617c685a92c32edddd41c201bca48 (patch)
tree213144e3f5d82129698a457266c89cb725952dc0 /include
parentd3a98020c18bc63f2192a9d93f2196b48d73f1a8 (diff)
downloadDLT-daemon-5e3ec2f8655617c685a92c32edddd41c201bca48.tar.gz
[GDLT-120] Segmentation of larger messages, raw blocks which fit not in a single DLT message
Signed-off-by: Alexander Wenzel <Alexander.AW.Wenzel@bmw.de>
Diffstat (limited to 'include')
-rw-r--r--[-rwxr-xr-x]include/dlt/CMakeLists.txt0
-rw-r--r--[-rwxr-xr-x]include/dlt/dlt_user.h31
2 files changed, 31 insertions, 0 deletions
diff --git a/include/dlt/CMakeLists.txt b/include/dlt/CMakeLists.txt
index 95e764d..95e764d 100755..100644
--- a/include/dlt/CMakeLists.txt
+++ b/include/dlt/CMakeLists.txt
diff --git a/include/dlt/dlt_user.h b/include/dlt/dlt_user.h
index 1383af3..6742969 100755..100644
--- a/include/dlt/dlt_user.h
+++ b/include/dlt/dlt_user.h
@@ -360,6 +360,31 @@ int dlt_user_log_write_raw(DltContextData *log,void *data,uint16_t length);
*/
int dlt_user_trace_network(DltContext *handle, DltNetworkTraceType nw_trace_type, uint16_t header_len, void *header, uint16_t payload_len, void *payload);
+/**
+ * Trace network message, truncated if necessary
+ * @param handle pointer to an object containing information about one special logging context
+ * @param nw_trace_type type of network trace (DLT_NW_TRACE_IPC, DLT_NW_TRACE_CAN, DLT_NW_TRACE_FLEXRAY, or DLT_NW_TRACE_MOST)
+ * @param header_len length of network message header
+ * @param header pointer to network message header
+ * @param payload_len length of network message payload
+ * @param payload pointer to network message payload
+ * @param allow_truncate Set to > 0 to allow truncating of the message if it is too large.
+ * @return negative value if there was an error
+ */
+int dlt_user_trace_network_truncated(DltContext *handle, DltNetworkTraceType nw_trace_type, uint16_t header_len, void *header, uint16_t payload_len, void *payload, int allow_truncate);
+
+/**
+ * Trace network message in segmented asynchronous mode.
+ * The sending of the data is done in a separate thread.
+ * @param handle pointer to an object containing information about one special logging context
+ * @param nw_trace_type type of network trace (DLT_NW_TRACE_IPC, DLT_NW_TRACE_CAN, DLT_NW_TRACE_FLEXRAY, or DLT_NW_TRACE_MOST)
+ * @param header_len length of network message header
+ * @param header pointer to network message header
+ * @param payload_len length of network message payload
+ * @param payload pointer to network message payload
+ */
+void dlt_user_trace_network_segmented(DltContext *handle, DltNetworkTraceType nw_trace_type, uint16_t header_len, void *header, uint16_t payload_len, void *payload);
+
/**************************************************************************************************
* The folowing API functions define a high level function interface for DLT
**************************************************************************************************/
@@ -594,6 +619,12 @@ int dlt_user_check_buffer(int *total_size, int *used_size);
*/
int dlt_user_atexit_blow_out_user_buffer(void);
+/**
+ * Try to resend log message in the user buffer.
+ * @return 0 on success, negative on failure.
+ */
+int dlt_user_log_resend_buffer(void);
+
#ifdef DLT_TEST_ENABLE
void dlt_user_test_corrupt_user_header(int enable);
void dlt_user_test_corrupt_message_size(int enable,int16_t size);