tracksperanto 1.5.6 → 1.5.7

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -1,3 +1,7 @@
1
+ === 1.5.7 / 2009-11-08
2
+
3
+ * Add a Prefix middleware that prefixes tracker names
4
+
1
5
  === 1.5.6 / 2009-11-08
2
6
 
3
7
  * Rerelase of 1.5.5 without the huge binary blob in the middle
data/Manifest.txt CHANGED
@@ -31,6 +31,7 @@ lib/import/shake_text.rb
31
31
  lib/import/syntheyes.rb
32
32
  lib/middleware/base.rb
33
33
  lib/middleware/golden.rb
34
+ lib/middleware/prefix.rb
34
35
  lib/middleware/reformat.rb
35
36
  lib/middleware/scaler.rb
36
37
  lib/middleware/shift.rb
@@ -93,11 +94,11 @@ test/import/samples/one_tracker_with_break_in_grp.nk
93
94
  test/import/samples/shake_tracker_nodes.shk
94
95
  test/import/samples/shake_tracker_nodes_to_syntheyes.txt
95
96
  test/import/samples/shake_tracker_with_no_anim.shk
97
+ test/import/samples/shake_trackers_with_Nspline.shk
96
98
  test/import/samples/sourcefile_pftrack.2dt
97
99
  test/import/samples/three_tracks_in_one_stabilizer.shk
98
100
  test/import/samples/two_shake_trackers.txt
99
101
  test/import/samples/two_tracks_in_one_tracker.shk
100
- test/import/samples/shake_trackers_with_Nspline.shk
101
102
  test/import/test_3de_import.rb
102
103
  test/import/test_3de_import3.rb
103
104
  test/import/test_flame_import.rb
@@ -111,6 +112,7 @@ test/import/test_shake_script_import.rb
111
112
  test/import/test_shake_text_import.rb
112
113
  test/import/test_syntheyes_import.rb
113
114
  test/middleware/test_golden_middleware.rb
115
+ test/middleware/test_prefix.rb
114
116
  test/middleware/test_reformat_middleware.rb
115
117
  test/middleware/test_scaler_middleware.rb
116
118
  test/middleware/test_shift_middleware.rb
@@ -120,4 +122,4 @@ test/test_extio.rb
120
122
  test/test_format_detector.rb
121
123
  test/test_keyframe.rb
122
124
  test/test_simple_export.rb
123
- test/test_tracker.rb
125
+ test/test_tracker.rb
data/bin/tracksperanto CHANGED
@@ -25,6 +25,7 @@ slip = 0
25
25
  golden_tracks = false
26
26
  x_shift = 0
27
27
  y_shift = 0
28
+ set_prefix = ''
28
29
 
29
30
  readers = Tracksperanto.importer_names
30
31
 
@@ -43,6 +44,7 @@ parser = OptionParser.new do | p |
43
44
  exit(-1)
44
45
  end
45
46
  end
47
+ p.on(" -p", "--prefix PREFIX", String, "A prefix to prepend to tracker names in bluk") { |w| set_prefix = w }
46
48
  p.on(" -w", "--width WIDTH_IN_PIXELS", Integer, "Absolute input comp width in pixels (will try to autodetect)") { |w| width = w }
47
49
  p.on(" -h", "--height HEIGHT_IN_PIXELS", Integer, "Absolute input comp height in pixels (will try to autodetect)") {|w| height = w }
48
50
  p.on(" -xs", "--xscale X_SCALING_FACTOR", Float, "Scale the result in X by this factor (1.0 is the default)") {|sx| scale_x = sx }
@@ -82,7 +84,7 @@ end
82
84
 
83
85
  pipe = Tracksperanto::Pipeline::Base.new
84
86
  pipe.progress_block = lambda{|percent, msg| STDOUT.write(".") }
85
- pipe.run(input_file, :pix_w => width, :pix_h => height, :parser => reader_klass) do | scaler, slipper, golden, reformat, shift |
87
+ pipe.run(input_file, :pix_w => width, :pix_h => height, :parser => reader_klass) do | scaler, slipper, golden, reformat, shift, prefix |
86
88
  slipper.slip = slip
87
89
  scaler.x_factor = scale_x
88
90
  scaler.y_factor = scale_y
@@ -91,5 +93,6 @@ pipe.run(input_file, :pix_w => width, :pix_h => height, :parser => reader_klass)
91
93
  reformat.height = reformat_h if reformat_h
92
94
  shift.x_shift = x_shift
93
95
  shift.y_shift = y_shift
96
+ prefix.prefix = set_prefix
94
97
  end
95
98
  STDOUT.write("\n")
@@ -0,0 +1,13 @@
1
+ # This middleware prepends the names of the trackers passing through it with a prefix
2
+ # and an underscore
3
+ class Tracksperanto::Middleware::Prefix < Tracksperanto::Middleware::Base
4
+ attr_accessor :prefix
5
+ cast_to_string :prefix
6
+
7
+ def start_tracker_segment(tracker_name)
8
+ prefixed_name = [prefix.gsub(/_$/, ''), tracker_name]
9
+ prefixed_name.reject!{|e| e.empty? }
10
+ super(prefixed_name.join('_'))
11
+ end
12
+
13
+ end
data/lib/pipeline/base.rb CHANGED
@@ -148,7 +148,8 @@ class Tracksperanto::Pipeline::Base
148
148
  golden = Tracksperanto::Middleware::Golden.new(slipper)
