Sha256: ebb91dc24290086af4d5bcecbfa147e7aa6b3d3f2986dbb1ca5f632e9a4a8f39

Contents?: true

Size: 1.12 KB

Versions: 1

Compression:

Stored size: 1.12 KB

Contents

module Launchpad
  
  # Generic launchpad error
  class LaunchpadError < StandardError; end
  
  # Error raised when the MIDI device specified doesn't exist
  class NoSuchDeviceError < LaunchpadError; end
  
  # Error raised when the MIDI device specified is busy
  class DeviceBusyError < LaunchpadError; end
  
  # Error raised when an input has been requested, although
  # launchpad has been initialized without input
  class NoInputAllowedError < LaunchpadError; end
  
  # Error raised when an output has been requested, although
  # launchpad has been initialized without output
  class NoOutputAllowedError < LaunchpadError; end
  
  # Error raised when x/y coordinates outside of the grid
  # or none at all were specified
  class NoValidGridCoordinatesError < LaunchpadError; end
  
  # Error raised when wrong brightness was specified
  class NoValidBrightnessError < LaunchpadError; end
  
  # Error raised when anything fails while communicating
  # with the launchpad
  class CommunicationError < LaunchpadError
    attr_accessor :source
    def initialize(e)
      super(e.portmidi_error)
      self.source = e
    end
  end
  
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
launchpad-0.1.0 lib/launchpad/errors.rb