Skip to content

Commit a27ac81

Browse files
author
thebyohazard
committed
Register transitions from primary states to errorProcessing
Signed-off-by: thebyohazard <[email protected]>
1 parent 94b5a1d commit a27ac81

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

rcl_lifecycle/src/default_state_machine.c

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ const char * rcl_lifecycle_cleanup_label = "cleanup";
3636
const char * rcl_lifecycle_activate_label = "activate";
3737
const char * rcl_lifecycle_deactivate_label = "deactivate";
3838
const char * rcl_lifecycle_shutdown_label = "shutdown";
39+
const char * rcl_lifecycle_error_label = "error";
3940

4041
const char * rcl_lifecycle_transition_success_label = "transition_success";
4142
const char * rcl_lifecycle_transition_failure_label = "transition_failure";
@@ -391,6 +392,22 @@ _register_transitions(
391392
}
392393
}
393394

395+
// register transition from inactive to errorprocessing
396+
{
397+
rcl_lifecycle_transition_t rcl_transition_inactive_error = {
398+
rcl_lifecycle_error_label,
399+
lifecycle_msgs__msg__Transition__TRANSITION_INACTIVE_ERROR,
400+
inactive_state, errorprocessing_state
401+
};
402+
ret = rcl_lifecycle_register_transition(
403+
transition_map,
404+
rcl_transition_inactive_error,
405+
allocator);
406+
if (ret != RCL_RET_OK) {
407+
return ret;
408+
}
409+
}
410+
394411
// register transition from activating to active
395412
{
396413
rcl_lifecycle_transition_t rcl_transition_on_activate_success = {
@@ -455,6 +472,22 @@ _register_transitions(
455472
}
456473
}
457474

475+
// register transition from active to errorprocessing
476+
{
477+
rcl_lifecycle_transition_t rcl_transition_active_error = {
478+
rcl_lifecycle_error_label,
479+
lifecycle_msgs__msg__Transition__TRANSITION_ACTIVE_ERROR,
480+
active_state, errorprocessing_state
481+
};
482+
ret = rcl_lifecycle_register_transition(
483+
transition_map,
484+
rcl_transition_active_error,
485+
allocator);
486+
if (ret != RCL_RET_OK) {
487+
return ret;
488+
}
489+
}
490+
458491
// register transition from deactivating to inactive
459492
{
460493
rcl_lifecycle_transition_t rcl_transition_on_deactivate_success = {

0 commit comments

Comments
 (0)