Files
joycontrol/buttons.py
T
2020-01-29 20:51:59 +09:00

31 lines
595 B
Python

def get_bit(value, n):
return (value >> n & 1) != 0
def flip_bit(value, n):
return value ^ (1 << n)
class Buttons:
"""
Utility class to set buttons in the input report
TODO: More Buttons
"""
def __init__(self):
self.left = 0
self.middle = 0
self.right = 0
def home(self):
self.middle = flip_bit(self.middle, 4)
def home_is_set(self):
return get_bit(self.middle, 4)
def to_list(self):
return [self.left, self.middle, self.right]
def clear(self):
self.left = self.middle = self.right = 0