Commit graph

22 commits

Author SHA1 Message Date
Alexis Pojomovsky
aead12917a Addressed peer review comments v2 2018-11-28 15:07:46 -03:00
Alexis Pojomovsky
10eebe3a3b Added checks for wait set entities 2018-11-27 14:25:56 -03:00
Alexis Pojomovsky
d03d5605c1 Addressed peer review comments 2018-11-27 14:11:47 -03:00
Alexis Pojomovsky
4ee3182380 Updated action tests to match the updated API
Added action cancel test

Added action result communication test

Added action status communication test

Added action feedback communication test

Fix wrong return code in action client
2018-11-26 19:27:53 -03:00
Michel Hidalgo
bde76ab40e [rcl action] Augments test_action_communication test. 2018-11-22 11:14:56 -03:00
Michel Hidalgo
f531f682ea [rcl action] Exposes sequence numbers for all requests and responses. (#339) 2018-11-21 16:50:03 -08:00
Jacob Perron
acc974e43b
Add action server implementation (#323)
* Implement action server init, fini, and is_valid functions

* Add macros for initializing services and publishers

* Implement rcl_action_server_get_default_options()

* Implement rcl_action_accept_new_goal()

* Add function, rcl_action_server_goal_exists(), for checking if goal is already being tracked by an action server

* Add unit tests

* Implement rcl_action_server_get_goal_handles()

* Implement rcl_action_server_get_options()

* Implement rcl_action_server_get_action_name()

* Implement rcl_action_get_goal_status_array()

* Bugfix: reset pointers and size in type finalize functions
Also let finalize functions be called on already finalized objects

* Implement send/take functions for action server services

* Implement action server publishers for feedback and status

* Implement rcl_action_process_cancel_request()

* Add partial communication tests

* Define UUID_SIZE

* Use type-erased pointer for rcl_action_publish_status()

* Implement rcl_action_clear_expired_goals()
Introduce rcl_clock_t to action server implementation.

* Change internal goal handle array to be an array of pointers.

* Add check for invalid action names

* Do heap allocation of temporary array to satisfy MSVC compiler

* Bugfix: finalize node in test tear downs and reset expected errors

* Update documentation

* Update package.xml

* Pass in rcl_clock_t to action server
Rather than initializing internally.

* Do not finalize goal handles in expire function
Instead, leave it up to the caller to finalize goal handles.
Renamed the function to rcl_action_expire_goals.
2018-11-20 12:04:13 -08:00
Michel Hidalgo
e59c14638d
Merge pull request #329 from ros2/hidmic/fix-empty-action-name
Makes rcl_action_get_*_name() functions check for empty action names.
2018-11-16 16:11:28 -03:00
Michel Hidalgo
f256da0a86
Merge pull request #319 from ros2/hidmic/action-client-implementation
Action client implementation
2018-11-15 13:42:08 -03:00
Michel Hidalgo
276aed1dff [rcl action] Addresses peer review comments (#329) 2018-11-14 19:33:21 -03:00
Michel Hidalgo
d77c9b6965 [rcl action] Makes rcl_action_get_*_name() functions check for empty action names. 2018-11-14 17:27:17 -03:00
Jacob Perron
8b00791a56
[rcl_action] Add function to check if goal can be transitioned to CANCELING (#325)
* [rcl_action] Add function for checking if goal can be transitioned to CANCELING

Add unit tests for the new function rcl_action_goal_handle_is_cancelable(), as well as rcl_action_goal_handle_is_active().
2018-11-13 11:55:28 -08:00
Michel Hidalgo
629403e29d [rcl action] Fixes bad assertion in test_action_client. 2018-11-13 14:12:00 -03:00
Michel Hidalgo
7efd1a15ae [rcl action] Adds action client tests. 2018-11-12 14:26:42 -03:00
Jacob Perron
b2578bbbda
[rcl_action] Implement goal handle (#320)
* Add action goal handle implementation and unit tests
* Add check to goal state machine transition function for index out of bounds
2018-11-06 10:28:06 -08:00
Jacob Perron
88eaa3a926 [rcl_action] Store allocator used for message initialization in the message struct
This relieves the user from providing the correct allocator when finalizing messages.
2018-11-02 12:41:13 -07:00
Jacob Perron
e64fcaf5a8 [rcl_action] Bugfix: check if number of elements to allocate for message is greater than zero 2018-11-02 12:41:13 -07:00
William Woodall
4d8cb487f8
use new error handling API from rcutils (#314)
* use new error handling API from rcutils

Signed-off-by: William Woodall <william@osrfoundation.org>

* use semicolons after macros

Signed-off-by: William Woodall <william@osrfoundation.org>

* use new error handling API from rcutils

Signed-off-by: William Woodall <william@osrfoundation.org>

* minimize vertical whitespace

Signed-off-by: William Woodall <william@osrfoundation.org>

* use semicolons after macros

Signed-off-by: William Woodall <william@osrfoundation.org>
2018-11-01 21:08:31 -05:00
Michel Hidalgo
55d83f27d7 [rcl action] Addresses peer review comments (#317) 2018-11-01 10:55:52 -03:00
Michel Hidalgo
8b65abeed5 [rcl action] Add action services and topics name getters 2018-11-01 10:54:36 -03:00
Jacob Perron
f9dfc5ddd1
[rcl_action] Implement init/fini functions for types (#312)
* Refactored API. Removed init/fini functions for types that do not necessarily need allocation on the heap.
* Added unit tests for implementation.
2018-10-31 13:36:48 -07:00
Jacob Perron
29e7dbe156
Refactor goal state machine implementation and add unit tests (#311)
* Fix buggy if-conditions in transition functions.
* Bugfix: incease number of states by one
* Cleanup CMakeLists.txt and package.xml
* Move goal state machine implementation details from header to C file
2018-10-30 16:15:10 -07:00