[openrtm-users 01202] Re: Howto check for data port buffer full error

Steffen Wittmeier wittmeis @ in.tum.de
2010年 4月 27日 (火) 15:50:46 JST


Hi,

I was looking for the onOverflow callback method as I know it from 
OpenRTM 0.42 but I could not find it in version 1.0. Did it move to some 
other class?

Maybe I will try the 2nd option using the connectors in the meantime.


Steffen

On 04/27/2010 12:28 AM, Geoffrey Biggs wrote:
> One possibility is using the OnOverflow callback on your port. When a
> buffer overflow occurs, this callback should be called. You can register
> a functor to this callback for the port in your component.
>
> Aside from that, it's possible the status is not being propagated
> correctly. The buffer is not held directly in the port object. It is
> held in the connection between the two ports - think of it as the buffer
> floating in the ether mystically. You could try exposing the connectors
> and checking their status directly to see if it's being propagated properly.
>
> Geoff
>
> On 26/04/10 22:17, Steffen Wittmeier wrote:
>> Hi,
>>
>> how can I check whether a data port buffer is full and sleep for a retry?
>>
>> I tried to get the DataPortStatusList and iterated over the list to
>> check the individual status. However, I always received PORT_OK, even
>> when the buffer must have been full as I did not receive all data on the
>> other end of the connection. I also received PORT_OK when there was no
>> connection between the provider and the consumer data port.
>>
>> Any help is appreciated.
>>
>>
>> Cheers
>> Steffen Wittmeier
>>
>>
>



openrtm-users メーリングリストの案内