On Wed, May 14, 2008 at 5:04 PM, Jan Kiszka <[EMAIL PROTECTED]> wrote:
>
> Karl Reichert wrote:
>  > Jan Kiszka wrote:
>  >> Karl Reichert wrote:
>  >>> Hello,
>  >>>
>  >>> I have two stations running RTnet, one as a master and one as a slave. I
>  >> want
>  >>> to measure the time, which a message, sent from master to slave, takes.
>  >> But,
>  >>> I don't want the time of the transmission only, but the complete time of
>  >> all
>  >>> software layers this data is processed through.
>  >>>
>  >>> _______________     _______________
>  >>> |           A                 |     |               D                 |
>  >>> |______________|    |______________|
>  >>> |           B                 |     |               C                 |
>  >>> |______________|    |______________|
>  >>> |   RTnet (Master)    |     |    RTnet (Slave)        |
>  >>> |______________|    |______________|
>  >>>             |                                 |
>  >>>             |______________|
>  >>>
>  >>> So, I create the data, that should be send, in Layer A (Master) and send
>  >> it
>  >>> over RTnet to Layer D (Slave).
>  >>>
>  >>> I want to take the time when the data leaves A and when it arrives D
>  >> with
>  >>> rtdm_clock_read(). If I have the offset between master and slave, I can
>  >>> calculate the time it took to pass A, B, both RTnet stacks, C and D.
>  >>>
>  >>> As RTnet keeps track of the offset in it's stack, I want to use this
>  >> value. Is
>  >>> it possible via the API? I didn't found anything. Or do I have to
>  >> manipulate
>  >>> the stack to pass the offset to the higher layers (C and D)?
>  >> If RTmac/TDMA is in use, you can obtain the clock offset via
>  >> RTMAC_RTIOC_TIMEOFFSET from the RTDM device "TDMA<x>" (where "<x>"
>  >> corresponds to "rteth<x>").
>  >>
>  >> Jan
>  >>
>  >
>  > When I try to compile my application (xenomai native skin, user task), I 
> get an error, saying rtdm_driver.h (which contains the prototype for 
> rtdm_clock_read()) is for kernel mode tasks only.
>
>  So you are in userland, obviously...
>
>
>  >
>  > How can I get a timestamp in a xenomai native user task? Is there sth 
> equivalent to rtdm_clock_read()? Or do I have to write a kernel task?
>
>  Nope, there is rt_timer_read & Co. for native user-mode applications.
>
>  I was about to remark that everything can be found in the API docs - but
>  it can't! Any volunteer to add the missing functions from native/timer.h
>  to the docs? Maybe there is just something broken for doxygen. TIA!

The problem is that __KERNEL__ is in the list of PREDEFINED macros,
and the comments in native/timer.h are in the !__KERNEL__ section.

-- 
 Gilles

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft 
Defy all challenges. Microsoft(R) Visual Studio 2008. 
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
RTnet-users mailing list
RTnet-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rtnet-users

Reply via email to