Class: Tracksperanto::Middleware::Base
- Inherits:
-
Object
- Object
- Tracksperanto::Middleware::Base
- Includes:
- BlockInit, Casts, ConstName, SimpleExport
- Defined in:
- lib/middleware/base.rb
Overview
The base middleware class works just like a Tracksperanto::Export::Base, but it only wraps another exporting object and does not get registered on it’s own as an export format. Middleware can be used to massage the tracks being exported in various interesting ways - like moving the coordinates, clipping the keyframes, scaling the whole export or even reversing the trackers to go backwards
Class Method Summary collapse
-
.inherited(by) ⇒ Object
Used to automatically register your middleware in Tracksperanto.middlewares Normally you wouldn’t need to override this.
Instance Method Summary collapse
-
#end_export ⇒ Object
Called on export end.
-
#end_tracker_segment ⇒ Object
Called on tracker end.
-
#export_point(at_frame_i, abs_float_x, abs_float_y, float_residual) ⇒ Object
Called for each tracker keyframe.
-
#initialize(exporter, *args_for_block_init) ⇒ Base
constructor
Constructor accepts the exporter that will be wrapped.
-
#start_export(img_width, img_height) ⇒ Object
Called on export start.
-
#start_tracker_segment(tracker_name) ⇒ Object
Called on tracker start, one for each tracker.
Methods included from SimpleExport
Methods included from ConstName
Methods included from Casts
#cast_to_float, #cast_to_int, #cast_to_string, included
Constructor Details
#initialize(exporter, *args_for_block_init) ⇒ Base
Constructor accepts the exporter that will be wrapped
18 19 20 21 |
# File 'lib/middleware/base.rb', line 18 def initialize(exporter, *args_for_block_init) @exporter = exporter super(*args_for_block_init) end |
Class Method Details
.inherited(by) ⇒ Object
Used to automatically register your middleware in Tracksperanto.middlewares Normally you wouldn’t need to override this
12 13 14 15 |
# File 'lib/middleware/base.rb', line 12 def self.inherited(by) Tracksperanto.middlewares << by super end |
Instance Method Details
#end_export ⇒ Object
Called on export end
29 30 31 |
# File 'lib/middleware/base.rb', line 29 def end_export @exporter.end_export end |
#end_tracker_segment ⇒ Object
Called on tracker end
40 41 42 |
# File 'lib/middleware/base.rb', line 40 def end_tracker_segment @exporter.end_tracker_segment end |
#export_point(at_frame_i, abs_float_x, abs_float_y, float_residual) ⇒ Object
Called for each tracker keyframe
45 46 47 |
# File 'lib/middleware/base.rb', line 45 def export_point(at_frame_i, abs_float_x, abs_float_y, float_residual) @exporter.export_point(at_frame_i, abs_float_x, abs_float_y, float_residual) end |
#start_export(img_width, img_height) ⇒ Object
Called on export start
24 25 26 |
# File 'lib/middleware/base.rb', line 24 def start_export( img_width, img_height) @exporter.start_export(img_width, img_height) end |
#start_tracker_segment(tracker_name) ⇒ Object
Called on tracker start, one for each tracker. Start of the next tracker signifies that the previous tracker has passed by
35 36 37 |
# File 'lib/middleware/base.rb', line 35 def start_tracker_segment(tracker_name) @exporter.start_tracker_segment(tracker_name) end |