diff --git a/dix/input_priv.h b/dix/input_priv.h index 44598dd76..9828fea64 100644 --- a/dix/input_priv.h +++ b/dix/input_priv.h @@ -509,4 +509,13 @@ void LastEventTimeToggleResetFlag(int deviceid, Bool state); void LastEventTimeToggleResetAll(Bool state); +/* + * @brief count the bits set in the given bitmask + * + * @param mask pointer to bitmask + * @param len size of bitmask in bits (may span multiple bytes) + * @return number of bits set in the given bitmask + */ +int CountBits(const uint8_t * mask, int len); + #endif /* _XSERVER_INPUT_PRIV_H */ diff --git a/include/inputstr.h b/include/inputstr.h index 3652b0d32..4508ffb96 100644 --- a/include/inputstr.h +++ b/include/inputstr.h @@ -63,7 +63,6 @@ extern _X_EXPORT void AssignTypeAndName(DeviceIntPtr dev, #define BitIsOn(ptr, bit) (!!(((const BYTE *) (ptr))[(bit)>>3] & (1 << ((bit) & 7)))) #define SetBit(ptr, bit) (((BYTE *) (ptr))[(bit)>>3] |= (1 << ((bit) & 7))) #define ClearBit(ptr, bit) (((BYTE *)(ptr))[(bit)>>3] &= ~(1 << ((bit) & 7))) -extern _X_EXPORT int CountBits(const uint8_t * mask, int len); #define EMASKSIZE (MAXDEVICES + 2)