apcmini.py 952 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #!/usr/bin/python
  2. from padadapter import PadAdapter
  3. from pad import LedButton, LedCtrlButton
  4. from simplemidi.options import *
  5. class APCMini(PadAdapter):
  6. _DEFAULT_PARAMS={
  7. 'name': 'Simple Midi AKAI APC Mini',
  8. 'autoconnect_in': 'APC MINI:APC MINI MIDI',
  9. 'autoconnect_out': 'APC MINI:APC MINI MIDI'
  10. }
  11. def __init__(self, param={}):
  12. PadAdapter.__init__(self, initParams(APCMini._DEFAULT_PARAMS, param))
  13. def onAdapt(self, pad):
  14. pad.ledbuttonsWidth=8
  15. pad.ledbuttonsHeight=8
  16. for i in range(pad.ledbuttonsHeight):
  17. for j in range(pad.ledbuttonsWidth):
  18. pad.ledbuttons[j+i*pad.ledbuttonsWidth]=LedButton(pad.oport, j+i*pad.ledbuttonsWidth)
  19. for i in range(64, 72):
  20. pad.ledbuttons[i]=LedCtrlButton(pad.oport, i)
  21. for i in range(82, 90):
  22. pad.ledbuttons[i]=LedCtrlButton(pad.oport, i)
  23. pad.ledbuttons[98]=LedButton(pad.oport, i)
  24. for i in pad.ledbuttons.keys():
  25. pad.input[i]=0
  26. #pad.clear()