Percepio Trace Recorder  v4.6.6
trcDiagnostics.h
Go to the documentation of this file.
1 /*
2 * Percepio Trace Recorder for Tracealyzer v4.6.6
3 * Copyright 2021 Percepio AB
4 * www.percepio.com
5 *
6 * SPDX-License-Identifier: Apache-2.0
7 */
8 
15 #ifndef TRC_DIAGNOSTICS_H
16 #define TRC_DIAGNOSTICS_H
17 
18 #if (TRC_USE_TRACEALYZER_RECORDER == 1)
19 
20 #if (TRC_CFG_RECORDER_MODE == TRC_RECORDER_MODE_STREAMING)
21 
22 #include <trcTypes.h>
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 #define TRC_DIAGNOSTICS_COUNT 5
29 
30 typedef enum TraceDiagnosticsType
31 {
32  TRC_DIAGNOSTICS_ENTRY_SYMBOL_LONGEST_LENGTH = 0x00,
33  TRC_DIAGNOSTICS_ENTRY_SLOTS_NO_ROOM = 0x01,
34  TRC_DIAGNOSTICS_BLOB_MAX_BYTES_TRUNCATED = 0x02,
35  TRC_DIAGNOSTICS_STACK_MONITOR_NO_SLOTS = 0x03,
36  TRC_DIAGNOSTICS_ASSERTS_TRIGGERED = 0x04,
37 } TraceDiagnosticsType_t;
38 
39 typedef struct TraceDiagnosticsBuffer
40 {
41  uint8_t buffer[sizeof(TraceBaseType_t) * (TRC_DIAGNOSTICS_COUNT)];
42 } TraceDiagnosticsBuffer_t;
43 
52 traceResult xTraceDiagnosticsInitialize(TraceDiagnosticsBuffer_t* pxBuffer);
53 
63 traceResult xTraceDiagnosticsGet(TraceDiagnosticsType_t xType, TraceBaseType_t* pxValue);
64 
74 traceResult xTraceDiagnosticsSet(TraceDiagnosticsType_t xType, TraceBaseType_t xValue);
75 
85 traceResult xTraceDiagnosticsAdd(TraceDiagnosticsType_t xType, TraceBaseType_t xValue);
86 
95 traceResult xTraceDiagnosticsIncrease(TraceDiagnosticsType_t xType);
96 
105 traceResult xTraceDiagnosticsDecrease(TraceDiagnosticsType_t xType);
106 
116 traceResult xTraceDiagnosticsSetIfHigher(TraceDiagnosticsType_t xType, TraceBaseType_t xValue);
117 
127 traceResult xTraceDiagnosticsSetIfLower(TraceDiagnosticsType_t xType, TraceBaseType_t xValue);
128 
135 traceResult xTraceDiagnosticsCheckStatus(void);
136 
137 #ifdef __cplusplus
138 }
139 #endif
140 
141 #endif /* (TRC_CFG_RECORDER_MODE == TRC_RECORDER_MODE_STREAMING) */
142 
143 #endif /* (TRC_USE_TRACEALYZER_RECORDER == 1) */
144 
145 #endif /* TRC_DIAGNOSTICS_H */
xTraceDiagnosticsDecrease
traceResult xTraceDiagnosticsDecrease(TraceDiagnosticsType_t xType)
Decrease diagnostics value.
Definition: trcDiagnostics.c:92
xTraceDiagnosticsCheckStatus
traceResult xTraceDiagnosticsCheckStatus(void)
Check the diagnostics status.
Definition: trcDiagnostics.c:129
xTraceDiagnosticsSetIfHigher
traceResult xTraceDiagnosticsSetIfHigher(TraceDiagnosticsType_t xType, TraceBaseType_t xValue)
Set a new diagnostics value if higher than previous value.
Definition: trcDiagnostics.c:97
xTraceDiagnosticsIncrease
traceResult xTraceDiagnosticsIncrease(TraceDiagnosticsType_t xType)
Increase diagnostics value.
Definition: trcDiagnostics.c:87
xTraceDiagnosticsGet
traceResult xTraceDiagnosticsGet(TraceDiagnosticsType_t xType, TraceBaseType_t *pxValue)
Retrieve diagnostics value.
Definition: trcDiagnostics.c:45
xTraceDiagnosticsAdd
traceResult xTraceDiagnosticsAdd(TraceDiagnosticsType_t xType, TraceBaseType_t xValue)
Add to diagnostics value.
Definition: trcDiagnostics.c:74
xTraceDiagnosticsSet
traceResult xTraceDiagnosticsSet(TraceDiagnosticsType_t xType, TraceBaseType_t xValue)
Set diagnostics value.
Definition: trcDiagnostics.c:61
xTraceDiagnosticsSetIfLower
traceResult xTraceDiagnosticsSetIfLower(TraceDiagnosticsType_t xType, TraceBaseType_t xValue)
Set a new diagnostics value if lower than previous value.
Definition: trcDiagnostics.c:113