ad-astra/ad_astra/AdAstra/src/macros/bitwise.h
schmelczerandras 26a0fd884f Copy project
2020-04-19 12:48:06 +02:00

11 lines
294 B
C

#ifndef BITWISE_H
#define BITWISE_H
#define BV(x) (1 << (x))
#define modifyBit(P, B, V) ((P) = ((P) & ~BV(B)) | ((V) << B))
#define setBit(P, B) ((P) |= BV(B))
#define clearBit(P, B) ((P) &= ~BV(B))
#define toggleBit(P, B) ((P) ^= BV(B))
#define getBit(P, B) (((P) & BV(B)) >> (B))
#endif