module Syskit::DRoby::V5::Models::TaskContextDumper

Public Instance Methods

droby_dump(peer) click to toggle source
# File lib/syskit/droby/v5/droby_dump.rb, line 291
def droby_dump(peer)
    types = orogen_model.each_interface_type.
        map { |t| peer.dump(t) }

    supermodel = Roby::DRoby::V5::DRobyModel.
        dump_supermodel(peer, self)
    provided_models = Roby::DRoby::V5::DRobyModel.
        dump_provided_models_of(peer, self)

    orogen_name = orogen_model.name
    if orogen_model.name && (project_name = orogen_model.project.name)
        begin
            project_text, _ = orogen_model.project.loader.
                project_model_text_from_name(project_name)
        rescue OroGen::ProjectNotFound
        end
    end

    if orogen_model.superclass
        orogen_superclass_name = orogen_model.superclass.name
    end

    peer.register_model(self)
    DRoby.new(
        name,
        peer.known_siblings_for(self),
        arguments,
        supermodel,
        provided_models,
        each_event.map { |_, ev| [ev.symbol, ev.controlable?, ev.terminal?] },
        orogen_name, orogen_superclass_name, project_name, project_text, types)
end