AppNearMe µNFC stack for the NXP PN532 chip License: You can use the stack free of charge to prototype with mbed; if you want to use the stack with your commercial product, get in touch!

Dependents:   IOT_sensor_nfc AppNearMe_MuNFC_PN532_Test p2p_nfc_test NFCMoodLamp ... more

License

You can use the stack free of charge to prototype with mbed; if you want to use the stack with your commercial product, get in touch!

Committer:
AppNearMe
Date:
Wed Nov 07 18:19:09 2012 +0000
Revision:
11:5be631376e5b
Updated library

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AppNearMe 11:5be631376e5b 1 /*
AppNearMe 11:5be631376e5b 2 debug.h
AppNearMe 11:5be631376e5b 3 Copyright (c) Donatien Garnier 2012
AppNearMe 11:5be631376e5b 4 donatien.garnier@appnearme.com
AppNearMe 11:5be631376e5b 5 http://www.appnearme.com/
AppNearMe 11:5be631376e5b 6 */
AppNearMe 11:5be631376e5b 7
AppNearMe 11:5be631376e5b 8 #ifndef DEBUG_H_
AppNearMe 11:5be631376e5b 9 #define DEBUG_H_
AppNearMe 11:5be631376e5b 10
AppNearMe 11:5be631376e5b 11 #include "core/fwk.h"
AppNearMe 11:5be631376e5b 12
AppNearMe 11:5be631376e5b 13 #ifdef __cplusplus
AppNearMe 11:5be631376e5b 14 extern "C" {
AppNearMe 11:5be631376e5b 15 #endif
AppNearMe 11:5be631376e5b 16
AppNearMe 11:5be631376e5b 17 #if !DEBUG_DISABLED
AppNearMe 11:5be631376e5b 18
AppNearMe 11:5be631376e5b 19 void debug(int level, const char* module, int line, const char* fmt, ...);
AppNearMe 11:5be631376e5b 20 void debugx_enter(void);
AppNearMe 11:5be631376e5b 21 void debugx(const char* fmt, ...);
AppNearMe 11:5be631376e5b 22 void debugx_leave(void);
AppNearMe 11:5be631376e5b 23
AppNearMe 11:5be631376e5b 24 #else
AppNearMe 11:5be631376e5b 25 #ifdef __DEBUG__
AppNearMe 11:5be631376e5b 26 #undef __DEBUG__
AppNearMe 11:5be631376e5b 27 #define __DEBUG__ 0
AppNearMe 11:5be631376e5b 28 #endif
AppNearMe 11:5be631376e5b 29
AppNearMe 11:5be631376e5b 30 #endif
AppNearMe 11:5be631376e5b 31
AppNearMe 11:5be631376e5b 32 #if __DEBUG__ > 0
AppNearMe 11:5be631376e5b 33 #ifndef __MODULE__
AppNearMe 11:5be631376e5b 34 #error "__MODULE__ must be defined"
AppNearMe 11:5be631376e5b 35 #endif
AppNearMe 11:5be631376e5b 36 #endif
AppNearMe 11:5be631376e5b 37
AppNearMe 11:5be631376e5b 38 #if __DEBUG__ >= 1
AppNearMe 11:5be631376e5b 39 #define ERR(...) do{ debug(1, __MODULE__, __LINE__, __VA_ARGS__); }while(0)
AppNearMe 11:5be631376e5b 40 #else
AppNearMe 11:5be631376e5b 41 #define ERR(...)
AppNearMe 11:5be631376e5b 42 #endif
AppNearMe 11:5be631376e5b 43
AppNearMe 11:5be631376e5b 44 #if __DEBUG__ >= 2
AppNearMe 11:5be631376e5b 45 #define WARN(...) do{ debug(2, __MODULE__, __LINE__, __VA_ARGS__); }while(0)
AppNearMe 11:5be631376e5b 46 #else
AppNearMe 11:5be631376e5b 47 #define WARN(...)
AppNearMe 11:5be631376e5b 48 #endif
AppNearMe 11:5be631376e5b 49
AppNearMe 11:5be631376e5b 50 #if __DEBUG__ >= 3
AppNearMe 11:5be631376e5b 51 #define DBG(...) do{ debug(3, __MODULE__, __LINE__, __VA_ARGS__); }while(0)
AppNearMe 11:5be631376e5b 52 #define DBGX_ENTER() do{ debugx_enter(); }while(0);
AppNearMe 11:5be631376e5b 53 #define DBGX(...) do{ debugx(__VA_ARGS__); }while(0)
AppNearMe 11:5be631376e5b 54 #define DBGX_LEAVE() do{ debugx_leave(); }while(0);
AppNearMe 11:5be631376e5b 55 #else
AppNearMe 11:5be631376e5b 56 #define DBG(...)
AppNearMe 11:5be631376e5b 57 #define DBGX_ENTER()
AppNearMe 11:5be631376e5b 58 #define DBGX(...)
AppNearMe 11:5be631376e5b 59 #define DBGX_LEAVE()
AppNearMe 11:5be631376e5b 60 #endif
AppNearMe 11:5be631376e5b 61
AppNearMe 11:5be631376e5b 62 #ifdef __cplusplus
AppNearMe 11:5be631376e5b 63 }
AppNearMe 11:5be631376e5b 64 #endif
AppNearMe 11:5be631376e5b 65
AppNearMe 11:5be631376e5b 66 #endif
AppNearMe 11:5be631376e5b 67