qrtools 1.0.0

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.
Files changed (66) hide show
  1. data/History.txt +6 -0
  2. data/Manifest.txt +65 -0
  3. data/README.txt +75 -0
  4. data/Rakefile +49 -0
  5. data/bin/qrdecode +14 -0
  6. data/ext/qrtools/Makefile.in +65 -0
  7. data/ext/qrtools/bitstream.cpp +147 -0
  8. data/ext/qrtools/bitstream.h +48 -0
  9. data/ext/qrtools/codedata.cpp +506 -0
  10. data/ext/qrtools/codedata.h +95 -0
  11. data/ext/qrtools/container.cpp +288 -0
  12. data/ext/qrtools/container.h +175 -0
  13. data/ext/qrtools/decodeqr.h +286 -0
  14. data/ext/qrtools/ecidecoder.cpp +341 -0
  15. data/ext/qrtools/ecidecoder.h +110 -0
  16. data/ext/qrtools/extconf.rb +24 -0
  17. data/ext/qrtools/formatinfo.cpp +195 -0
  18. data/ext/qrtools/formatinfo.h +113 -0
  19. data/ext/qrtools/galois.cpp +593 -0
  20. data/ext/qrtools/galois.h +134 -0
  21. data/ext/qrtools/imagereader.cpp +1099 -0
  22. data/ext/qrtools/imagereader.h +127 -0
  23. data/ext/qrtools/libdecodeqr.cpp +195 -0
  24. data/ext/qrtools/libdecodeqr.dep +80 -0
  25. data/ext/qrtools/libdecodeqr.dsp +160 -0
  26. data/ext/qrtools/libdecodeqr.dsw +29 -0
  27. data/ext/qrtools/libdecodeqr.mak +245 -0
  28. data/ext/qrtools/qrerror.h +40 -0
  29. data/ext/qrtools/qrtools.c +17 -0
  30. data/ext/qrtools/qrtools.h +21 -0
  31. data/ext/qrtools/qrtools_decoder.c +123 -0
  32. data/ext/qrtools/qrtools_decoder.h +10 -0
  33. data/ext/qrtools/qrtools_encoder.c +63 -0
  34. data/ext/qrtools/qrtools_encoder.h +10 -0
  35. data/ext/qrtools/qrtools_header.c +51 -0
  36. data/ext/qrtools/qrtools_header.h +10 -0
  37. data/ext/qrtools/qrtools_image.c +80 -0
  38. data/ext/qrtools/qrtools_image.h +11 -0
  39. data/ext/qrtools/qrtools_qrcode.c +36 -0
  40. data/ext/qrtools/qrtools_qrcode.h +10 -0
  41. data/ext/qrtools/qrtools_ui_camera.c +58 -0
  42. data/ext/qrtools/qrtools_ui_camera.h +10 -0
  43. data/ext/qrtools/qrtools_ui_window.c +40 -0
  44. data/ext/qrtools/qrtools_ui_window.h +10 -0
  45. data/ext/qrtools/qrtypes.h +42 -0
  46. data/ext/qrtools/version.h +42 -0
  47. data/lib/qrtools.rb +11 -0
  48. data/lib/qrtools/decoder.rb +17 -0
  49. data/lib/qrtools/encoder.rb +14 -0
  50. data/lib/qrtools/image.rb +43 -0
  51. data/lib/qrtools/qrcode.rb +54 -0
  52. data/lib/qrtools/ui/camera.rb +28 -0
  53. data/lib/qrtools/ui/window.rb +16 -0
  54. data/lib/qrtools/version.rb +3 -0
  55. data/qrtools.gemspec +38 -0
  56. data/test/assets/01-1.jpg +0 -0
  57. data/test/helper.rb +17 -0
  58. data/test/test_decoder.rb +67 -0
  59. data/test/test_encoder.rb +35 -0
  60. data/test/test_header.rb +14 -0
  61. data/test/test_image.rb +19 -0
  62. data/test/test_qrcode.rb +78 -0
  63. data/test/test_qrdecode.rb +0 -0
  64. data/test/ui/test_camera.rb +43 -0
  65. data/test/ui/test_window.rb +34 -0
  66. metadata +138 -0
