private static ButtonStates xor(ButtonStates a, ButtonStates b) { Debug.WriteLine("BuzzerLayer.xor()\t(static)\t{"+a+"} (+) {"+b+"}"); ButtonStates result = new ButtonStates(); if (xor(a.Red, b.Red)) result.Red = true; if (xor(a.Blue, b.Blue)) result.Blue = true; if (xor(a.Green, b.Green)) result.Green = true; if (xor(a.Orange, b.Orange)) result.Orange = true; if (xor(a.Yellow, b.Yellow)) result.Yellow = true; Debug.WriteLine("BuzzerLayer.xor()\t(static)\treturning {"+result+"}"); return result; }
public BuzzerLayer() { Debug.WriteLine("BuzzerLayer.BuzzerLayer()\t(constructor)\tStarting..."); devices = BuzzHandsetDevice.FindBuzzHandsets(); Debug.WriteLine("BuzzerLayer.BuzzerLayer()\t(constructor)\tGot devices:" + devices); Debug.WriteLine("BuzzerLayer.BuzzerLayer()\t(constructor)\t# devices:" + devices.Count); states = new ButtonStates[devices.Count * 4]; for (int i = 0; i < states.Length; i++) states[i] = new ButtonStates(); lights = new Boolean[devices.Count,4]; for (int i = 0; i < devices.Count; i++) { lights[i,0] = false; lights[i,1] = false; lights[i,2] = false; lights[i,3] = false; } foreach (IBuzzHandsetDevice d in devices) { d.DeviceRemoved += unplugged; d.ButtonChanged += somethingHappens; } }
/// <summary> /// Constructor /// </summary> /// <param name="arrStates">State of the buttons</param> public BuzzButtonChangedEventArgs(ButtonStates[] arrStates) { Buttons = arrStates; }