require 'launchpad/interaction'
# All the fun of launchpad in one module!
#
# See Launchpad::Device for basic access to launchpad input/ouput
# and Launchpad::Interaction for advanced interaction features.
#
# The following parameters will be used throughout the library, so here are the ranges:
#
# [+type+] type of the button, one of
#
# :grid,
# :up, :down, :left, :right, :session, :user1, :user2, :mixer,
# :scene1 - :scene8
#
# [x/y] x/y coordinate (used when type is set to :grid),
# 0-7 (from left to right/top to bottom),
# mandatory when +type+ is set to :grid
# [red/green] brightness of the red/green LED,
# can be set to one of four levels:
# * off (:off, 0)
# * low brightness (:low, :lo, 1)
# * medium brightness (:medium, :med, 2)
# * full brightness (:high, :hi, 3)
# optional, defaults to :off
# [+mode+] button mode,
# one of
# * :normal
# * :flashing (LED is marked as flashing, see Launchpad::Device.flashing_on, Launchpad::Device.flashing_off and Launchpad::Device.flashing_auto)
# * :buffering (LED is written to buffer, see Launchpad::Device.start_buffering, Launchpad::Device.flush_buffer)
# optional, defaults to :normal
# [+state+] whether the button is pressed or released, :down/:up
module Launchpad
end