Marco Zecchini
/
Example_RTOS
Rtos API example
Embed:
(wiki syntax)
Show/hide line numbers
topo_trace.h
Go to the documentation of this file.
00001 /* 00002 * Copyright (c) 2014-2016 ARM Limited. All rights reserved. 00003 * 00004 * SPDX-License-Identifier: LicenseRef-PBL 00005 * 00006 * Licensed under the Permissive Binary License, Version 1.0 (the "License"); you may not use this file except in compliance with the License. 00007 * You may obtain a copy of the License at 00008 * 00009 * https://www.mbed.com/licenses/PBL-1.0 00010 * 00011 * See the License for the specific language governing permissions and limitations under the License. 00012 * 00013 */ 00014 #ifndef TOPO_TRACE_H 00015 #define TOPO_TRACE_H 00016 00017 #include "ns_types.h" 00018 00019 #ifdef __cplusplus 00020 extern "C" { 00021 #endif 00022 00023 /** 00024 * \file topo_trace.h 00025 * \brief test API to trace the network topology 00026 */ 00027 00028 #ifndef HAVE_TOPO_TRACE 00029 /* Use DUMMY functions if not required. */ 00030 /** \cond DOXYGEN_IGNORE */ 00031 #define topo_trace(type, address, update_type) ((void) 0) 00032 /** \endcond */ 00033 00034 #else /* HAVE_TOPO_TRACE */ 00035 00036 enum topo_type { 00037 TOPOLOGY_RPL, 00038 TOPOLOGY_MLE, 00039 TOPOLOGY_THREAD, 00040 }; 00041 00042 enum topo_update { 00043 TOPO_CLEAR = 2, // Clear all links of specified type to any address. 00044 TOPO_ADD = 1, // Add a link of specified type to specified address. 00045 TOPO_REMOVE = 0 // Remove a link of specified type to specified address. 00046 }; 00047 00048 /** Modify topology tables. 00049 * 00050 * Add or remove entries to external topology tracer. 00051 * 00052 * \param topo_type Topology link type. 00053 * \param address EUI-64 address. 00054 * \param update_type Add or remove address. 00055 */ 00056 void topo_trace(enum topo_type type, const uint8_t address[static 8], enum topo_update update_type); 00057 00058 #endif 00059 00060 #ifdef __cplusplus 00061 } 00062 #endif 00063 00064 #endif /* TOPO_TRACE_H */
Generated on Sun Jul 17 2022 08:25:32 by 1.7.2