Percepio Trace Recorder
v4.6.6
|
Go to the documentation of this file.
18 #if (TRC_USE_TRACEALYZER_RECORDER == 1)
20 #if (TRC_CFG_RECORDER_MODE == TRC_RECORDER_MODE_STREAMING)
34 #ifndef TRC_CFG_ENABLE_STACK_MONITOR
35 #define TRC_CFG_ENABLE_STACK_MONITOR 0
41 typedef struct TraceTaskInfo
43 void* coreTasks[TRC_CFG_CORE_COUNT];
46 extern TraceTaskInfo_t* pxTraceTaskInfo;
48 #define TRACE_TASK_INFO_BUFFER_SIZE (sizeof(TraceTaskInfo_t))
53 typedef struct TraceTaskInfoBuffer
55 uint8_t buffer[TRACE_TASK_INFO_BUFFER_SIZE];
56 } TraceTaskInfoBuffer_t;
67 traceResult xTraceTaskInitialize(TraceTaskInfoBuffer_t* pxBuffer);
80 #define xTraceTaskRegister(pvTask, szName, uxPriority, pxTaskHandle) ((((pvTask) != 0) && (xTraceObjectRegister(PSF_EVENT_TASK_CREATE, pvTask, szName, uxPriority, (TraceObjectHandle_t*)(pxTaskHandle)) == TRC_SUCCESS)) ? (xTraceStackMonitorAdd(pvTask), TRC_SUCCESS) : TRC_FAIL)
91 traceResult
xTraceTaskUnregister(TraceTaskHandle_t xTaskHandle, TraceUnsignedBaseType_t uxPriority);
102 #define xTraceTaskSetName xTraceObjectSetName
113 traceResult
xTraceTaskSetPriority(TraceTaskHandle_t xTaskHandle, TraceUnsignedBaseType_t uxPriority);
125 #define xTraceTaskRegisterWithoutHandle(pvTask, szName, uxPriority) ((((pvTask) != 0) && (xTraceObjectRegisterWithoutHandle(PSF_EVENT_TASK_CREATE, pvTask, szName, uxPriority) == TRC_SUCCESS)) ? (xTraceStackMonitorAdd(pvTask), TRC_SUCCESS) : TRC_FAIL)
136 #define xTraceTaskUnregisterWithoutHandle(pvTask, uxPriority) TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(xTraceStackMonitorRemove(pvTask), xTraceObjectUnregisterWithoutHandle(PSF_EVENT_TASK_DELETE, pvTask, uxPriority))
147 #define xTraceTaskSetNameWithoutHandle xTraceObjectSetNameWithoutHandle
169 traceResult
xTraceTaskSwitch(
void* pvTask, TraceUnsignedBaseType_t uxPriority);
171 #if (TRC_CFG_INCLUDE_READY_EVENTS == 1)
180 traceResult xTraceTaskReady(
void* pvTask);
182 #define xTraceTaskReady(p) TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2((void)p, TRC_SUCCESS)
193 #define xTraceTaskSetCurrent(pvTask) TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(pxTraceTaskInfo->coreTasks[TRC_CFG_GET_CURRENT_CORE()] = (pvTask), TRC_SUCCESS)
203 #define xTraceTaskGetCurrent(ppvTask) TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(*(ppvTask) = pxTraceTaskInfo->coreTasks[TRC_CFG_GET_CURRENT_CORE()], TRC_SUCCESS)
traceResult xTraceTaskSetPriority(TraceTaskHandle_t xTaskHandle, TraceUnsignedBaseType_t uxPriority)
Sets trace task priority.
Definition: trcTask.c:59
traceResult xTraceTaskSetPriorityWithoutHandle(void *pvTask, TraceUnsignedBaseType_t uxPriority)
Sets trace task priority without trace task handle.
Definition: trcTask.c:81
traceResult xTraceTaskUnregister(TraceTaskHandle_t xTaskHandle, TraceUnsignedBaseType_t uxPriority)
Unregister trace task from trace.
Definition: trcTask.c:47
traceResult xTraceTaskSwitch(void *pvTask, TraceUnsignedBaseType_t uxPriority)
Registers trace task switch event.
Definition: trcTask.c:105
traceResult xTraceTaskInstanceFinishedNext(void)
Marks the current trace task instance as finished on the next kernel call.
Definition: trcSnapshotRecorder.c:593
traceResult xTraceTaskInstanceFinishedNow(void)
Registers trace task instance finished event.
Definition: trcSnapshotRecorder.c:624