XDK API  3.6.0
Documentation
Macros | Typedefs | Functions
BCDS_Assert.h File Reference
#include "BCDS_Retcode.h"
+ Include dependency graph for BCDS_Assert.h:
+ This graph shows which files directly or indirectly include this file:

Macros

#define __FILE_   "Filename not defined"
 
#define __LINE__   0
 
#define assert(expression)   do{ if (!(expression)) { Assert_Dynamic((unsigned long)__LINE__,(unsigned char*)__FILE__); } } while (0)
 Program assertion macro. More...
 
#define ASSERT_CONCAT(a, b)   ASSERT_CONCAT_(a, b)
 
#define ASSERT_CONCAT_(a, b)   a##b
 
#define static_assert(expression, message)   enum { ASSERT_CONCAT(ASSERT_LINE_, __LINE__) = 1/(!!(expression)) };
 Static (compilation time) assertion macro. More...
 

Typedefs

typedef void(* Assert_Callback_T )(const unsigned long line, const unsigned char *const file)
 This data type represents a function pointer which would be executed when an assertion is triggered. More...
 

Functions

void Assert_Dynamic (const unsigned long line, const unsigned char *const file)
 Dynamic assert function. The dynamic assert function calls a user mapped callback function (where atleast all the interrupts disabling is expected) and would freeze the system by entering an endless loop. More...
 
Retcode_T Assert_Initialize (Assert_Callback_T callback)
 This function initializes the Assert module. It registers an assertion callback function. When an assertion is hit, registered callback function is called. More...
 
 BCDS_DEPRECATED (Retcode_T Assert_initialize(Assert_Callback_T callback))
 This function initializes the Assert module. It registers an assertion callback function. When an assertion is hit, registered callback function is called. More...
 
 BCDS_DEPRECATED (void Assert_dynamic(const unsigned long line, const unsigned char *const file))
 Dynamic assert function. The dynamic assert function calls a user mapped callback function (where atleast all the interrupts disabling is expected) and would freeze the system by entering an endless loop. More...
 

All rights reserved. The use is subject to the XDK SDK EULA by Bosch Connected Devices and Solutions GmbH.
This documentation file has been automatically generated on Thu Mar 14 2019 19:12:48 by doxygen 1.8.8