pixo 0.2.4 → 0.2.5

Sign up to get free protection for your applications and to get access to all the features.
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