class Roby::Tasks::Parallel
Attributes
children_success[R]
Public Class Methods
new(arguments = {})
click to toggle source
Calls superclass method
Roby::Tasks::TaskAggregator::new
# File lib/roby/tasks/parallel.rb, line 8 def initialize(arguments = {}) super @children_success = Roby::AndGenerator.new @children_success.forward_to success_event end
Public Instance Methods
<<(task)
click to toggle source
# File lib/roby/tasks/parallel.rb, line 30 def <<(task) raise "trying to change a running parallel task" if running? @tasks << task start_event.signals task.start_event depends_on task children_success << task.success_event self end
child_of(task = nil)
click to toggle source
Calls superclass method
# File lib/roby/tasks/parallel.rb, line 15 def child_of(task = nil) return super() unless task task = task.new unless task.kind_of?(Roby::Task) @tasks.each do |t| task.depends_on t task.start_event.signals t.start_event end children_success.forward_to task.success_event delete task end
name()
click to toggle source
# File lib/roby/tasks/parallel.rb, line 3 def name @name || @tasks.map { |t| t.name }.join("|") end
to_parallel()
click to toggle source
# File lib/roby/tasks/parallel.rb, line 41 def to_parallel; self end