Percepio Trace Recorder v4.11.0
Loading...
Searching...
No Matches
trcEvent.h
Go to the documentation of this file.
1/*
2* Percepio Trace Recorder for Tracealyzer v4.11.0
3* Copyright 2025 Percepio AB
4* www.percepio.com
5*
6* SPDX-License-Identifier: Apache-2.0
7*/
8
14
15#ifndef TRC_EVENT_H
16#define TRC_EVENT_H
17
18#if (TRC_USE_TRACEALYZER_RECORDER == 1)
19
20#include <trcTypes.h>
21
22#ifdef __cplusplus
23extern "C" {
24#endif
25
31
35typedef struct { /* Aligned */
36 uint16_t EventID;
37 uint16_t EventCount;
38 uint32_t TS;
39} TraceEvent0_t;
40
44typedef struct { /* Aligned */
45 uint16_t EventID;
46 uint16_t EventCount;
47 uint32_t TS;
48 TraceUnsignedBaseType_t uxParams[1];
49} TraceEvent1_t;
50
54typedef struct { /* Aligned */
55 uint16_t EventID;
56 uint16_t EventCount;
57 uint32_t TS;
58 TraceUnsignedBaseType_t uxParams[2];
59} TraceEvent2_t;
60
64typedef struct { /* Aligned */
65 uint16_t EventID;
66 uint16_t EventCount;
67 uint32_t TS;
68 TraceUnsignedBaseType_t uxParams[3];
69} TraceEvent3_t;
70
74typedef struct { /* Aligned */
75 uint16_t EventID;
76 uint16_t EventCount;
77 uint32_t TS;
78 TraceUnsignedBaseType_t uxParams[4];
79} TraceEvent4_t;
80
84typedef struct { /* Aligned */
85 uint16_t EventID;
86 uint16_t EventCount;
87 uint32_t TS;
88 TraceUnsignedBaseType_t uxParams[5];
89} TraceEvent5_t;
90
94typedef struct { /* Aligned */
95 uint16_t EventID;
96 uint16_t EventCount;
97 uint32_t TS;
98 TraceUnsignedBaseType_t uxParams[6];
99} TraceEvent6_t;
100
104typedef struct TraceCoreEventData /* Aligned */
105{
106 uint32_t eventCounter;
107 uint32_t reserved; /* alignment */
108} TraceCoreEventData_t;
109
113typedef struct TraceEventDataTable /* Aligned */
114{
115 TraceCoreEventData_t coreEventData[TRC_CFG_CORE_COUNT];
116} TraceEventDataTable_t;
117
127traceResult xTraceEventInitialize(TraceEventDataTable_t* pxBuffer);
128
137traceResult xTraceEventCreateRawBlocking(const void* pxSource, uint32_t ulSize);
138
147traceResult xTraceEventCreate0(uint32_t uiEventCode);
148
158traceResult xTraceEventCreate1(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1);
159
170traceResult xTraceEventCreate2(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2);
171
183traceResult xTraceEventCreate3(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3);
184
197traceResult xTraceEventCreate4(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4);
198
212traceResult xTraceEventCreate5(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4, TraceUnsignedBaseType_t uxParam5);
213
228traceResult xTraceEventCreate6(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4, TraceUnsignedBaseType_t uxParam5, TraceUnsignedBaseType_t uxParam6);
229
240traceResult xTraceEventCreateDataOffline0(uint32_t uiEventCode, const TraceUnsignedBaseType_t* const puxData, TraceUnsignedBaseType_t uxSize);
241
242
253traceResult xTraceEventCreateData0(uint32_t uiEventCode, const TraceUnsignedBaseType_t* const puxData, TraceUnsignedBaseType_t uxSize);
254
266traceResult xTraceEventCreateData1(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, const TraceUnsignedBaseType_t* const puxData, TraceUnsignedBaseType_t uxSize);
267
280traceResult xTraceEventCreateData2(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, const TraceUnsignedBaseType_t* const puxData, TraceUnsignedBaseType_t uxSize);
281
295traceResult xTraceEventCreateData3(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, const TraceUnsignedBaseType_t* const puxData, TraceUnsignedBaseType_t uxSize);
296
311traceResult xTraceEventCreateData4(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4, const TraceUnsignedBaseType_t* const puxData, TraceUnsignedBaseType_t uxSize);
312
328traceResult xTraceEventCreateData5(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4, TraceUnsignedBaseType_t uxParam5, const TraceUnsignedBaseType_t* const puxData, TraceUnsignedBaseType_t uxSize);
329
346traceResult xTraceEventCreateData6(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4, TraceUnsignedBaseType_t uxParam5, TraceUnsignedBaseType_t uxParam6, const TraceUnsignedBaseType_t* const puxData, TraceUnsignedBaseType_t uxSize);
347
357traceResult xTraceEventGetSize(const void* const pvAddress, uint32_t* puiSize);
358
359/* Helper macros */
360
366#define prvTraceEventCreate0(_eventID) xTraceEventCreate0(_eventID)
367
374#define prvTraceEventCreate1(_eventID, _param) xTraceEventCreate1(_eventID, (TraceUnsignedBaseType_t)(_param))
375
383#define prvTraceEventCreate2(_eventID, _param1, _param2) xTraceEventCreate2(_eventID, (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2))
384
393#define prvTraceEventCreate3(_eventID, _param1, _param2, _param3) xTraceEventCreate3(_eventID, (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2), (TraceUnsignedBaseType_t)(_param3))
394
404#define prvTraceEventCreate4(_eventID, _param1, _param2, _param3, _param4) xTraceEventCreate4(_eventID, (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2), (TraceUnsignedBaseType_t)(_param3), (TraceUnsignedBaseType_t)(_param4))
405
416#define prvTraceEventCreate5(_eventID, _param1, _param2, _param3, _param4, _param5) xTraceEventCreate5(_eventID, (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2), (TraceUnsignedBaseType_t)(_param3), (TraceUnsignedBaseType_t)(_param4), (TraceUnsignedBaseType_t)(_param5))
417
429#define prvTraceEventCreate6(_eventID, _param1, _param2, _param3, _param4, _param5, _param6) xTraceEventCreate6(_eventID, (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2), (TraceUnsignedBaseType_t)(_param3), (TraceUnsignedBaseType_t)(_param4), (TraceUnsignedBaseType_t)(_param5), (TraceUnsignedBaseType_t)(_param6))
430
432
433#ifdef __cplusplus
434}
435#endif
436
437#endif /* (TRC_USE_TRACEALYZER_RECORDER == 1) */
438
439#endif /* TRC_EVENT_H */
traceResult xTraceEventCreateData3(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, const TraceUnsignedBaseType_t *const puxData, TraceUnsignedBaseType_t uxSize)
Creates an event with 3 parameters and a payload.
Definition trcCTI.c:1466
traceResult xTraceEventCreateData1(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, const TraceUnsignedBaseType_t *const puxData, TraceUnsignedBaseType_t uxSize)
Creates an event with 1 parameter and a payload.
Definition trcCTI.c:1418
traceResult xTraceEventCreate2(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2)
Creates an event with 2 parameters.
Definition trcCTI.c:1274
traceResult xTraceEventCreate0(uint32_t uiEventCode)
Creates an event with 0 parameters.
Definition trcCTI.c:1226
traceResult xTraceEventCreate1(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1)
Creates an event with 1 parameters.
Definition trcCTI.c:1250
traceResult xTraceEventCreateData5(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4, TraceUnsignedBaseType_t uxParam5, const TraceUnsignedBaseType_t *const puxData, TraceUnsignedBaseType_t uxSize)
Creates an event with 5 parameters and a payload.
Definition trcCTI.c:1514
traceResult xTraceEventCreateData6(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4, TraceUnsignedBaseType_t uxParam5, TraceUnsignedBaseType_t uxParam6, const TraceUnsignedBaseType_t *const puxData, TraceUnsignedBaseType_t uxSize)
Creates an event with 6 parameters and a payload.
Definition trcCTI.c:1538
traceResult xTraceEventCreate6(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4, TraceUnsignedBaseType_t uxParam5, TraceUnsignedBaseType_t uxParam6)
Creates an event with 6 parameters.
Definition trcCTI.c:1370
traceResult xTraceEventCreateData0(uint32_t uiEventCode, const TraceUnsignedBaseType_t *const puxData, TraceUnsignedBaseType_t uxSize)
Creates an event with no parameters and a payload.
Definition trcCTI.c:1394
traceResult xTraceEventCreateData4(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4, const TraceUnsignedBaseType_t *const puxData, TraceUnsignedBaseType_t uxSize)
Creates an event with 4 parameters and a payload.
Definition trcCTI.c:1490
traceResult xTraceEventCreate4(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4)
Creates an event with 4 parameters.
Definition trcCTI.c:1322
traceResult xTraceEventCreateData2(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, const TraceUnsignedBaseType_t *const puxData, TraceUnsignedBaseType_t uxSize)
Creates an event with 2 parameters and a payload.
Definition trcCTI.c:1442
traceResult xTraceEventCreateDataOffline0(uint32_t uiEventCode, const TraceUnsignedBaseType_t *const puxData, TraceUnsignedBaseType_t uxSize)
Creates an offline event with no parameters and a payload.
Definition trcCTI.c:1586
traceResult xTraceEventCreateRawBlocking(const void *pxSource, uint32_t ulSize)
Definition trcCTI.c:1562
traceResult xTraceEventCreate3(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3)
Creates an event with 3 parameters.
Definition trcCTI.c:1298
traceResult xTraceEventCreate5(uint32_t uiEventCode, TraceUnsignedBaseType_t uxParam1, TraceUnsignedBaseType_t uxParam2, TraceUnsignedBaseType_t uxParam3, TraceUnsignedBaseType_t uxParam4, TraceUnsignedBaseType_t uxParam5)
Creates an event with 5 parameters.
Definition trcCTI.c:1346
traceResult xTraceEventGetSize(const void *const pvAddress, uint32_t *puiSize)
Gets trace event size.
Definition trcEvent.c:530