Percepio Trace Recorder v4.8.0.hotfix1
Loading...
Searching...
No Matches
trcExtension.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_EXTENSION_H
16#define TRC_EXTENSION_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_EXTENSION_STATE_INDEX_VERSION 0
29#define TRC_EXTENSION_STATE_INDEX_BASE_EVENT_ID 1
30#define TRC_EXTENSION_STATE_INDEX_EVENT_COUNT 2
31
38typedef struct TraceExtensionData /* Aligned */
39{
40 TraceUnsignedBaseType_t uxNextFreeExtensionEventId;
41} TraceExtensionData_t;
42
51traceResult xTraceExtensionInitialize(TraceExtensionData_t* const pxBuffer);
52
66traceResult xTraceExtensionCreate(const char *szName, uint8_t uiMajor, uint8_t uiMinor, uint16_t uiPatch, uint32_t uiEventCount, TraceExtensionHandle_t *pxExtensionHandle);
67
77traceResult xTraceExtensionGetBaseEventId(TraceExtensionHandle_t xExtensionHandle, uint32_t *puiBaseEventId);
78
88traceResult xTraceExtensionGetConfigName(TraceExtensionHandle_t xExtensionHandle, const char** pszName);
89
98#define xTraceExtensionGetEventId(xExtensionHandle, uiLocalEventId) ((uint32_t)xTraceEntryGetStateReturn((TraceEntryHandle_t)(xExtensionHandle), TRC_EXTENSION_STATE_INDEX_BASE_EVENT_ID) + (uiLocalEventId))
99
102#ifdef __cplusplus
103}
104#endif
105
106#endif /* (TRC_CFG_RECORDER_MODE == TRC_RECORDER_MODE_STREAMING) */
107
108#endif /* (TRC_USE_TRACEALYZER_RECORDER == 1) */
109
110#endif /* TRC_EXTENSION_H */
traceResult xTraceExtensionCreate(const char *szName, uint8_t uiMajor, uint8_t uiMinor, uint16_t uiPatch, uint32_t uiEventCount, TraceExtensionHandle_t *pxExtensionHandle)
Creates trace extension.
Definition: trcExtension.c:42
traceResult xTraceExtensionInitialize(TraceExtensionData_t *const pxBuffer)
Initializes the Extension trace system.
Definition: trcExtension.c:27
traceResult xTraceExtensionGetBaseEventId(TraceExtensionHandle_t xExtensionHandle, uint32_t *puiBaseEventId)
Gets extension base event id.
Definition: trcExtension.c:82
traceResult xTraceExtensionGetConfigName(TraceExtensionHandle_t xExtensionHandle, const char **pszName)
Gets extension configuration name.
Definition: trcExtension.c:101