libnetdude
enum LND_FilterRegObserverOp; void (*LND_FilterRegFunc) (LND_Filter *filter, void *user_data); void libnd_filter_registry_init (void); void libnd_filter_registry_add (LND_Filter *filter); void libnd_filter_registry_del (LND_Filter *filter); void libnd_filter_registry_foreach (LND_FilterRegFunc callback, void *user_data); LND_FilterRegObserver * libnd_filter_registry_observer_new (void); void libnd_filter_registry_observer_free (LND_FilterRegObserver *ob); void libnd_filter_registry_add_observer (LND_FilterRegObserver *ob); void libnd_filter_registry_del_observer (LND_FilterRegObserver *ob); void libnd_filter_registry_tell_observers (LND_Filter *filter, LND_FilterRegObserverOp op);
typedef enum { LND_FILTER_ADDED = (1 << 0), LND_FILTER_DELETED = (1 << 1) } LND_FilterRegObserverOp;
void (*LND_FilterRegFunc) (LND_Filter *filter, void *user_data);
void libnd_filter_registry_init (void);
void libnd_filter_registry_add (LND_Filter *filter);
void libnd_filter_registry_del (LND_Filter *filter);
void libnd_filter_registry_foreach (LND_FilterRegFunc callback, void *user_data);
LND_FilterRegObserver * libnd_filter_registry_observer_new (void);
void libnd_filter_registry_observer_free (LND_FilterRegObserver *ob);
void libnd_filter_registry_add_observer (LND_FilterRegObserver *ob);
void libnd_filter_registry_del_observer (LND_FilterRegObserver *ob);
void libnd_filter_registry_tell_observers (LND_Filter *filter, LND_FilterRegObserverOp op);