Re: rttlua does not support enum types as arguments for operations

Peter Soetens <[email protected]>
Newsgroups gmane.science.robotics.orocos.devel
Message-ID <CAMYDobUEq1u6F5sB6bhj1uJJvmZ23dNa3BNt0=8SFi9kEg0_1A@mail.gmail.com>
On Thu, Mar 14, 2013 at 5:28 PM, Markus Klotzbuecher
<[email protected]> wrote:
> On Thu, Mar 14, 2013 at 05:01:41PM +0100, Peter Soetens wrote:
>> On Thu, Mar 14, 2013 at 4:53 PM, Ruben Smits
>> <[email protected]> wrote:
>> > Hi,
>> >
>> > I've got an enum type for which I created a typekit using typegen and an
>> > extra plugin to add these enums to the GlobalTypeRepository of RTT.
>> >
>> > I have a component that uses this enum as an argument type. Everything goes
>> > fine using the OCL Taskbrowser, I can call my operation using the enum taken
>> > from the global repository.
>> >
>> > The same however fails using rttlua with the following error:
>> >
>> > ```
>> >> component.operation("string",rtt.globals.MYENUM)
>> >
>> > /home/rsmits/orocos_toolchain/ocl/bin/rttlua-gnulinux:
>> > .../orocos_toolchain/ocl/lua/modules/rttlib.lua:716: Operation.call:
>> > argument 2 is not assignable.
>> >
>> > ```
>> >
>> > Does anyone have an idea why this happens? Is this due to the fact that I
>> > take the value from the GlobalRepository?
>>
>> It's due to the fact that it accidentally worked for primitive types
>> (int,float,...) and not for all other types.
>>
>> Patch in attachment that copies the constant over to a value data
>> source and uses that down the road.
>>
>> Fine to push Markus ?
>
> Hmm, in which other code paths might this occur? For the globals
> assigment it's not a problem, but could this happen in a rt-critical
> paths? If that's possible it should not happen silently.

Now I see...you're right, this can't happen in the rt-critical path.

We'll need a better solution.

Peter
-- 
Orocos-Dev mailing list
[email protected]
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.