1 /* $Id: matchpool.h 157221 2015-01-22 18:38:57Z twu $ */
2 #ifndef MATCHPOOL_INCLUDED
3 #define MATCHPOOL_INCLUDED
4 
5 #include "bool.h"
6 #include "iit-read-univ.h"
7 #include "genomicpos.h"
8 #include "types.h"
9 #include "match.h"
10 #include "list.h"
11 
12 #define T Matchpool_T
13 typedef struct T *T;
14 
15 extern void
16 Matchpool_free (T *old);
17 extern void
18 Matchpool_free_memory (T this);
19 extern T
20 Matchpool_new (void);
21 extern void
22 Matchpool_reset (T this);
23 extern void
24 Matchpool_save (T this);
25 extern void
26 Matchpool_restore (T this);
27 extern List_T
28 Matchpool_push (List_T list, T this, int querypos, int querylength, bool forwardp, bool fivep,
29 		Univcoord_T diagonal, Univ_IIT_T chromosome_iit);
30 extern List_T
31 Matchpool_push_existing (List_T list, T this, Match_T match);
32 extern List_T
33 Matchpool_pop (List_T list, Match_T *x);
34 extern List_T
35 Matchpool_transfer (List_T dest, List_T source);
36 
37 #undef T
38 #endif
39