3 * @author David Llewellyn-Jones <david@flypig.co.uk>
8 * Copyright David Llewellyn-Jones, 2020
9 * Released under the GPLv2.
11 * @brief Provides a way to match collected RPIs with downloaded DTKs
12 * @section DESCRIPTION
14 * This class provides functionality allowing RPIs that have been collected
15 * over Bluetooth to be matched against DTKs downloaded from a Diagnosis
18 * The list of RPIs and DTKs can be constructed easily using the
19 * \ref Container functions.
23 /** \addtogroup Matching
32 #include "contrac/contrac.h"
33 #include "contrac/dtk.h"
40 * An opaque structure that represents the head of the list.
42 * The internal structure can be found in match.c
44 typedef struct _MatchList MatchList
;
47 * An opaque structure that represents an item in the list.
49 * The internal structure can be found in match.c
51 typedef struct _MatchListItem MatchListItem
;
53 // Function prototypes
55 MatchList
* match_list_new();
56 void match_list_delete(MatchList
* data
);
58 void match_list_clear(MatchList
* data
);
59 size_t match_list_count(MatchList
* data
);
61 uint32_t match_list_get_day_number(MatchListItem
const * data
);
62 uint8_t match_list_get_time_interval_number(MatchListItem
const * data
);
64 MatchListItem
const * match_list_first(MatchList
const * data
);
65 MatchListItem
const * match_list_next(MatchListItem
const * data
);
67 void match_list_find_matches(MatchList
* data
, RpiList
* beacons
, DtkList
* diagnosis_keys
);
69 // Function definitions
73 /** @} addtogroup Matching*/