[Rock-dev] Reorg of modelling-related packages
Sylvain Joyeux
bir.sylvain at gmail.com
Thu Jun 8 18:02:40 CEST 2017
>> What I'd like to do first and foremost is split the ruby code out of
>> the C++ library. This would make the development cycle in Ruby that
>> much more streamlined (documentation, gemification & tests)
>
> Would you also put language bindings into a separate library?
I'm less clear-cut on that, as the bindings are definitely related to
the core library (a.k.a. I don't mind either way). It would definitely
make it easier on the build side.
>> tools/modelkit-transformer: what's currently the non-syskit bits of
>> drivers/transformer/ruby
>> tools/syskit-transformer: drivers/transformer/ruby/syskit/*
>> tools/orogen-transformer: the transformer/orogen plugin
>
> Why using modelkit-* and not e.g. transformer_ruby as already used for
> other packages?
Because modelkit-transformer is not transformer_ruby the way
frame_helper_ruby is related to frame_helper. It's actual relationship
with drivers/transformer is very loose.
And also because I'd like to gather the "modelling of components"
under the same hood. Long-term, the OroGen::Spec and OroGen::Loader
would go there as well as e.g. modelkit-component and
modelkit-component-rtt
> I would prefer something like syskit-plugin- and orogen-plugin- for clarity
I thought about that. I was following the rubygems convention (XXX-YYY
is YYY plugin for XXX). Moreover, I would rather not put the
syskit/transformer plugin code in the Syskit::Plugin::Transformer
namespace, sticking with Syskit::Transformer (again, a common
convention in the Ruby world).
> Any example for what runkit is supposed to contain?
The low-level runtime bits related to running, visualization and replay.
Long term, hopefully, a generalized and fully unit-tested orocos.rb layer, e.g.
runkit
runkit-rtt
runkit-async
runkit-pocolog
Regarding the SDF/Gazebo stuff
runkit-sdf # starting gazebo, setting up a vizkit3d by connecting to
a SDF instance, ...
>> I'm open for better ideas. It does split the code in smaller units -
>> against which there was a strong feeling at the origin of Rock - but
>> I've seen that explaining where is everything is REALLY hard right
>> now, simply because loosely-related things ended up being bundled
>> together.
>
> I would add: because related things are sometimes not clearly or easily
> identifiable. So your proposal would solve that in parts e.g. by
> exposing the plugins a bit more.
Absolutely.
Sylvain
More information about the Rock-dev
mailing list