actf 0.0.1
An acute CTF reader
Loading...
Searching...
No Matches
/home/adwe/code/actf/filter.h File Reference

A time-based event filter and its methods. More...

#include <stdbool.h>
#include <stdint.h>
#include "decoder.h"
#include "event_generator.h"

Go to the source code of this file.

Data Structures

struct  actf_filter_time_range
 A time range filter. More...

Macros

#define ACTF_FILTER_TIME_RANGE_ALL
 A filter accepting all events from start of time to end of time.

Typedefs

typedef struct actf_filter actf_filter
 A time-based event filter, implements an actf_event_generator.

Functions

actf_filteractf_filter_init (struct actf_event_generator gen, struct actf_filter_time_range range)
 Initialize a filter.
int actf_filter_filter (actf_filter *f, actf_event ***evs, size_t *evs_len)
int actf_filter_seek_ns_from_origin (actf_filter *f, int64_t tstamp)
const char * actf_filter_last_error (actf_filter *f)
void actf_filter_free (actf_filter *f)
 Free a filter.
struct actf_event_generator actf_filter_to_generator (actf_filter *f)
 Create an event generator based on a filter.

Detailed Description

A time-based event filter and its methods.

Macro Definition Documentation

◆ ACTF_FILTER_TIME_RANGE_ALL

#define ACTF_FILTER_TIME_RANGE_ALL
Value:
{.begin = INT64_MIN, .begin_has_date = true, .end = INT64_MAX, .end_has_date = true};
A time range filter.
Definition filter.h:38

A filter accepting all events from start of time to end of time.

Function Documentation

◆ actf_filter_init()

actf_filter * actf_filter_init ( struct actf_event_generator gen,
struct actf_filter_time_range range )

Initialize a filter.

Parameters
genthe generator to filter
rangethe time range to accept
Returns
a filter or NULL with errno set. A returned filter should be freed with actf_filter_free().

◆ actf_filter_filter()

int actf_filter_filter ( actf_filter * f,
actf_event *** evs,
size_t * evs_len )

◆ actf_filter_seek_ns_from_origin()

int actf_filter_seek_ns_from_origin ( actf_filter * f,
int64_t tstamp )

◆ actf_filter_last_error()

const char * actf_filter_last_error ( actf_filter * f)
See also
actf_last_error

◆ actf_filter_free()

void actf_filter_free ( actf_filter * f)

Free a filter.

Parameters
fthe filter

◆ actf_filter_to_generator()

struct actf_event_generator actf_filter_to_generator ( actf_filter * f)

Create an event generator based on a filter.

The filter is owned by the caller and must be kept alive as long as the event generator is in use.

Parameters
fthe filter
Returns
an event generator