66 #ifndef ANNOUNCEMENT_H_
67 #define ANNOUNCEMENT_H_
73 typedef void (*announcement_callback_t)(
struct announcement *a,
74 const linkaddr_t *from,
75 uint16_t id, uint16_t val);
87 announcement_callback_t callback;
115 announcement_callback_t callback);
246 typedef void (* announcement_observer)(uint16_t id, uint8_t has_value,
247 uint16_t newvalue, uint16_t oldvalue,
void announcement_remove(struct announcement *a)
Remove a previously registered announcement.
void announcement_register(struct announcement *a, uint16_t id, announcement_callback_t callback)
Register an announcement.
void announcement_register_observer_callback(announcement_observer callback)
Register an observer callback with the announcement module.
void announcement_remove_value(struct announcement *a)
Remove the value of an announcement.
void announcement_heard(const linkaddr_t *from, uint16_t id, uint16_t value)
Inform the announcement module of an incoming announcement.
struct announcement * announcement_list(void)
Get the list of registered announcements.
void announcement_listen(int time)
Listen for announcements for a specific amount of announcement periods.
void announcement_register_listen_callback(void(*callback)(int time))
Register a listen callback with the announcement module.
void announcement_init(void)
Initialize the announcement module.
Representation of an announcement.
void announcement_bump(struct announcement *a)
Bump an announcement.
void announcement_set_value(struct announcement *a, uint16_t value)
Set the value of an announcement.
Header file for the Rime address representation