Class: Roby::TaskStructure::PlannedBy

Inherits:
Object
  • Object
show all
Defined in:
lib/roby/task_structure/planned_by.rb

Defined Under Namespace

Modules: Extension

Instance Method Summary collapse

Instance Method Details

#check_structure(plan) ⇒ Object

Returns a set of PlanningFailedError exceptions for all abstract tasks for which planning has failed



48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'lib/roby/task_structure/planned_by.rb', line 48

def check_structure(plan)
    result = []
    each_edge do |planned_task, planning_task, options|
        next if plan != planning_task.plan
        next unless planning_task.failed?
        next unless planned_task.self_owned?

        if (planned_task.pending? && !planned_task.executable?) || !options[:optional]
            result << [Roby::PlanningFailedError.new(planned_task, planning_task), nil]
        end
    end

    result
end