Re: Updated dataflow semantics for RTT

Herman Bruyninckx <[email protected]> Tue, 29 Sep 2015 18:07:27 +0200 (CEST)
Newsgroups gmane.science.robotics.orocos.devel
Message-ID <alpine.DEB.2.11.1509291803200.5517@pma-15-011>
On Tue, 29 Sep 2015, Sylvain Joyeux wrote:

>> I do not fully understand these last two points and why these things would
>> not already be possible today with RTT 2, perhaps by adding some simple, non
>> API-breaking helper methods to port and ConnectionManager classes. It would
>> be quite straight-forward to implement a store-and-forward channel element
>> that can be installed right after the channel input by the ConnFactory and
>> that replaces the current init functionality out of the OutputPort
>> implementation, but I do not really see why this would be beneficial or open
>> new possibilities for now.
>
> I already knew the place of ConnFactory. The problem *is* that it is
> internal and that the three operations I listed are "hidden" behind
> the ConnPolicy object. It makes the logic behind ConnPolicy horrible.
> By exposing these operations, and making them used by the tooling
> (thus deprecating the port API), you actually in effect remove the
> issue that RTT::TaskContext is trying to solve too many things. All
> the possibilities that policy encodes in a very weird way become
> different combinations of the three basic operations.

"+1": this "inversion of control" makes a lot of sense! (It is already
available in the 'event stream' paradigm...)

> For instance: yes, you can already internally to ConnFactory replace
> the "keep last written" and init stuff. But then you have to extend
> the port API *even more*. Every single change / extension to the
> connection handling right now requires to change the port API. By
> exposing ConnFactory, in effect, you remove that need, and pave the
> way for other to replace the connfactory by an extended version that
> does more (or different) without requiring even more plugins or
> whatnots.
>
> Sylvain

Herman
-- 
Orocos-Dev mailing list
[email protected]
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev