summaryrefslogtreecommitdiffstats
path: root/include/osmocom/core/fsm.h
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2018-01-16 18:45:56 +0100
committerPhilipp Maier <pmaier@sysmocom.de>2018-01-24 12:03:28 +0100
commit2a06a491b17b2eaa39d0a10ca43cc946b679f837 (patch)
tree889da2a995061085549b4fd61e42761309d1fd9c /include/osmocom/core/fsm.h
parenta55fe9f322cd2856ce2e26cd0fbe0b530cf8dcb6 (diff)
fsm: add functions for unlinking and changing parents
At the moment it is not possible to unlink a child from from its parent, nor is it possible to assign a new parent to a child FSM. - osmo_fsm_inst_unlink_parent(): Make it possible to unlink childs from a parent. - osmo_fsm_inst_change_parent(): Make it possible to change the parent of a child. Change-Id: I6d18cbd4ada903cf3720b3ad2a89fc643085beef
Diffstat (limited to 'include/osmocom/core/fsm.h')
-rw-r--r--include/osmocom/core/fsm.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/osmocom/core/fsm.h b/include/osmocom/core/fsm.h
index 2fbb2501..8f550d14 100644
--- a/include/osmocom/core/fsm.h
+++ b/include/osmocom/core/fsm.h
@@ -150,6 +150,10 @@ struct osmo_fsm_inst *osmo_fsm_inst_alloc(struct osmo_fsm *fsm, void *ctx, void
struct osmo_fsm_inst *osmo_fsm_inst_alloc_child(struct osmo_fsm *fsm,
struct osmo_fsm_inst *parent,
uint32_t parent_term_event);
+void osmo_fsm_inst_unlink_parent(struct osmo_fsm_inst *fi, void *ctx);
+void osmo_fsm_inst_change_parent(struct osmo_fsm_inst *fi,
+ struct osmo_fsm_inst *new_parent,
+ uint32_t new_parent_term_event);
void osmo_fsm_inst_free(struct osmo_fsm_inst *fi);
const char *osmo_fsm_event_name(struct osmo_fsm *fsm, uint32_t event);