libosmocore 1.9.0.191-50e38
Osmocom core library
osmo_fsm Struct Reference

a description of an osmocom finite state machine More...

#include <fsm.h>

Data Fields

struct llist_head list
 global list More...
 
struct llist_head instances
 list of instances of this FSM More...
 
const char * name
 human readable name More...
 
const struct osmo_fsm_statestates
 table of state transition rules More...
 
unsigned int num_states
 number of entries in states More...
 
uint32_t allstate_event_mask
 bit-mask of events permitted in all states More...
 
void(* allstate_action )(struct osmo_fsm_inst *fi, uint32_t event, void *data)
 function pointer to be called for allstate events More...
 
void(* cleanup )(struct osmo_fsm_inst *fi, enum osmo_fsm_term_cause cause)
 clean-up function, called during termination More...
 
int(* timer_cb )(struct osmo_fsm_inst *fi)
 timer call-back for states with time-out. More...
 
int log_subsys
 logging sub-system for this FSM More...
 
const struct value_stringevent_names
 human-readable names of events More...
 
void(* pre_term )(struct osmo_fsm_inst *fi, enum osmo_fsm_term_cause cause)
 graceful exit function, called at the beginning of termination More...
 

Detailed Description

a description of an osmocom finite state machine

Field Documentation

◆ allstate_action

void(* osmo_fsm::allstate_action) (struct osmo_fsm_inst *fi, uint32_t event, void *data)

function pointer to be called for allstate events

Referenced by _osmo_fsm_inst_dispatch().

◆ allstate_event_mask

uint32_t osmo_fsm::allstate_event_mask

bit-mask of events permitted in all states

Referenced by _osmo_fsm_inst_dispatch().

◆ cleanup

void(* osmo_fsm::cleanup) (struct osmo_fsm_inst *fi, enum osmo_fsm_term_cause cause)

clean-up function, called during termination

Referenced by _osmo_fsm_inst_term().

◆ event_names

const struct value_string* osmo_fsm::event_names

human-readable names of events

Referenced by osmo_fsm_event_name(), and osmo_fsm_register().

◆ instances

struct llist_head osmo_fsm::instances

◆ list

struct llist_head osmo_fsm::list

global list

Referenced by osmo_fsm_register(), and osmo_fsm_unregister().

◆ log_subsys

int osmo_fsm::log_subsys

logging sub-system for this FSM

◆ name

const char* osmo_fsm::name

◆ num_states

unsigned int osmo_fsm::num_states

number of entries in states

Referenced by _osmo_fsm_inst_dispatch(), and osmo_fsm_state_name().

◆ pre_term

void(* osmo_fsm::pre_term) (struct osmo_fsm_inst *fi, enum osmo_fsm_term_cause cause)

graceful exit function, called at the beginning of termination

Referenced by _osmo_fsm_inst_term().

◆ states

const struct osmo_fsm_state* osmo_fsm::states

table of state transition rules

Referenced by _osmo_fsm_inst_dispatch(), osmo_fsm_state_name(), and state_chg().

◆ timer_cb

int(* osmo_fsm::timer_cb) (struct osmo_fsm_inst *fi)

timer call-back for states with time-out.

Returns
1 to request termination, 0 to keep running.

Referenced by fsm_tmr_cb().


The documentation for this struct was generated from the following file: