nm_strategy.h
Go to the documentation of this file.
PUK_IFACE_TYPE(NewMad_Strategy, struct nm_strategy_iface_s)
strategy capabilities, not supposed to be used by nmad core, but may be usefull for the user to check...
Definition nm_strategy.h:26
int supports_priorities
whether the strategy supports priority-based scheduling
Definition nm_strategy.h:27
void(* pw_send_complete)(void *_status, struct nm_pkt_wrap_s *p_pw)
notify send completion for pw
Definition nm_strategy.h:59
void(* rdv_accept)(void *_status, nm_gate_t p_gate)
Emit RTR series for received RDV requests.
Definition nm_strategy.h:50
nm_drv_vect_t(* connect)(void *_status, nm_gate_t p_gate, nm_drv_vect_t p_available_drvs)
selects the drivers to actually use, among the list of available drivers for the given gate
Definition nm_strategy.h:37
void(* try_and_commit)(void *_status, nm_gate_t p_gate)
Compute and apply the best possible packet rearrangement, then return next packet to send.
Definition nm_strategy.h:47
void(* proto)(void *_status, nm_gate_t p_gate, struct nm_pkt_wrap_s *p_pw, const void *ptr, nm_len_t len)
process strat private protocol
Definition nm_strategy.h:53
void(* pw_send_post)(void *_status, struct nm_pkt_wrap_s *p_pw)
schedule the given pw for sending
Definition nm_strategy.h:56
void(* pw_recv_complete)(void *_status, struct nm_pkt_wrap_s *p_pw)
notify recv completion for pw
Definition nm_strategy.h:62
void(* init)(puk_context_t p_context)
init the strategy context (shared across instances)
Definition nm_strategy.h:31
struct nm_strategy_iface_s::nm_strategy_capabilities_s capabilities