diff options
author | Nathan Scott <nathans@redhat.com> | 2020-09-09 16:56:04 +1000 |
---|---|---|
committer | Nathan Scott <nathans@redhat.com> | 2020-09-09 16:56:04 +1000 |
commit | c5808c56db166528ae7e74cedb51cc466f973b9f (patch) | |
tree | b0364c031595aacc8db222885bebb8390983429e /Macros.h | |
parent | 8ec5d4a3a07fe9a3c556a4abeac6645a7bb2235e (diff) |
Consolidate repeated macro definitions into one header
The MIN, MAX, CLAMP, MINIMUM, and MAXIMUM macros appear
throughout the codebase with many re-definitions. Make
a single copy of each in a common header file, and use
the BSD variants of MINIMUM/MAXIMUM due to conflicts in
the system <sys/param.h> headers.
Diffstat (limited to 'Macros.h')
-rw-r--r-- | Macros.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Macros.h b/Macros.h new file mode 100644 index 00000000..cb84b291 --- /dev/null +++ b/Macros.h @@ -0,0 +1,16 @@ +#ifndef HEADER_Macros +#define HEADER_Macros + +#ifndef MINIMUM +#define MINIMUM(a, b) ((a) < (b) ? (a) : (b)) +#endif + +#ifndef MAXIMUM +#define MAXIMUM(a, b) ((a) > (b) ? (a) : (b)) +#endif + +#ifndef CLAMP +#define CLAMP(x, low, high) (((x) > (high)) ? (high) : MAXIMUM(x, low)) +#endif + +#endif |