File without changes
@@ -0,0 +1,43 @@
1
+ require File.expand_path(File.join(File.dirname(__FILE__), '..', 'helper'))
2
+
3
+ class CameraTestCase < QRToolsTestCase
4
+ def test_new
5
+ assert camera = QRTools::UI::Camera.new(0)
6
+ end
7
+
8
+ def test_capture
9
+ frame = nil
10
+ filename = File.join(Dir::tmpdir, 'cam.jpg')
11
+ QRTools::UI::Camera.new(0) do |camera|
12
+ frame = camera.capture
13
+ end
14
+ assert frame
15
+ frame.save filename
16
+ assert File.exist?(filename)
17
+ end
18
+
19
+ def test_block
20
+ called = false
21
+ cam = QRTools::UI::Camera.new(0) do |camera|
22
+ called = true
23
+ end
24
+ assert called
25
+ assert cam.start
26
+ assert cam.stop
27
+ end
28
+
29
+ def test_start_stop
30
+ camera = QRTools::UI::Camera.new(0)
31
+ assert camera.start
32
+ assert camera.stop
33
+ end
34
+
35
+ def test_start_locks
36
+ camera = QRTools::UI::Camera.new(0)
37
+ assert camera.start
38
+ assert_raises(ThreadError) {
39
+ camera.start
40
+ }
41
+ assert camera.stop
42
+ end
43
+ end
@@ -0,0 +1,34 @@
1
+ require File.expand_path(File.join(File.dirname(__FILE__), '..', 'helper'))
2
+
3
+ class WindowTestCase < QRToolsTestCase
4
+ def test_new
5
+ assert camera = QRTools::UI::Window.new("foo")
6
+ end
7
+
8
+ def test_show
9
+ assert camera = QRTools::UI::Window.new("foo")
10
+ assert camera.show
11
+ end
12
+
13
+ def test_hide
14
+ assert camera = QRTools::UI::Window.new("foo")
15
+ assert camera.hide
16
+ end
17
+
18
+ def test_show_image
19
+ QRTools::UI::Window.new("foo") do |window|
20
+ QRTools::UI::Camera.new(0) do |camera|
21
+ window.display camera.capture
22
+ end
23
+ end
24
+ end
25
+
26
+ def test_new_takes_block
27
+ called = false
28
+ QRTools::UI::Window.new("foo") do |window|
29
+ assert window
30
+ called = true
31
+ end
32
+ assert called
33
+ end
34
+ end
metadata ADDED
@@ -0,0 +1,138 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: qrtools
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Aaron Patterson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-02-23 00:00:00 -08:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: hoe
17
+ type: :development
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 1.9.0
24
+ version:
25
+ description: QRTools is a library for decoding QR Codes. It relies on libdecodeqr for decoding.
26
+ email:
27
+ - aaronp@rubyforge.org
28
+ executables:
29
+ - qrdecode
30
+ extensions:
31
+ - ext/qrtools/extconf.rb
32
+ extra_rdoc_files:
33
+ - History.txt
34
+ - Manifest.txt
35
+ - README.txt
36
+ files:
37
+ - History.txt
38
+ - Manifest.txt
39
+ - README.txt
40
+ - Rakefile
41
+ - bin/qrdecode
42
+ - ext/qrtools/Makefile.in
43
+ - ext/qrtools/bitstream.cpp
44
+ - ext/qrtools/bitstream.h
45
+ - ext/qrtools/codedata.cpp
46
+ - ext/qrtools/codedata.h
47
+ - ext/qrtools/container.cpp
48
+ - ext/qrtools/container.h
49
+ - ext/qrtools/decodeqr.h
50
+ - ext/qrtools/ecidecoder.cpp
51
+ - ext/qrtools/ecidecoder.h
52
+ - ext/qrtools/extconf.rb
53
+ - ext/qrtools/formatinfo.cpp
54
+ - ext/qrtools/formatinfo.h
55
+ - ext/qrtools/galois.cpp
56
+ - ext/qrtools/galois.h
57
+ - ext/qrtools/imagereader.cpp
58
+ - ext/qrtools/imagereader.h
59
+ - ext/qrtools/libdecodeqr.cpp
60
+ - ext/qrtools/libdecodeqr.dep
61
+ - ext/qrtools/libdecodeqr.dsp
62
+ - ext/qrtools/libdecodeqr.dsw
63
+ - ext/qrtools/libdecodeqr.mak
64
+ - ext/qrtools/qrerror.h
65
+ - ext/qrtools/qrtools.c
66
+ - ext/qrtools/qrtools.h
67
+ - ext/qrtools/qrtools_decoder.c
68
+ - ext/qrtools/qrtools_decoder.h
69
+ - ext/qrtools/qrtools_encoder.c
70
+ - ext/qrtools/qrtools_encoder.h
71
+ - ext/qrtools/qrtools_header.c
72
+ - ext/qrtools/qrtools_header.h
73
+ - ext/qrtools/qrtools_image.c
74
+ - ext/qrtools/qrtools_image.h
75
+ - ext/qrtools/qrtools_qrcode.c
76
+ - ext/qrtools/qrtools_qrcode.h
77
+ - ext/qrtools/qrtools_ui_camera.c
78
+ - ext/qrtools/qrtools_ui_camera.h
79
+ - ext/qrtools/qrtools_ui_window.c
80
+ - ext/qrtools/qrtools_ui_window.h
81
+ - ext/qrtools/qrtypes.h
82
+ - ext/qrtools/version.h
83
+ - lib/qrtools.rb
84
+ - lib/qrtools/decoder.rb
85
+ - lib/qrtools/encoder.rb
86
+ - lib/qrtools/image.rb
87
+ - lib/qrtools/qrcode.rb
88
+ - lib/qrtools/ui/camera.rb
89
+ - lib/qrtools/ui/window.rb
90
+ - lib/qrtools/version.rb
91
+ - qrtools.gemspec
92
+ - test/assets/01-1.jpg
93
+ - test/helper.rb
94
+ - test/test_decoder.rb
95
+ - test/test_encoder.rb
96
+ - test/test_header.rb
97
+ - test/test_image.rb
98
+ - test/test_qrcode.rb
99
+ - test/test_qrdecode.rb
100
+ - test/ui/test_camera.rb
101
+ - test/ui/test_window.rb
102
+ has_rdoc: true
103
+ homepage: http://qrtools.rubyforge.org/
104
+ post_install_message:
105
+ rdoc_options:
106
+ - --main
107
+ - README.txt
108
+ require_paths:
109
+ - lib
110
+ - ext
111
+ required_ruby_version: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - ">="
114
+ - !ruby/object:Gem::Version
115
+ version: "0"
116
+ version:
117
+ required_rubygems_version: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - ">="
120
+ - !ruby/object:Gem::Version
121
+ version: "0"
122
+ version:
123
+ requirements: []
124
+
125
+ rubyforge_project: qrtools
126
+ rubygems_version: 1.3.1
127
+ signing_key:
128
+ specification_version: 2
129
+ summary: QRTools is a library for decoding QR Codes
130
+ test_files:
131
+ - test/test_decoder.rb
132
+ - test/test_encoder.rb
133
+ - test/test_header.rb
134
+ - test/test_image.rb
135
+ - test/test_qrcode.rb
136
+ - test/test_qrdecode.rb
137
+ - test/ui/test_camera.rb
138
+ - test/ui/test_window.rb