Class: Roby::Coordination::Models::Script::Start

Inherits:
ScriptInstruction show all
Defined in:
lib/roby/coordination/models/script.rb

Overview

Script element that implements #start

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from ScriptInstruction

#cancel

Constructor Details

#initialize(task, explicit_start: false, **dependency_options) ⇒ Start

Returns a new instance of Start.



19
20
21
22
23
24
25
# File 'lib/roby/coordination/models/script.rb', line 19

def initialize(task, explicit_start: false, **dependency_options)
    super()

    @explicit_start = explicit_start
    @task = task
    @dependency_options = dependency_options
end

Instance Attribute Details

#dependency_optionsObject (readonly)

Returns the value of attribute dependency_options.



15
16
17
# File 'lib/roby/coordination/models/script.rb', line 15

def dependency_options
  @dependency_options
end

#taskObject (readonly)

Returns the value of attribute task.



15
16
17
# File 'lib/roby/coordination/models/script.rb', line 15

def task
  @task
end

Instance Method Details

#execute(script) ⇒ Object



34
35
36
37
# File 'lib/roby/coordination/models/script.rb', line 34

def execute(script)
    script.start_task(task, explicit_start: explicit_start?)
    true
end

#new(script) ⇒ Object



27
28
29
30
31
32
# File 'lib/roby/coordination/models/script.rb', line 27

def new(script)
    Start.new(
        script.instance_for(task),
        explicit_start: explicit_start?, **dependency_options
    )
end

#to_sObject



39
40
41
# File 'lib/roby/coordination/models/script.rb', line 39

def to_s
    "start(#{task}, #{dependency_options})"
end