149
149
  reformat = Tracksperanto::Middleware::Reformat.new(golden)
150
150
  shift = Tracksperanto::Middleware::Shift.new(reformat)
151
- [scaler, slipper, golden, reformat, shift]
151
+ prefix = Tracksperanto::Middleware::Prefix.new(shift)
152
+ [scaler, slipper, golden, reformat, shift, prefix]
152
153
  end
153
154
 
154
155
  # Open the file for writing and register it to be closed automatically
data/lib/tracksperanto.rb CHANGED
@@ -4,7 +4,7 @@ require 'tempfile'
4
4
 
5
5
  module Tracksperanto
6
6
  PATH = File.expand_path(File.dirname(__FILE__))
7
- VERSION = '1.5.6'
7
+ VERSION = '1.5.7'
8
8
 
9
9
  module Import; end
10
10
  module Export; end
@@ -0,0 +1,27 @@
1
+ require File.dirname(__FILE__) + '/../helper'
2
+
3
+ class PrefixMiddlewareTest < Test::Unit::TestCase
4
+
5
+ def test_prefix_supports_hash_init
6
+ receiver = flexmock
7
+ m = Tracksperanto::Middleware::Prefix.new(receiver, :prefix => "foo")
8
+ assert_equal "foo", m.prefix
9
+ end
10
+
11
+ def test_prefixes
12
+ receiver = flexmock
13
+ receiver.should_receive(:start_tracker_segment).once.with("Pre_Tracker")
14
+
15
+ m = Tracksperanto::Middleware::Prefix.new(receiver, :prefix => "Pre_")
16
+ m.start_tracker_segment("Tracker")
17
+ end
18
+
19
+ def test_does_not_prefix_with_empty
20
+ receiver = flexmock
21
+ receiver.should_receive(:start_tracker_segment).once.with("Tracker")
22
+
23
+ m = Tracksperanto::Middleware::Prefix.new(receiver)
24
+ m.start_tracker_segment("Tracker")
25
+ end
26
+
27
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tracksperanto
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.6
4
+ version: 1.5.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Julik Tarkhanov
@@ -77,6 +77,7 @@ files:
77
77
  - lib/import/syntheyes.rb
78
78
  - lib/middleware/base.rb
79
79
  - lib/middleware/golden.rb
80
+ - lib/middleware/prefix.rb
80
81
  - lib/middleware/reformat.rb
81
82
  - lib/middleware/scaler.rb
82
83
  - lib/middleware/shift.rb
@@ -139,11 +140,11 @@ files:
139
140
  - test/import/samples/shake_tracker_nodes.shk
140
141
  - test/import/samples/shake_tracker_nodes_to_syntheyes.txt
141
142
  - test/import/samples/shake_tracker_with_no_anim.shk
143
+ - test/import/samples/shake_trackers_with_Nspline.shk
142
144
  - test/import/samples/sourcefile_pftrack.2dt
143
145
  - test/import/samples/three_tracks_in_one_stabilizer.shk
144
146
  - test/import/samples/two_shake_trackers.txt
145
147
  - test/import/samples/two_tracks_in_one_tracker.shk
146
- - test/import/samples/shake_trackers_with_Nspline.shk
147
148
  - test/import/test_3de_import.rb
148
149
  - test/import/test_3de_import3.rb
149
150
  - test/import/test_flame_import.rb
@@ -157,6 +158,7 @@ files:
157
158
  - test/import/test_shake_text_import.rb
158
159
  - test/import/test_syntheyes_import.rb
159
160
  - test/middleware/test_golden_middleware.rb
161
+ - test/middleware/test_prefix.rb
160
162
  - test/middleware/test_reformat_middleware.rb
161
163
  - test/middleware/test_scaler_middleware.rb
162
164
  - test/middleware/test_shift_middleware.rb
@@ -169,6 +171,8 @@ files:
169
171
  - test/test_tracker.rb
170
172
  has_rdoc: true
171
173
  homepage: http://guerilla-di.org/tracksperanto
174
+ licenses: []
175
+
172
176
  post_install_message:
173
177
  rdoc_options:
174
178
  - --main
@@ -190,9 +194,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
190
194
  requirements: []
191
195
 
192
196
  rubyforge_project: guerilla-di
193
- rubygems_version: 1.3.1
197
+ rubygems_version: 1.3.5
194
198
  signing_key:
195
- specification_version: 2
199
+ specification_version: 3
196
200
  summary: Tracksperanto is a universal 2D-track translator between many apps.
197
201
  test_files:
198
202
  - test/export/test_equalizer3_export.rb
@@ -218,6 +222,7 @@ test_files:
218
222
  - test/import/test_shake_text_import.rb
219
223
  - test/import/test_syntheyes_import.rb
220
224
  - test/middleware/test_golden_middleware.rb
225
+ - test/middleware/test_prefix.rb
221
226
  - test/middleware/test_reformat_middleware.rb
222
227
  - test/middleware/test_scaler_middleware.rb
223
228
  - test/middleware/test_shift_middleware.rb