1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef UI_EVENTS_OZONE_EVDEV_EVENT_DEVICE_UTIL_H_
6 #define UI_EVENTS_OZONE_EVDEV_EVENT_DEVICE_UTIL_H_
12 #define EVDEV_LONG_BITS (CHAR_BIT * sizeof(long))
13 #define EVDEV_BITS_TO_LONGS(x) (((x) + EVDEV_LONG_BITS - 1) / EVDEV_LONG_BITS)
15 static inline bool EvdevBitIsSet(const unsigned long* data
, int bit
) {
16 return data
[bit
/ EVDEV_LONG_BITS
] & (1UL << (bit
% EVDEV_LONG_BITS
));
19 static inline void EvdevSetBit(unsigned long* data
, int bit
) {
20 data
[bit
/ EVDEV_LONG_BITS
] |= (1UL << (bit
% EVDEV_LONG_BITS
));
25 #endif // UI_EVENTS_OZONE_EVDEV_EVENT_DEVICE_UTIL_H_