1 /* 2 * Percepio Trace Recorder for Tracealyzer v4.10.3 3 * Copyright 2023 Percepio AB 4 * www.percepio.com 5 * 6 * SPDX-License-Identifier: Apache-2.0 7 */ 8 9 /** 10 * @file 11 * 12 * @brief Public trace dependency APIs. 13 */ 14 15 #ifndef TRC_DEPENDENCY_H 16 #define TRC_DEPENDENCY_H 17 18 #if (TRC_USE_TRACEALYZER_RECORDER == 1) && (TRC_CFG_RECORDER_MODE == TRC_RECORDER_MODE_STREAMING) 19 20 #include <trcTypes.h> 21 22 #ifdef __cplusplus 23 extern "C" { 24 #endif 25 26 /** 27 * @defgroup trace_dependency_apis Trace Dependency APIs 28 * @ingroup trace_recorder_apis 29 * @{ 30 */ 31 32 /** 33 * @brief Registers a dependency. 34 * 35 * @param[in] szName Name. 36 * @param[in] uxDependencyType The type of dependency. 37 * TRC_DEPENDENCY_TYPE_ELF: .elf file. Currently the only supported type. 38 * 39 * @retval TRC_FAIL Failure 40 * @retval TRC_SUCCESS Success 41 */ 42 traceResult xTraceDependencyRegister(const char* szName, TraceUnsignedBaseType_t uxDependencyType); 43 44 /** @} */ 45 46 #ifdef __cplusplus 47 } 48 #endif 49 50 #else 51 52 #ifndef xTraceDependencyRegister 53 #define xTraceDependencyRegister(szName, uxDependencyType) TRC_COMMA_EXPR_TO_STATEMENT_EXPR_3((void)(szName), (void)(uxDependencyType), TRC_SUCCESS) 54 #endif 55 56 #endif 57 58 #endif 59