Esempio n. 1
0
    void PollAllInputDevices()
    {
        if (mDrumInputEvents.Count > 0)
        {
            foreach (var item in mDrumInputEvents)
            {
                DrumInputEvent.Delete(item);
            }
            mDrumInputEvents.Clear();
        }

        // check for the keyboard messages.
        if (EnableDrumKeyChecking)
        {
            foreach (var idKey in mKeyBindings.KeyboardToDrum)
            {
                if (Input.GetKeyDown((KeyCode)idKey.Key.Key))
                {
                    mDrumInputEvents.Add(DrumInputEvent.New(idKey.Key.DeviceId, idKey.Key.Key, idKey.Value));
                }
            }
        }

        // check for the midi input device.
        var midiDriver = MainScript.Instance.UsbMidiDriver;

        if (midiDriver)
        {
            foreach (var idKey in mKeyBindings.MIDItoDrum)
            {
                if (idKey.Key.DeviceId == 0 && midiDriver.GetMidiNoteOn(idKey.Key.Key))
                {
                    mDrumInputEvents.Add(DrumInputEvent.New(idKey.Key.DeviceId, idKey.Key.Key, idKey.Value));
                }
            }
        }
    }
Esempio n. 2
0
 public static void Delete(DrumInputEvent instance)
 {
     msPool.Push(instance);
 }
Esempio n. 3
0
 public void EnqueueDrumInputEvent(DrumInputEvent drumInputEvent)
 {
     mDrumInputEvents.Add(drumInputEvent);
 }