1 /*****************************************************************
2 * SQUID - a library of functions for biological sequence analysis
3 * Copyright (C) 1992-2002 Washington University School of Medicine
5 * This source code is freely distributed under the terms of the
6 * GNU General Public License. See the files COPYRIGHT and LICENSE
8 *****************************************************************/
10 #ifndef SQRKH_INCLUDED
11 #define SQRKH_INCLUDED
15 * Header file for Rabin-Karp pattern searching on encoded
18 * Sean Eddy, Thu Oct 1 11:45:42 1992
19 * RCS $Id: rk.h 217 2011-03-19 10:27:10Z andreas $ (Original squid RCS Id: rk.h,v 1.2 1998/10/09 18:07:16 eddy Exp)
23 /* expect 32 bits for 8 nt */
24 typedef unsigned long Hashseq;
25 /* but we count to be sure...
26 RK_HASHSIZE is the number of nt that fit
28 #define RK_HASHSIZE (sizeof(Hashseq)*2)
29 /* empirically, how many nt minimum we require
30 in a pattern before we abandon rk and
31 go with something else */
34 extern int rkseq(Hashseq hashprobe, char *sequence);
35 extern Hashseq rkcomp(char *probe); /* compile a Hashseq from a pattern */
39 #endif /* SQRKH_INCLUDED */