pixo 0.2.4 → 0.2.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3c768f3891cfcb85f5e9e8f8f1ce09ff76cd4ea4
4
- data.tar.gz: 00de3ba711e9ea899d1e60a79029daf59ab2c410
3
+ metadata.gz: 71b62931610d1ad22eba23129b030299806e270b
4
+ data.tar.gz: 4b1ecaac6f2cd5704f3d0b0530d28a0c8f4b9cbb
5
5
  SHA512:
6
- metadata.gz: aa3d80d0565794ba223af4d4c970b3da18912ee3021239fbd5f2dc09b30ee741c5fd0d635d8e7d63d58cf5467c403a2c767240dc60005a4197094012333aee19
7
- data.tar.gz: 2adf7b62e5c2c4e26eab781c66e29a8854b8486b78126775f6db19b8adf567b79f489993b2f206b33e2dee25ceba624bb7fab7aa18bca75e1840536998efb7e8
6
+ metadata.gz: 0cc8295b5af50786ccd1956faef37012d0689bef05d99b6cf31e816604223c7d4ea1f571c0a694d2c4ea4e58c70089371890df8ff323552e4f5ff0e239de2611
7
+ data.tar.gz: 42c4e473aaf1230153811f348416cdec546d2ea25cd0a7812c38d16a35a048573bc3b6ffc448080fd04f1505db8d1853596584ad6af50cee83e4507defc7d468
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- pixo (0.2.4)
4
+ pixo (0.2.5)
5
5
  concurrent-ruby
6
6
 
7
7
  GEM
@@ -13,6 +13,11 @@ module Pixo
13
13
 
14
14
  def run
15
15
  while(running)
16
+ @procs_lock.synchronize {
17
+ @procs.each {|proc| proc.call(self) }
18
+ @procs.clear
19
+ }
20
+
16
21
  self.running = tick(active_pattern, brightness) && running
17
22
  end
18
23
  close
@@ -22,6 +27,13 @@ module Pixo
22
27
  self.running = false
23
28
  end
24
29
 
30
+ def post(proc)
31
+
32
+ @procs_lock.synchronize {
33
+ @procs << proc
34
+ }
35
+ end
36
+
25
37
 
26
38
  def patterns
27
39
  unless @patterns
@@ -68,8 +80,10 @@ module Pixo
68
80
  self.running = true
69
81
  self.brightness = 1.0
70
82
  self.leds_on = true
83
+ @procs = Array.new
71
84
 
72
- add_fadecandy(Pixo::Native::FadeCandy.new('localhost', 8))
85
+ @procs_lock = Mutex.new
86
+ #
73
87
  end
74
88
  end
75
89
  end
data/lib/pixo/renderer.rb CHANGED
@@ -36,7 +36,24 @@ module Pixo
36
36
  service.request(Pixo::Renderer::GetLedsOn.new())
37
37
  end
38
38
 
39
+ def add_fadecandy(hostname, count)
40
+ service.request(Pixo::Renderer::AddFadecandy.new(hostname, count))
41
+ end
42
+
39
43
  private
44
+
45
+ class AddFadecandy
46
+ def initialize(hostname, count)
47
+ @hostname = hostname
48
+ @count = count
49
+ end
50
+
51
+ def call
52
+ Pixo::Application.instance.post Proc.new { |app| app.add_fadecandy(Pixo::Native::FadeCandy.new(@hostname, @count)) }
53
+ self
54
+ end
55
+ end
56
+
40
57
  class GetPatternName
41
58
  def call
42
59
  Pixo::Application.instance.patterns.key(Pixo::Application.instance.active_pattern)
data/lib/pixo/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Pixo
2
- VERSION = "0.2.4"
2
+ VERSION = "0.2.5"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pixo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Constantine