Module: Syskit::Models::OrogenBase
- Included in:
- Deployment, TaskContext
- Defined in:
- lib/syskit/models/orogen_base.rb
Overview
Base functionality for model classes that deal with oroGen models
Instance Method Summary collapse
-
#find_model_by_orogen(orogen_model) ⇒ Syskit::TaskContext, ...
Return the syskit model that represents the given oroGen model.
-
#find_model_from_orogen_name(name) ⇒ Object
Finds the Syskit model that represents an oroGen model with that name.
-
#has_model_for?(orogen_model) ⇒ Boolean
Checks whether a syskit model exists for the given orogen model.
-
#model_for(orogen_model) ⇒ Object
Returns the syskit model for the given oroGen model.
Instance Method Details
#find_model_by_orogen(orogen_model) ⇒ Syskit::TaskContext, ...
Return the syskit model that represents the given oroGen model
26 27 28 29 30 31 32 33 |
# File 'lib/syskit/models/orogen_base.rb', line 26 def find_model_by_orogen(orogen_model) each_submodel do |syskit_model| if syskit_model.orogen_model == orogen_model return syskit_model end end nil end |
#find_model_from_orogen_name(name) ⇒ Object
Finds the Syskit model that represents an oroGen model with that name
12 13 14 15 16 17 18 19 |
# File 'lib/syskit/models/orogen_base.rb', line 12 def find_model_from_orogen_name(name) each_submodel do |syskit_model| if syskit_model.orogen_model.name == name return syskit_model end end nil end |
#has_model_for?(orogen_model) ⇒ Boolean
Checks whether a syskit model exists for the given orogen model
6 7 8 |
# File 'lib/syskit/models/orogen_base.rb', line 6 def has_model_for?(orogen_model) !!each_submodel.find { |m| m.orogen_model == orogen_model } end |
#model_for(orogen_model) ⇒ Object
Returns the syskit model for the given oroGen model
38 39 40 41 42 43 |
# File 'lib/syskit/models/orogen_base.rb', line 38 def model_for(orogen_model) if m = find_model_by_orogen(orogen_model) return m else raise ArgumentError, "there is no syskit model for #{orogen_model.name}" end end |