test

Dependents:   robotic_fish_6

Committer:
juansal12
Date:
Fri Dec 03 23:00:34 2021 +0000
Revision:
0:c792b17d9f78
uploaded sofi code ;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
juansal12 0:c792b17d9f78 1 /* mbed Microcontroller Library
juansal12 0:c792b17d9f78 2 * Copyright (c) 2006-2013 ARM Limited
juansal12 0:c792b17d9f78 3 *
juansal12 0:c792b17d9f78 4 * Licensed under the Apache License, Version 2.0 (the "License");
juansal12 0:c792b17d9f78 5 * you may not use this file except in compliance with the License.
juansal12 0:c792b17d9f78 6 * You may obtain a copy of the License at
juansal12 0:c792b17d9f78 7 *
juansal12 0:c792b17d9f78 8 * http://www.apache.org/licenses/LICENSE-2.0
juansal12 0:c792b17d9f78 9 *
juansal12 0:c792b17d9f78 10 * Unless required by applicable law or agreed to in writing, software
juansal12 0:c792b17d9f78 11 * distributed under the License is distributed on an "AS IS" BASIS,
juansal12 0:c792b17d9f78 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
juansal12 0:c792b17d9f78 13 * See the License for the specific language governing permissions and
juansal12 0:c792b17d9f78 14 * limitations under the License.
juansal12 0:c792b17d9f78 15 */
juansal12 0:c792b17d9f78 16 #ifndef MBED_DEBUG_H
juansal12 0:c792b17d9f78 17 #define MBED_DEBUG_H
juansal12 0:c792b17d9f78 18 #include "device.h"
juansal12 0:c792b17d9f78 19
juansal12 0:c792b17d9f78 20 #ifdef __cplusplus
juansal12 0:c792b17d9f78 21 extern "C" {
juansal12 0:c792b17d9f78 22 #endif
juansal12 0:c792b17d9f78 23
juansal12 0:c792b17d9f78 24 #if DEVICE_STDIO_MESSAGES
juansal12 0:c792b17d9f78 25 #include <stdio.h>
juansal12 0:c792b17d9f78 26 #include <stdarg.h>
juansal12 0:c792b17d9f78 27
juansal12 0:c792b17d9f78 28 /** Output a debug message
juansal12 0:c792b17d9f78 29 *
juansal12 0:c792b17d9f78 30 * @param format printf-style format string, followed by variables
juansal12 0:c792b17d9f78 31 */
juansal12 0:c792b17d9f78 32 static inline void debug(const char *format, ...) {
juansal12 0:c792b17d9f78 33 va_list args;
juansal12 0:c792b17d9f78 34 va_start(args, format);
juansal12 0:c792b17d9f78 35 vfprintf(stderr, format, args);
juansal12 0:c792b17d9f78 36 va_end(args);
juansal12 0:c792b17d9f78 37 }
juansal12 0:c792b17d9f78 38
juansal12 0:c792b17d9f78 39 /** Conditionally output a debug message
juansal12 0:c792b17d9f78 40 *
juansal12 0:c792b17d9f78 41 * NOTE: If the condition is constant false (!= 1) and the compiler optimization
juansal12 0:c792b17d9f78 42 * level is greater than 0, then the whole function will be compiled away.
juansal12 0:c792b17d9f78 43 *
juansal12 0:c792b17d9f78 44 * @param condition output only if condition is true (== 1)
juansal12 0:c792b17d9f78 45 * @param format printf-style format string, followed by variables
juansal12 0:c792b17d9f78 46 */
juansal12 0:c792b17d9f78 47 static inline void debug_if(int condition, const char *format, ...) {
juansal12 0:c792b17d9f78 48 if (condition == 1) {
juansal12 0:c792b17d9f78 49 va_list args;
juansal12 0:c792b17d9f78 50 va_start(args, format);
juansal12 0:c792b17d9f78 51 vfprintf(stderr, format, args);
juansal12 0:c792b17d9f78 52 va_end(args);
juansal12 0:c792b17d9f78 53 }
juansal12 0:c792b17d9f78 54 }
juansal12 0:c792b17d9f78 55
juansal12 0:c792b17d9f78 56 #else
juansal12 0:c792b17d9f78 57 static inline void debug(const char *format, ...) {}
juansal12 0:c792b17d9f78 58 static inline void debug_if(int condition, const char *format, ...) {}
juansal12 0:c792b17d9f78 59
juansal12 0:c792b17d9f78 60 #endif
juansal12 0:c792b17d9f78 61
juansal12 0:c792b17d9f78 62 #ifdef __cplusplus
juansal12 0:c792b17d9f78 63 }
juansal12 0:c792b17d9f78 64 #endif
juansal12 0:c792b17d9f78 65
juansal12 0:c792b17d9f78 66 #endif