class OroGen::Loaders::RTT

Constants

DIR
STANDARD_PROJECT_SPECS
STANDARD_TYPEKIT_SPECS

Public Class Methods

loader() click to toggle source
# File lib/orogen/loaders/rtt.rb, line 7
def self.loader
    loader = Files.new
    STANDARD_PROJECT_SPECS.each do |name, dir|
        loader.register_orogen_file(File.join(dir, "#{name}.orogen"), name)
    end
    STANDARD_TYPEKIT_SPECS.each do |name, dir|
        loader.register_typekit(dir, name)
    end
    loader
end
new(orocos_target = ENV['OROCOS_TARGET'], root_loader = self) click to toggle source
Calls superclass method OroGen::Loaders::PkgConfig.new
# File lib/orogen/loaders/rtt.rb, line 18
def initialize(orocos_target = ENV['OROCOS_TARGET'], root_loader = self)
    super
end
setup_loader(loader) click to toggle source
# File lib/orogen/loaders/rtt.rb, line 50
def self.setup_loader(loader)
    standard_typekits.each do |tk|
        loader.register_typekit_model(tk)
        # One additional step for us: register the types in
        # tk.typelist manually. This is needed as we use the
        # typelist to register non-normalized names
        tk.typelist.each do |typename|
            loader.typekits_by_type_name[typename] ||= Array.new
            loader.typekits_by_type_name[typename] << tk
        end
    end
    standard_projects.each do |proj|
        loader.register_project_model(proj)
    end
end
standard_projects() click to toggle source
# File lib/orogen/loaders/rtt.rb, line 22
def self.standard_projects
    if !@standard_projects
        loader = self.loader
        @standard_projects = STANDARD_PROJECT_SPECS.map do |name, dir|
            loader.project_model_from_name(name)
        end
    end
    @standard_projects
end
standard_typekits() click to toggle source
# File lib/orogen/loaders/rtt.rb, line 32
def self.standard_typekits
    if !@standard_typekits
        loader = self.loader
        @standard_typekits = STANDARD_TYPEKIT_SPECS.map do |name, _|
            typekit = loader.typekit_model_from_name(name)
            typekit.virtual = true
            # Some fine-tuning :( Super-HACK
            if name == 'orocos'
                type = typekit.registry.create_container '/std/string', '/std/string'
                type.metadata.set 'orogen_include', 'string'
                typekit.registry.alias '/string', '/std/string'
            end
            typekit
        end
    end
    return @standard_typekits
end

Public Instance Methods

clear() click to toggle source
Calls superclass method OroGen::Loaders::PkgConfig#clear
# File lib/orogen/loaders/rtt.rb, line 66
def clear
    super
    RTT.setup_loader(self)
end