Percepio Trace Recorder v4.8.0.hotfix1
Loading...
Searching...
No Matches
trcDiagnostics.h
Go to the documentation of this file.
1/*
2* Percepio Trace Recorder for Tracealyzer v4.8.0.hotfix1
3* Copyright 2023 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
25extern "C" {
26#endif
27
28#define TRC_DIAGNOSTICS_COUNT 5UL
29
30typedef enum TraceDiagnosticsType
31{
32 TRC_DIAGNOSTICS_ENTRY_SYMBOL_LONGEST_LENGTH = 0x00UL,
33 TRC_DIAGNOSTICS_ENTRY_SLOTS_NO_ROOM = 0x01UL,
34 TRC_DIAGNOSTICS_BLOB_MAX_BYTES_TRUNCATED = 0x02UL,
35 TRC_DIAGNOSTICS_STACK_MONITOR_NO_SLOTS = 0x03UL,
36 TRC_DIAGNOSTICS_ASSERTS_TRIGGERED = 0x04UL,
37} TraceDiagnosticsType_t;
38
39typedef struct TraceDiagnostics /* Aligned */
40{
41 TraceBaseType_t metrics[TRC_DIAGNOSTICS_COUNT];
42} TraceDiagnosticsData_t;
43
52traceResult xTraceDiagnosticsInitialize(TraceDiagnosticsData_t* pxBuffer);
53
63traceResult xTraceDiagnosticsGet(TraceDiagnosticsType_t xType, TraceBaseType_t* pxValue);
64
74traceResult xTraceDiagnosticsSet(TraceDiagnosticsType_t xType, TraceBaseType_t xValue);
75
85traceResult xTraceDiagnosticsAdd(TraceDiagnosticsType_t xType, TraceBaseType_t xValue);
86
95traceResult xTraceDiagnosticsIncrease(TraceDiagnosticsType_t xType);
96
105traceResult xTraceDiagnosticsDecrease(TraceDiagnosticsType_t xType);
106
116traceResult xTraceDiagnosticsSetIfHigher(TraceDiagnosticsType_t xType, TraceBaseType_t xValue);
117
127traceResult xTraceDiagnosticsSetIfLower(TraceDiagnosticsType_t xType, TraceBaseType_t xValue);
128
135traceResult 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 */
traceResult xTraceDiagnosticsAdd(TraceDiagnosticsType_t xType, TraceBaseType_t xValue)
Add to diagnostics value.
Definition: trcDiagnostics.c:67
traceResult xTraceDiagnosticsIncrease(TraceDiagnosticsType_t xType)
Increase diagnostics value.
Definition: trcDiagnostics.c:80
traceResult xTraceDiagnosticsDecrease(TraceDiagnosticsType_t xType)
Decrease diagnostics value.
Definition: trcDiagnostics.c:85
traceResult xTraceDiagnosticsSetIfLower(TraceDiagnosticsType_t xType, TraceBaseType_t xValue)
Set a new diagnostics value if lower than previous value.
Definition: trcDiagnostics.c:106
traceResult xTraceDiagnosticsSet(TraceDiagnosticsType_t xType, TraceBaseType_t xValue)
Set diagnostics value.
Definition: trcDiagnostics.c:54
traceResult xTraceDiagnosticsCheckStatus(void)
Check the diagnostics status.
Definition: trcDiagnostics.c:122
traceResult xTraceDiagnosticsSetIfHigher(TraceDiagnosticsType_t xType, TraceBaseType_t xValue)
Set a new diagnostics value if higher than previous value.
Definition: trcDiagnostics.c:90
traceResult xTraceDiagnosticsGet(TraceDiagnosticsType_t xType, TraceBaseType_t *pxValue)
Retrieve diagnostics value.
Definition: trcDiagnostics.c:38