shmidi 0.1 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Rakefile +6 -0
- data/lib/shmidi.rb +8 -8
- data/lib/shmidi/base.rb +1 -1
- data/lib/shmidi/controls/button.rb +5 -5
- data/lib/shmidi/controls/knob.rb +2 -2
- data/lib/shmidi/socket.rb +2 -2
- data/lib/shmidi/switch.rb +1 -1
- data/lib/shmidi/version.rb +1 -1
- data/shmidi.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 97b3d6eb99003502655b27d0a4b526781a18fe4e
|
4
|
+
data.tar.gz: 1d909010bf910633383b2544f4679daee565e82c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4f0caff94d82baab537a364bcc890a237697233781a5c663366341d83d5a84b1fd8bc09af32a258d80a2f3927a47c7a772ef3d92004fe5323f149abc0b0ac7a6
|
7
|
+
data.tar.gz: aab0d23669b5aaee1b68172e4abb421e56b6edf03ab479ae8c82bb2bb10603cde91b641a18280b8ea0a7456f7f3e7ebccbbece611914e453780697c7e600303c
|
data/Rakefile
CHANGED
@@ -1,8 +1,14 @@
|
|
1
1
|
#!/usr/bin/env rake
|
2
2
|
require 'rake/testtask'
|
3
|
+
require File.expand_path('../lib/shmidi/version.rb', __FILE__)
|
3
4
|
|
4
5
|
task :build do
|
5
6
|
system('gem build shmidi.gemspec')
|
6
7
|
end
|
7
8
|
|
9
|
+
task :install => :build do
|
10
|
+
system('gem uninstall -y shmidi')
|
11
|
+
system("gem install ./shmidi-#{Shmidi::VERSION}.gem")
|
12
|
+
end
|
13
|
+
|
8
14
|
task :default => :build
|
data/lib/shmidi.rb
CHANGED
@@ -29,19 +29,19 @@ module Shmidi
|
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
|
-
def self.TRACE
|
32
|
+
def self.TRACE
|
33
33
|
return nil unless TRACE
|
34
|
-
@@trace_queue.push(
|
34
|
+
@@trace_queue.push(yield)
|
35
35
|
end
|
36
36
|
|
37
|
-
def self.TRACE_EXTERNAL
|
37
|
+
def self.TRACE_EXTERNAL
|
38
38
|
return nil unless TRACE_EXTERNAL
|
39
|
-
@@trace_queue.push(
|
39
|
+
@@trace_queue.push(yield)
|
40
40
|
end
|
41
41
|
|
42
|
-
def self.TRACE_INTERNAL
|
42
|
+
def self.TRACE_INTERNAL
|
43
43
|
return nil unless TRACE_INTERNAL
|
44
|
-
@@trace_queue.push(
|
44
|
+
@@trace_queue.push(yield)
|
45
45
|
end
|
46
46
|
|
47
47
|
def self.ON_EXCEPTION
|
@@ -67,8 +67,8 @@ module Shmidi
|
|
67
67
|
Oj.load(str, opts)
|
68
68
|
rescue
|
69
69
|
if opts[:warn]
|
70
|
-
Shmidi
|
71
|
-
TRACE "#{str}".force_encoding(Encoding::UTF_8)
|
70
|
+
Shmidi.ON_EXCEPTION
|
71
|
+
TRACE {"#{str}".force_encoding(Encoding::UTF_8)}
|
72
72
|
end
|
73
73
|
nil
|
74
74
|
end
|
data/lib/shmidi/base.rb
CHANGED
@@ -17,15 +17,15 @@ module Shmidi
|
|
17
17
|
socket.on_event(channel, :on, note) do |event|
|
18
18
|
@pressed = true
|
19
19
|
@counter += 1 # intentionaly before handlers
|
20
|
-
Shmidi.TRACE
|
20
|
+
Shmidi.TRACE {"#{CTYPE}\t#{id}\tPRESSED\t#{event.value}"}
|
21
21
|
@__on_press.each { |b| b.call(self) }
|
22
22
|
end
|
23
23
|
|
24
|
-
@
|
24
|
+
@__on_release = []
|
25
25
|
socket.on_event(channel, :off, note) do |event|
|
26
26
|
@pressed = false
|
27
|
-
Shmidi.TRACE
|
28
|
-
@
|
27
|
+
Shmidi.TRACE {"#{CTYPE}\t#{id}\tRELEASE\t#{event.value}"}
|
28
|
+
@__on_release.each { |b| b.call(self) }
|
29
29
|
@counter += 1 # intentionaly after handlers
|
30
30
|
end
|
31
31
|
end
|
@@ -45,7 +45,7 @@ module Shmidi
|
|
45
45
|
!@pressed
|
46
46
|
end
|
47
47
|
def on_release(&block)
|
48
|
-
@
|
48
|
+
@__on_release << block
|
49
49
|
end
|
50
50
|
|
51
51
|
end
|
data/lib/shmidi/controls/knob.rb
CHANGED
@@ -15,14 +15,14 @@ module Shmidi
|
|
15
15
|
@__on_value = []
|
16
16
|
socket.on_event(channel, :cc, note) do |event|
|
17
17
|
reset(event.value)
|
18
|
-
Shmidi.TRACE
|
18
|
+
Shmidi.TRACE {"#{CTYPE}\t#{id}\t#{@value} (on_event)"}
|
19
19
|
@__on_value.each { |b| b.call(self) }
|
20
20
|
end
|
21
21
|
end
|
22
22
|
|
23
23
|
def reset(new_value=0)
|
24
24
|
@prev_value = @value
|
25
|
-
@value =
|
25
|
+
@value = new_value
|
26
26
|
end
|
27
27
|
|
28
28
|
def on_value(&block)
|
data/lib/shmidi/socket.rb
CHANGED
@@ -32,7 +32,7 @@ module Shmidi
|
|
32
32
|
@__in_dev.gets.each do |event|
|
33
33
|
event[:source] = @name
|
34
34
|
event = Event.new(event)
|
35
|
-
Shmidi.TRACE_INTERNAL
|
35
|
+
Shmidi.TRACE_INTERNAL {"#{@name} ->\t#{event}"}
|
36
36
|
@__queue.push(event)
|
37
37
|
@__on_event.each do |rule|
|
38
38
|
next if (channel = rule[:channel]) && channel != event.channel
|
@@ -61,7 +61,7 @@ module Shmidi
|
|
61
61
|
|
62
62
|
def push(events)
|
63
63
|
events = Array(events).reduce([]) do |array, event|
|
64
|
-
Shmidi.TRACE_EXTERNAL
|
64
|
+
Shmidi.TRACE_EXTERNAL {"< #{@name}\t#{event}"}
|
65
65
|
array << event.data
|
66
66
|
array
|
67
67
|
end
|
data/lib/shmidi/switch.rb
CHANGED
@@ -17,7 +17,7 @@ module Shmidi
|
|
17
17
|
|
18
18
|
def on_button_press(button)
|
19
19
|
(@switch_state = !@switch_state) ? @led.turn_on : @led.turn_off
|
20
|
-
Shmidi.TRACE
|
20
|
+
Shmidi.TRACE {"#{CTYPE}\t#{@id}\tSTATE\t#{@switch_state ? :ON : :OFF}"}
|
21
21
|
@on_switch.each { |b| b.call(self) }
|
22
22
|
end
|
23
23
|
|
data/lib/shmidi/version.rb
CHANGED
data/shmidi.gemspec
CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
|
|
18
18
|
s.add_development_dependency 'bundler', '~> 1.7'
|
19
19
|
s.add_development_dependency 'rake', '~> 10.1'
|
20
20
|
s.add_development_dependency 'minitest', '~> 4.7'
|
21
|
-
# NOTE:
|
21
|
+
# NOTE: you need to install
|
22
22
|
# specified version of perftools.rb w/o bundler first
|
23
23
|
s.add_development_dependency 'perftools.rb', '~> 2.0.4'
|
24
24
|
s.add_dependency 'ffi-coremidi', '0.3.8'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shmidi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- sinm
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-04-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|