#ifndef LIB_EVENT_PRIVATE_H
#define LIB_EVENT_PRIVATE_H
struct event {
/* linked list of all events, newest first */
int refcount;
char *log_prefix;
/* Call callbacks with EVENT_CALLBACK_TYPE_FREE for this event. */
/* Fields that are exported & imported: */
const char *source_filename;
unsigned int source_linenum;
/* This is the event's name while it's being sent. It'll be removed
after the event is sent. */
char *sending_name;
};
enum event_callback_type {
/* Event is being sent */
/* Event with call_free=TRUE is being freed */
};
/* Returns TRUE if the event should continue to the next handler. Unless
stopped, the final handler logs the event if it matches the log filter. */
enum event_callback_type type,
struct failure_context *ctx,
/* Called when category is registered or unregistered. The parent category
is always already registered. */
struct event *events_get_head(void);
/* Find event category by name. This only finds registered categories. */
/* Return all registered categories. */
struct event_category *const *
event_get_registered_categories(unsigned int *count_r);
/* Register callback to be called whenever events are sent. */
/* Register callback to be called whenever categories are registered or
unregistered. */
#endif