PES4 / Mbed OS Queue_02
Committer:
demayer
Date:
Sat Apr 11 08:15:48 2020 +0000
Revision:
1:b36bbc1c6d27
Parent:
0:6bf0743ece18
IMU-library in .h und .cpp file aufgeteilt

Who changed what in which revision?

UserRevisionLine numberNew contents of line
demayer 0:6bf0743ece18 1
demayer 0:6bf0743ece18 2 /** \addtogroup platform */
demayer 0:6bf0743ece18 3 /** @{*/
demayer 0:6bf0743ece18 4 /**
demayer 0:6bf0743ece18 5 * \defgroup platform_stats stats functions
demayer 0:6bf0743ece18 6 * @{
demayer 0:6bf0743ece18 7 */
demayer 0:6bf0743ece18 8 /* mbed Microcontroller Library
demayer 0:6bf0743ece18 9 * Copyright (c) 2016-2016 ARM Limited
demayer 0:6bf0743ece18 10 *
demayer 0:6bf0743ece18 11 * Licensed under the Apache License, Version 2.0 (the "License");
demayer 0:6bf0743ece18 12 * you may not use this file except in compliance with the License.
demayer 0:6bf0743ece18 13 * You may obtain a copy of the License at
demayer 0:6bf0743ece18 14 *
demayer 0:6bf0743ece18 15 * http://www.apache.org/licenses/LICENSE-2.0
demayer 0:6bf0743ece18 16 *
demayer 0:6bf0743ece18 17 * Unless required by applicable law or agreed to in writing, software
demayer 0:6bf0743ece18 18 * distributed under the License is distributed on an "AS IS" BASIS,
demayer 0:6bf0743ece18 19 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
demayer 0:6bf0743ece18 20 * See the License for the specific language governing permissions and
demayer 0:6bf0743ece18 21 * limitations under the License.
demayer 0:6bf0743ece18 22 */
demayer 0:6bf0743ece18 23 #ifndef MBED_STATS_H
demayer 0:6bf0743ece18 24 #define MBED_STATS_H
demayer 0:6bf0743ece18 25 #include <stdint.h>
demayer 0:6bf0743ece18 26 #include <stddef.h>
demayer 0:6bf0743ece18 27
demayer 0:6bf0743ece18 28 #ifdef __cplusplus
demayer 0:6bf0743ece18 29 extern "C" {
demayer 0:6bf0743ece18 30 #endif
demayer 0:6bf0743ece18 31
demayer 0:6bf0743ece18 32 /**
demayer 0:6bf0743ece18 33 * struct mbed_stats_heap_t definition
demayer 0:6bf0743ece18 34 */
demayer 0:6bf0743ece18 35 typedef struct {
demayer 0:6bf0743ece18 36 uint32_t current_size; /**< Bytes allocated currently. */
demayer 0:6bf0743ece18 37 uint32_t max_size; /**< Max bytes allocated at a given time. */
demayer 0:6bf0743ece18 38 uint32_t total_size; /**< Cumulative sum of bytes ever allocated. */
demayer 0:6bf0743ece18 39 uint32_t reserved_size; /**< Current number of bytes allocated for the heap. */
demayer 0:6bf0743ece18 40 uint32_t alloc_cnt; /**< Current number of allocations. */
demayer 0:6bf0743ece18 41 uint32_t alloc_fail_cnt; /**< Number of failed allocations. */
demayer 0:6bf0743ece18 42 } mbed_stats_heap_t;
demayer 0:6bf0743ece18 43
demayer 0:6bf0743ece18 44 /**
demayer 0:6bf0743ece18 45 * Fill the passed in heap stat structure with heap stats.
demayer 0:6bf0743ece18 46 *
demayer 0:6bf0743ece18 47 * @param stats A pointer to the mbed_stats_heap_t structure to fill
demayer 0:6bf0743ece18 48 */
demayer 0:6bf0743ece18 49 void mbed_stats_heap_get(mbed_stats_heap_t *stats);
demayer 0:6bf0743ece18 50
demayer 0:6bf0743ece18 51 /**
demayer 0:6bf0743ece18 52 * struct mbed_stats_stack_t definition
demayer 0:6bf0743ece18 53 */
demayer 0:6bf0743ece18 54 typedef struct {
demayer 0:6bf0743ece18 55 uint32_t thread_id; /**< Identifier for thread that owns the stack or 0 if multiple threads. */
demayer 0:6bf0743ece18 56 uint32_t max_size; /**< Maximum number of bytes used on the stack. */
demayer 0:6bf0743ece18 57 uint32_t reserved_size; /**< Current number of bytes allocated for the stack. */
demayer 0:6bf0743ece18 58 uint32_t stack_cnt; /**< Number of stacks stats accumulated in the structure. */
demayer 0:6bf0743ece18 59 } mbed_stats_stack_t;
demayer 0:6bf0743ece18 60
demayer 0:6bf0743ece18 61 /**
demayer 0:6bf0743ece18 62 * Fill the passed in structure with stack stats accumulated for all threads. The thread_id will be 0
demayer 0:6bf0743ece18 63 * and stack_cnt will represent number of threads.
demayer 0:6bf0743ece18 64 *
demayer 0:6bf0743ece18 65 * @param stats A pointer to the mbed_stats_stack_t structure to fill
demayer 0:6bf0743ece18 66 */
demayer 0:6bf0743ece18 67 void mbed_stats_stack_get(mbed_stats_stack_t *stats);
demayer 0:6bf0743ece18 68
demayer 0:6bf0743ece18 69 /**
demayer 0:6bf0743ece18 70 * Fill the passed array of stat structures with the stack stats for each available thread.
demayer 0:6bf0743ece18 71 *
demayer 0:6bf0743ece18 72 * @param stats A pointer to an array of mbed_stats_stack_t structures to fill
demayer 0:6bf0743ece18 73 * @param count The number of mbed_stats_stack_t structures in the provided array
demayer 0:6bf0743ece18 74 * @return The number of mbed_stats_stack_t structures that have been filled,
demayer 0:6bf0743ece18 75 * this is equal to the number of stacks on the system.
demayer 0:6bf0743ece18 76 */
demayer 0:6bf0743ece18 77 size_t mbed_stats_stack_get_each(mbed_stats_stack_t *stats, size_t count);
demayer 0:6bf0743ece18 78
demayer 0:6bf0743ece18 79 #ifdef __cplusplus
demayer 0:6bf0743ece18 80 }
demayer 0:6bf0743ece18 81 #endif
demayer 0:6bf0743ece18 82
demayer 0:6bf0743ece18 83 #endif
demayer 0:6bf0743ece18 84
demayer 0:6bf0743ece18 85 /** @}*/
demayer 0:6bf0743ece18 86
demayer 0:6bf0743ece18 87 /** @}*/