23 #ifndef __ADJ_DELEGATE_T__ 24 #define __ADJ_DELEGATE_T__ adj_delegate_type_t ad_type
The delagate type.
void adj_delegate_remove(adj_index_t ai, adj_delegate_type_t type)
Remove a delegate from an adjacency.
struct adj_delegate_vft_t_ adj_delegate_vft_t
An ADJ delegate virtual function table.
adj_delegate_adj_deleted_t adv_adj_deleted
void adj_delegate_register_type(adj_delegate_type_t type, const adj_delegate_vft_t *vft)
Register a VFT for one of the built-in types.
u32 index_t
A Data-Path Object is an object that represents actions that are applied to packets are they are swit...
struct adj_delegate_t_ adj_delegate_t
Adj delegate.
enum adj_delegate_type_t_ adj_delegate_type_t
A Delagate is a means to implement the Delagation design pattern; the extension of an object's functi...
adj_index_t ad_adj_index
The ADJ entry object to which the delagate is attached.
void(* adj_delegate_adj_deleted_t)(adj_delegate_t *aed)
Indication that the adjacency has been deleted.
int adj_delegate_add(ip_adjacency_t *adj, adj_delegate_type_t fdt, index_t adi)
Add a delegate to an adjacency.
adj_delegate_type_t adj_delegate_register_new_type(const adj_delegate_vft_t *vft)
create a new delegate type and register a new VFT
index_t ad_index
The index passed by the provider to identify its delegate instance.
u32 adj_index_t
An index for adjacencies.
adj_delegate_format_t adv_format
adj_delegate_t * adj_delegate_get(const ip_adjacency_t *adj, adj_delegate_type_t type)
Get a delegate from an adjacency.
u8 *(* adj_delegate_format_t)(const adj_delegate_t *aed, u8 *s)
Format function for the delegate.
An ADJ delegate virtual function table.
adj_delegate_type_t_
A Delagate is a means to implement the Delagation design pattern; the extension of an object's functi...