13#ifndef TRC_STREAM_PORT_H
14#define TRC_STREAM_PORT_H
16#if (TRC_USE_TRACEALYZER_RECORDER == 1)
18#if (TRC_CFG_RECORDER_MODE == TRC_RECORDER_MODE_STREAMING)
22#include <trcStreamPortConfig.h>
28#define TRC_ALIGNED_STREAM_PORT_BUFFER_SIZE ((((TRC_CFG_STREAM_PORT_INTERNAL_BUFFER_SIZE) + sizeof(TraceUnsignedBaseType_t) - 1) / sizeof(TraceUnsignedBaseType_t)) * sizeof(TraceUnsignedBaseType_t))
30#define TRC_USE_INTERNAL_BUFFER (TRC_CFG_STREAM_PORT_USE_INTERNAL_BUFFER)
32#define TRC_INTERNAL_EVENT_BUFFER_WRITE_MODE (TRC_CFG_STREAM_PORT_INTERNAL_BUFFER_WRITE_MODE)
34#define TRC_INTERNAL_EVENT_BUFFER_TRANSFER_MODE (TRC_CFG_STREAM_PORT_INTERNAL_BUFFER_TRANSFER_MODE)
36#define TRC_INTERNAL_BUFFER_CHUNK_SIZE (TRC_CFG_STREAM_PORT_INTERNAL_BUFFER_CHUNK_SIZE)
38#define TRC_INTERNAL_BUFFER_CHUNK_TRANSFER_AGAIN_SIZE_LIMIT (TRC_CFG_STREAM_PORT_INTERNAL_BUFFER_CHUNK_TRANSFER_AGAIN_SIZE_LIMIT)
40#define TRC_INTERNAL_BUFFER_CHUNK_TRANSFER_AGAIN_COUNT_LIMIT (TRC_CFG_STREAM_PORT_INTERNAL_BUFFER_CHUNK_TRANSFER_AGAIN_COUNT_LIMIT)
44#if (TRC_USE_INTERNAL_BUFFER)
45 uint8_t buffer[(TRC_ALIGNED_STREAM_PORT_BUFFER_SIZE)];
47 TraceUnsignedBaseType_t buffer[1];
51int32_t prvTraceWriteToSocket(
void* data, uint32_t size, int32_t* ptrBytesWritten);
52int32_t prvTraceReadFromSocket(
void* data, uint32_t bufsize, int32_t* ptrBytesRead);
65#if (TRC_USE_INTERNAL_BUFFER == 1)
66 #if (TRC_INTERNAL_EVENT_BUFFER_WRITE_MODE == TRC_INTERNAL_EVENT_BUFFER_OPTION_WRITE_MODE_COPY)
67 #define xTraceStreamPortAllocate(uiSize, ppvData) ((void)(uiSize), xTraceStaticBufferGet(ppvData))
69 #define xTraceStreamPortAllocate(uiSize, ppvData) ((void)(uiSize), xTraceInternalEventBufferAlloc(uiSize, ppvData))
72 #define xTraceStreamPortAllocate(uiSize, ppvData) ((void)(uiSize), xTraceStaticBufferGet(ppvData))
87#if (TRC_USE_INTERNAL_BUFFER == 1)
88 #if (TRC_INTERNAL_EVENT_BUFFER_WRITE_MODE == TRC_INTERNAL_EVENT_BUFFER_OPTION_WRITE_MODE_COPY)
89 #define xTraceStreamPortCommit xTraceInternalEventBufferPush
91 #define xTraceStreamPortCommit xTraceInternalEventBufferAllocCommit
94 #define xTraceStreamPortCommit xTraceStreamPortWriteData
97#define xTraceStreamPortWriteData(pvData, uiSize, piBytesWritten) (prvTraceWriteToSocket(pvData, uiSize, piBytesWritten) == 0 ? TRC_SUCCESS : TRC_FAIL)
99#define xTraceStreamPortReadData(pvData, uiSize, piBytesRead) (prvTraceReadFromSocket(pvData, uiSize, piBytesRead) == 0 ? TRC_SUCCESS : TRC_FAIL)
101#define xTraceStreamPortOnEnable(uiStartOption) ((void)(uiStartOption), TRC_SUCCESS)
103#define xTraceStreamPortOnDisable() (TRC_SUCCESS)
105#define xTraceStreamPortOnTraceBegin() (TRC_SUCCESS)
107traceResult xTraceStreamPortOnTraceEnd(
void);
A structure representing the trace stream port buffer.
Definition: trcStreamPort.h:93