 |
Edge AI Add-on API 2.2.0
|
Loading...
Searching...
No Matches
Go to the documentation of this file.
6#ifndef _NRF_EDGEAI_MACRO_H_
7#define _NRF_EDGEAI_MACRO_H_
17#define RETURN_IF(is_true, ret_val) \
20 if ((is_true)) { return ret_val; } \
33#define BIT_ONE(pos) (1UL << (pos))
44#define BIT_ZERO(pos) (~BIT_ONE(pos))
56#define BIT_IS_SET(value, pos) (BIT_ONE(pos) & (value) != 0)
68#define BIT_IS_CLR(value, pos) (BIT_ONE(pos) & (value) == 0)
80#define BITS_CHANGED(before, after) ((before) ^ (after))
92#define BITS_RISING(before, after) (BITS_CHANGED(before, after) & (after))
104#define BITS_FALLING(before, after) (BITS_CHANGED(before, after) & (before))
116#define ROUNDED_DIV(A, B) (((A) + ((B) / 2)) / (B))
127#define COUNT_OF(x) ((sizeof(x) / sizeof(0 [x])) / ((size_t)(!(sizeof(x) % sizeof(0 [x])))))
139#define OFFSET_OF(type, field) ((unsigned long)&(((type*)0)->field))