Module: Webmidi

Defined in:
lib/webmidi.rb,
lib/webmidi/smf.rb,
lib/webmidi/port.rb,
lib/webmidi/clock.rb,
lib/webmidi/error.rb,
lib/webmidi/music.rb,
lib/webmidi/access.rb,
lib/webmidi/message.rb,
lib/webmidi/network.rb,
lib/webmidi/version.rb,
lib/webmidi/virtual.rb,
lib/webmidi/port/map.rb,
lib/webmidi/port/base.rb,
lib/webmidi/smf/event.rb,
lib/webmidi/smf/track.rb,
lib/webmidi/transport.rb,
lib/webmidi/middleware.rb,
lib/webmidi/music/note.rb,
lib/webmidi/port/input.rb,
lib/webmidi/smf/reader.rb,
lib/webmidi/smf/writer.rb,
lib/webmidi/message/ump.rb,
lib/webmidi/music/chord.rb,
lib/webmidi/music/scale.rb,
lib/webmidi/network/osc.rb,
lib/webmidi/network/rtp.rb,
lib/webmidi/port/output.rb,
lib/webmidi/message/base.rb,
lib/webmidi/music/rhythm.rb,
lib/webmidi/smf/sequence.rb,
lib/webmidi/virtual/port.rb,
lib/webmidi/configuration.rb,
lib/webmidi/smf/tempo_map.rb,
lib/webmidi/message/parser.rb,
lib/webmidi/message/system.rb,
lib/webmidi/transport/base.rb,
lib/webmidi/transport/null.rb,
lib/webmidi/message/channel.rb,
lib/webmidi/middleware/base.rb,
lib/webmidi/middleware/panic.rb,
lib/webmidi/middleware/stack.rb,
lib/webmidi/virtual/loopback.rb,
lib/webmidi/middleware/filter.rb,
lib/webmidi/middleware/logger.rb,
lib/webmidi/transport/adapter.rb,
lib/webmidi/transport/virtual.rb,
lib/webmidi/network/apple_midi.rb,
lib/webmidi/middleware/pipeline.rb,
lib/webmidi/middleware/recorder.rb,
lib/webmidi/middleware/transpose.rb,
lib/webmidi/callback_subscription.rb,
lib/webmidi/transport/device_info.rb,
lib/webmidi/middleware/channel_map.rb,
lib/webmidi/middleware/timing_gate.rb,
lib/webmidi/middleware/velocity_clamp.rb,
lib/webmidi/middleware/velocity_scale.rb,
lib/webmidi/middleware/split_by_channel.rb,
lib/webmidi/middleware/note_range_filter.rb

Defined Under Namespace

Modules: Message, Middleware, Music, Network, Port, SMF, Transport, Virtual Classes: Access, CallbackSubscription, Clock, Configuration, ConnectionTimeoutError, Error, InvalidMessageError, InvalidSMFError, NetworkError, PortClosedError, PortNotFoundError, PortOpenError, SysExNotPermittedError, TransportError, TransportNotAvailableError, UnsupportedFormatError

Constant Summary collapse

VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.configurationObject



31
32
33
# File 'lib/webmidi/configuration.rb', line 31

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



35
36
37
# File 'lib/webmidi/configuration.rb', line 35

def configure
  yield(configuration)
end

.request_access(sysex: Webmidi.configuration.sysex, &block) ⇒ Object



157
158
159
160
161
162
163
164
165
166
167
168
# File 'lib/webmidi/access.rb', line 157

def request_access(sysex: Webmidi.configuration.sysex, &block)
  access = Access.new(sysex: sysex)
  if block
    begin
      block.call(access)
    ensure
      access.close
    end
  else
    access
  end
end

.reset_configuration!Object



39
40
41
# File 'lib/webmidi/configuration.rb', line 39

def reset_configuration!
  @configuration = Configuration.new
end