Declares as many planning method as there are modalities available for
service.
modalities is a set of names, of modalities defined by
Engine#define. Each planning method will generate the ModalitySelectionTask
instance that will select the given modality for service
# File lib/orocos/roby/selection_tasks.rb, line 11 def self.modality_selection(service, *modalities) # Verify that the requested modalities match the service engine = Roby.app.orocos_engine modalities.each do |name| definition = engine.defines[name] if !definition raise ArgumentError, "#{name} is not a know definition" end if !definition.fullfills?(service) raise ArgumentError, "the model of #{name} (#{definition.base_models.map(&:short_name).join(", ")}) does not provide the required service, #{service}" end end modalities.each do |name| describe "selects #{name} for #{service.name}" method(name) do Orocos::RobyPlugin::ModalitySelectionTask.subplan(service, name) end end end