Re: something more about utilite

Posted by matlabbe on
URL: http://official-rtab-map-forum.206.s1.nabble.com/something-more-about-utilite-tp528p529.html

UtiLite is an homemade library that I've done for my projects. You can look at the API documentation for a description of the main modules. If you use already boost or Qt, you may not find it useful. UtiLite can be seem as a very lightweight solution comparing to these two projects, so for a small project not using boost or Qt, it can be useful.

In RTAB-Map, the core is using only UtiLite's methods, so RTAB-Map can be built without Qt. Threading (UThread) and communication between threads (UEventsManager, UEventsHandler) can be achieved with this library. Well, they are not useful if you use already threads and signals from Qt or Boost (note that a signal-based approach is more efficient than an event-based approach).

What I use VERY often (even within a Qt project) is the logger to print stuff in console or a file for debugging. It is very inspired from ROS_DEBUG, ROS_INFO... formatting. See ULogger page for an example.

Another thing if you are using Qt is UPlot for plotting curves in MATLAB-like style. You can copy only UPlot.cpp and UPlot.h to have the widget alone (remove ULogger.h dependency to use alone). In RTAB-Map's Statistics panel when you show a curve, this is the widget that is used.

cheers,
Mathieu