rosidl icon indicating copy to clipboard operation
rosidl copied to clipboard

Add Instrumentation to Generated Msg Code

Open wjwwood opened this issue 10 years ago • 1 comments

It would be useful to have some kind of optional instrumentation on the generated messages so that we could more easily track things like construction, destruction, and coping of the messages. Other kinds of data might be useful as well, but I can't think of any off the top of my head.

AC:

  • [ ] Messages generate optional (compile time enabled) mechanism for tracking calls to the message's constructor, destructor, and any copy/move constructors.

Ideally this could be disabled/enabled by the consuming package (like with a #define before including the message's header), and that if you do not use the instrumentation then it does not affect performance at all. But importantly, the enabling/disabling of the instrumentation cannot affect the behavior of the message class.

wjwwood avatar Jun 15 '15 22:06 wjwwood

This is handy as extra proof of correct zero-copy behavior, but for now we'll rely on people understanding how the intraprocess system works (and possibly instrument it somewhere, with manual verification). We can come back to this extra feature later.

gerkey avatar Jul 14 '15 21:07 gerkey