Class: Vizcore::Server::SceneDependencyWatcher
- Inherits:
-
Object
- Object
- Vizcore::Server::SceneDependencyWatcher
- Defined in:
- lib/vizcore/server/scene_dependency_watcher.rb
Overview
Watches a scene file and the custom GLSL files referenced by that scene.
Instance Method Summary collapse
-
#initialize(scene_file:, definition:, watcher_factory: Vizcore::DSL::FileWatcher) {|definition, changed_path| ... } ⇒ SceneDependencyWatcher
constructor
A new instance of SceneDependencyWatcher.
- #start ⇒ Vizcore::Server::SceneDependencyWatcher
- #stop(timeout: 1.0) ⇒ void
Constructor Details
#initialize(scene_file:, definition:, watcher_factory: Vizcore::DSL::FileWatcher) {|definition, changed_path| ... } ⇒ SceneDependencyWatcher
Returns a new instance of SceneDependencyWatcher.
15 16 17 18 19 20 21 22 |
# File 'lib/vizcore/server/scene_dependency_watcher.rb', line 15 def initialize(scene_file:, definition:, watcher_factory: Vizcore::DSL::FileWatcher, &on_change) @scene_file = Pathname.new(scene_file.to_s). @definition = definition @watcher_factory = watcher_factory @on_change = on_change @scene_watcher = nil @shader_watchers = [] end |
Instance Method Details
#start ⇒ Vizcore::Server::SceneDependencyWatcher
25 26 27 28 29 30 |
# File 'lib/vizcore/server/scene_dependency_watcher.rb', line 25 def start @scene_watcher = build_watcher(@scene_file) @scene_watcher.start refresh_shader_watchers(@definition) self end |
#stop(timeout: 1.0) ⇒ void
This method returns an undefined value.
34 35 36 37 |
# File 'lib/vizcore/server/scene_dependency_watcher.rb', line 34 def stop(timeout: 1.0) @scene_watcher&.stop(timeout: timeout) stop_shader_watchers(timeout: timeout) end |