* Baseline test and force threads to yield.
* Add timer tracking for executor.
* Add locking and test happy-path exit conditions.
* Move logic to multi_threaded_executor
* Address reviewer feedback by reducing scope of set.
* Expand tolerance on testing.
* comment fixup
Otherwise it seemed to me like it would yield twice.
* Split ParametrVariant into Parameter and ParameterValue
* Test expects ParameterTypeException
* get_parameter_value() -> get_value_message()
* Make to_parameter() const and rename to to_parameter_msg()
* Adding parameter array support
* PR feedback
* Matching changes in upstream branch
* EXPECT_EQ takes expected value a first argument and actual as second
* Revert "Revert "Store the subscriber, client, service and timer (#431)" (#448)"
This reverts commit 168d75cf1e.
* Convert all rcl_*_t types to shared pointers
Converts all rcl_*_t types in the memory allocation strategy to shared pointers to prevent crash happening when a subscriber is reset.
Issue: #349
* fixups
* Convert all rcl_*_t types to shared pointers
Converts all rcl_*_t types in the memory allocation strategy to shared pointers to prevent crash happening when a subscriber is reset.
Issue: #349
* fixup! Convert all rcl_*_t types to shared pointers
* fix { use on function definitions
We always put the { on a new line for function definitions and class declarations.
* Get logger name from rcl [direct]
* Get logger name from rcl [indirect]
* Update tests
* fixup on variable usage
* Move get_logger_name to NodeLogging interface
* rclcpp logging still uses fprintf all over the place.
Remove all printf log lines and replace with RCLUTILS_LOG_XXX macros.
Issue: #438
* fixup include order
* change rcutils_time_point_value_t type from uint64_t to int64_t
* small style changes
* fix test time datatype
* Update time primatives to int64_t
* change time primitive datatype to signed
* A few more instances of UL to L
* Add Logger class and give one to nodes
* Try to improve compiler errors when non-Logger is passed to macros
* Add define for 'disabling' loggers
* Add/update tests
* Linter fix
* Documentation
* Windows fix
* Move free functions to source file (windows was upset)
* Fix windows by changing prototype ordering
* Store node logger in NodeBase
* Windows is not happy with this EXPECT_ANY_THROW
* Move get_logger to a NodeLogger interface
* Move Logger into 'logger' namespace
* Move helper function for macro errors into macro header
* Remove 'logger' namespace
* Return type on separate line
* Update copyright year
* Give lifecycle nodes a logger
* Add test for lifecycle node logger
Move the default_state_machine tests to another file because having
different test fixtures was causing init to be called twice.
* Switch to static_assert for logger check
* global ns scope in macro calls
just in case
* Revert "Add test for lifecycle node logger" (make diff smaller)
demos use the loggers and we don't test other node stuff in lifecycle_node
* Update for rcutils function name change
* Add reference to Node::get_logger() in doxygen
* Rename NodeLoggerInterface to NodeLoggingInterface
* Make sure to delete service_handle when in the Service() destructor.
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
* Make sure to delete the allocated rcl_node on error paths.
This all happens *before* we setup the shared_ptr destructor,
so we have to hand delete in the error paths.
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
* Move delete rcl_node up.
It turns out that we are always going to throw in that block,
and we never access rcl_node, so just delete it very early
on.
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>