libnetdude
LND_Trace * libnd_trace_new (const char *filename);
void libnd_trace_free (LND_Trace *trace);
gboolean libnd_trace_init (LND_Trace *trace, const char *source_file);
gboolean libnd_trace_initialized (const LND_Trace *trace);
void libnd_trace_set_iterator_mode (LND_Trace *trace, LND_PacketIteratorMode mode);
LND_PacketIteratorMode libnd_trace_get_iterator_mode (const LND_Trace *trace);
void libnd_trace_set_area (LND_Trace *trace, LND_TraceArea *area);
void libnd_trace_get_area (LND_Trace *trace, LND_TraceArea *area);
const char * libnd_trace_get_name (const LND_Trace *trace);
LND_Packet * libnd_trace_get_packets (const LND_Trace *trace);
gboolean libnd_trace_save (LND_Trace *trace);
gboolean libnd_trace_save_as (LND_Trace *trace, const char *filename);
void libnd_trace_delete_hidden_packets (LND_Trace *trace);
void libnd_trace_set_dirty (LND_Trace *trace, gboolean dirty);
void libnd_trace_add_filter (LND_Trace *trace, LND_Filter *filter);
void libnd_trace_remove_filter (LND_Trace *trace, LND_Filter *filter);
void libnd_trace_clear_filters (LND_Trace *trace);
gboolean libnd_trace_has_filter (LND_Trace *trace, LND_Filter *filter);
guint64 libnd_trace_apply_filters (LND_Trace *trace);
gboolean libnd_trace_sync (LND_Trace *trace);
LND_TraceObserver * libnd_trace_observer_new (void);
void libnd_trace_observer_free (LND_TraceObserver *ob);
void libnd_trace_add_observer (LND_TraceObserver *ob);
void libnd_trace_del_observer (LND_TraceObserver *ob);
void libnd_trace_tell_observers (LND_Trace *trace, LND_TraceObserverOp op);
void libnd_trace_block_packet_observer_op (LND_Trace *trace, LND_PacketObserverOp op);
void libnd_trace_unblock_packet_observer_op (LND_Trace *trace, LND_PacketObserverOp op);
void libnd_trace_block_trace_observer_op (LND_Trace *trace, LND_TraceObserverOp op);
void libnd_trace_unblock_trace_observer_op (LND_Trace *trace, LND_TraceObserverOp op);
void libnd_trace_area_init_time (LND_TraceArea *area, struct bpf_timeval *tv_start, struct bpf_timeval *tv_end);
void libnd_trace_area_init_space (LND_TraceArea *area, double start, double end);
LND_TRACE_MODIFIED
LND_TRACE_CLEANED
LND_TRACE_JUMPED
LND_TRACE_RELOAD
LND_TRACE_CLEAR
LND_TRACE_IT_AREA_SET
#define area_space_start un.space.space_start
#define area_space_end un.space.space_end
#define area_time_start un.time.time_start
#define area_time_end un.time.time_end