Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding callback groups in executor (#1218)
* Initial version of callback-group-based Executor. Signed-off-by: Ralph Lange <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * removed RealTimeClass Signed-off-by: Pedro Pena <[email protected]> * can add multiple cbgs and check if callback is owned by another exec before adding Signed-off-by: Pedro Pena <[email protected]> * cbg var for option to add to executor Signed-off-by: Pedro Pena <[email protected]> * getter for callback groups in executor Signed-off-by: Pedro Pena <[email protected]> * test Signed-off-by: Pedro Pena <[email protected]> * add many nodes and callback groups together Signed-off-by: Pedro Pena <[email protected]> * test for map of callback groups and nodes Signed-off-by: Pedro Pena <[email protected]> * added a test for map and callback group duplication Signed-off-by: Pedro Pena <[email protected]> * add cbg that are not assign and allow to do so, only iterate through groups in maps Signed-off-by: Pedro Pena <[email protected]> * memory strat should only add handles that belong to it Signed-off-by: Pedro Pena <[email protected]> * fixed executor deconstructor seg fault bug Signed-off-by: Pedro Pena <[email protected]> * fixed remove node and guard condition bug Signed-off-by: Pedro Pena <[email protected]> * fixed uncrustify Signed-off-by: Pedro Pena <[email protected]> * cpplint Signed-off-by: Pedro Pena <[email protected]> * remove line break and add static executor in cmakelist Signed-off-by: Pedro Pena <[email protected]> * enabled static executor and added add callback group feature Signed-off-by: Pedro Pena <[email protected]> * fixed test_allocator_memory_strategy Signed-off-by: Pedro Pena <[email protected]> * test allocator Signed-off-by: Pedro Pena <[email protected]> * test mem strat with cbg feat Signed-off-by: Pedro Pena <[email protected]> * remove cbg in static executor Signed-off-by: Pedro Pena <[email protected]> * adapted guard conditions Signed-off-by: Pedro Pena <[email protected]> * collector deconstructor and remove cbg when remove node in static Signed-off-by: Pedro Pena <[email protected]> * fixed invalid group ptr seg fault introduced in wait for work Signed-off-by: Pedro Pena <[email protected]> * passes the test allocator mem strat Signed-off-by: Pedro Pena <[email protected]> * added weak node check in memory strategy; passes brawner unit tests Signed-off-by: Pedro Pena <[email protected]> * uncrustify for tests Signed-off-by: Pedro Pena <[email protected]> * lint and uncrustify Signed-off-by: Pedro Pena <[email protected]> * exposed allowable state at the node level and added unit tests Signed-off-by: Pedro Pena <[email protected]> * unit test to add one node mult executors Signed-off-by: Pedro Pena <[email protected]> * frixed allow executor reset bug Signed-off-by: Pedro Pena <[email protected]> * code block for callback group and executor Signed-off-by: Pedro Pena <[email protected]> * add code block for add/remove cbg Signed-off-by: Pedro Pena <[email protected]> * add comments for add/remove callback group Signed-off-by: Pedro Pena <[email protected]> * changed from atomic to const Signed-off-by: Pedro Pena <[email protected]> * fixed test different cbgs for nodes Signed-off-by: Pedro Pena <[email protected]> * lint Signed-off-by: Pedro Pena <[email protected]> * added disabled nodes in services and map Signed-off-by: Pedro Pena <[email protected]> * changed var name to suggestion Signed-off-by: Pedro Pena <[email protected]> * comment for callback group constructor Signed-off-by: Pedro Pena <[email protected]> * header ordering Signed-off-by: Pedro Pena <[email protected]> * Update rclcpp/include/rclcpp/executor.hpp Co-authored-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * removed const ref and made protected Signed-off-by: Pedro Pena <[email protected]> * removing internals in comments Signed-off-by: Pedro Pena <[email protected]> * Apply suggestions from code review general fixes Co-authored-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * remove white space Signed-off-by: Pedro Pena <[email protected]> * Apply suggestions from code review general fix Co-authored-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * fix comments Signed-off-by: Pedro Pena <[email protected]> * Update rclcpp/include/rclcpp/executor.hpp Co-authored-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * fix comments Signed-off-by: Pedro Pena <[email protected]> * fix comments Signed-off-by: Pedro Pena <[email protected]> * general fixes Signed-off-by: Pedro Pena <[email protected]> * clang tidy and llvm deprecation and overriden fixes Signed-off-by: Pedro Pena <[email protected]> * made typedtests Signed-off-by: Pedro Pena <[email protected]> * add has callback method for static executor Signed-off-by: Pedro Pena <[email protected]> * removed map function and added comment about remove callback group Signed-off-by: Pedro Pena <[email protected]> * adding two different data structures for add_node and add_callback_group Signed-off-by: Pedro Pena <[email protected]> * nitpick changes to documentation Signed-off-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * move implementation out of header Signed-off-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * use const & Signed-off-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * splitting add node and add cbg in static executro Signed-off-by: Pedro Pena <[email protected]> * get cbgs for static executor and collector Signed-off-by: Pedro Pena <[email protected]> * add weak nodes for nodes Signed-off-by: Pedro Pena <[email protected]> * get next ready executable with two maps Signed-off-by: Pedro Pena <[email protected]> * passes tests Signed-off-by: Pedro Pena <[email protected]> * Apply suggestions from code review Co-authored-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * fixed has node function Signed-off-by: Pedro Pena <[email protected]> * fixed collect entities Signed-off-by: Pedro Pena <[email protected]> * added unit tests for removal and added 3rd data struct Signed-off-by: Pedro Pena <[email protected]> * eliminated cbs vector Signed-off-by: Pedro Pena <[email protected]> * reusing same functions and added comments Signed-off-by: Pedro Pena <[email protected]> * documentation, more exceptions, and name changes Signed-off-by: Pedro Pena <[email protected]> * Apply suggestions from code review changes for review Co-authored-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * fixed deconstructor, first remove cbgs, then nodes Signed-off-by: Pedro Pena <[email protected]> * Apply suggestions from code review Co-authored-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * fixed remove node issue Signed-off-by: Pedro Pena <[email protected]> * throw an exception in remove node of collector Signed-off-by: Pedro Pena <[email protected]> * Update rclcpp/include/rclcpp/executor.hpp Co-authored-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> * Update rclcpp/include/rclcpp/executor.hpp Co-authored-by: William Woodall <[email protected]> Signed-off-by: Pedro Pena <[email protected]> Co-authored-by: Ralph Lange <[email protected]> Co-authored-by: William Woodall <[email protected]>
- Loading branch information