This is an automated email from the git hooks/post-receive script. tille pushed a commit to branch master in repository psortb.
commit ff5aa84d7140cb35662be125f44b56adf3cfef58 Author: Andreas Tille <[email protected]> Date: Wed Apr 5 14:21:07 2017 +0200 New upstream version 3.0.4+dfsg --- algorithm-hmm/src/include/gki.h | 51 ---- algorithm-hmm/src/include/msa.h | 286 -------------------- algorithm-hmm/src/include/rk.h | 40 --- algorithm-hmm/src/include/sqfuncs.h | 293 --------------------- algorithm-hmm/src/include/squid.h | 473 ---------------------------------- algorithm-hmm/src/include/squidconf.h | 77 ------ algorithm-hmm/src/include/ssi.h | 193 -------------- algorithm-hmm/src/include/stopwatch.h | 59 ----- 8 files changed, 1472 deletions(-) diff --git a/algorithm-hmm/src/include/gki.h b/algorithm-hmm/src/include/gki.h deleted file mode 100644 index c056320..0000000 --- a/algorithm-hmm/src/include/gki.h +++ /dev/null @@ -1,51 +0,0 @@ -/***************************************************************** - * HMMER - Biological sequence analysis with profile HMMs - * Copyright (C) 1992-1999 Washington University School of Medicine - * All Rights Reserved - * - * This source code is distributed under the terms of the - * GNU General Public License. See the files COPYING and LICENSE - * for details. - *****************************************************************/ - -#ifndef SQUID_GKI_INCLUDED -#define SQUID_GKI_INCLUDED - -/* gki.h - * SRE, Sat May 1 15:07:22 1999 - * - * Declarations of structures, functions for generic key index - * module: emulation of Perl hashes. See gki.c. - * - * RCS $Id: gki.h,v 1.1.1.1 2003/07/20 20:30:07 cspencer Exp $ - */ - -/* gki_elem: - * key, array index pairs are kept in linked list structures. - */ -struct gki_elem { - char *key; - int idx; - struct gki_elem *nxt; -}; - -/* gki: - * a dynamically resized hash structure; - * contains a hash table and associated data - */ -typedef struct { - struct gki_elem **table; - - int primelevel; - int nhash; - int nkeys; -} GKI; - -GKI *GKIInit(void); -void GKIFree(GKI *hash); -int GKIHashValue(GKI *hash, char *key); -int GKIStoreKey(GKI *hash, char *key); -int GKIKeyIndex(GKI *hash, char *key); -void GKIStatus(GKI *hash); - -#endif /* SQUID_GKI_INCLUDED */ diff --git a/algorithm-hmm/src/include/msa.h b/algorithm-hmm/src/include/msa.h deleted file mode 100644 index 84c8e88..0000000 --- a/algorithm-hmm/src/include/msa.h +++ /dev/null @@ -1,286 +0,0 @@ -/***************************************************************** - * HMMER - Biological sequence analysis with profile HMMs - * Copyright (C) 1992-1999 Washington University School of Medicine - * All Rights Reserved - * - * This source code is distributed under the terms of the - * GNU General Public License. See the files COPYING and LICENSE - * for details. - *****************************************************************/ - -#ifndef SQUID_MSA_INCLUDED -#define SQUID_MSA_INCLUDED - -/* msa.h - * SRE, Mon May 17 10:24:30 1999 - * - * Header file for SQUID's multiple sequence alignment - * manipulation code. - * - * RCS $Id: msa.h,v 1.1.1.1 2003/07/20 20:30:07 cspencer Exp $ - */ - -#include <stdio.h> /* FILE support */ -#include "gki.h" /* hash table support */ -#include "ssi.h" /* sequence file index support */ -#include "squid.h" /* need SQINFO */ - -/**************************************************** - * Obsolete alignment information, AINFO - * Superceded by MSA structure further below; but we - * need AINFO for the near future for backwards - * compatibility. - ****************************************************/ -/* Structure: aliinfo_s - * - * Purpose: Optional information returned from an alignment file. - * - * flags: always used. Flags for which info is valid/alloced. - * - * alen: mandatory. Alignments are always flushed right - * with gaps so that all aseqs are the same length, alen. - * Available for all alignment formats. - * - * nseq: mandatory. Aligned seqs are indexed 0..nseq-1. - * - * wgt: 0..nseq-1 vector of sequence weights. Mandatory. - * If not explicitly set, weights are initialized to 1.0. - * - * cs: 0..alen-1, just like the alignment. Contains single-letter - * secondary structure codes for consensus structure; "<>^+" - * for RNA, "EHL." for protein. May be NULL if unavailable - * from seqfile. Only available for SELEX format files. - * - * rf: 0..alen-1, just like the alignment. rf is an arbitrary string - * of characters, used for annotating columns. Blanks are - * interpreted as non-canonical columns and anything else is - * considered canonical. Only available from SELEX files. - * - * sqinfo: mandatory. Array of 0..nseq-1 - * per-sequence information structures, carrying - * name, id, accession, coords. - * - */ -struct aliinfo_s { - int flags; /* flags for what info is valid */ - int alen; /* length of alignment (columns) */ - int nseq; /* number of seqs in alignment */ - float *wgt; /* sequence weights [0..nseq-1] */ - char *cs; /* consensus secondary structure string */ - char *rf; /* reference coordinate system */ - struct seqinfo_s *sqinfo; /* name, id, coord info for each sequence */ - - /* Pfam/HMMER pick-ups */ - char *name; /* name of alignment */ - char *desc; /* description of alignment */ - char *acc; /* accession of alignment */ - char *au; /* "author" information */ - float tc1, tc2; /* trusted score cutoffs (per-seq, per-domain) */ - float nc1, nc2; /* noise score cutoffs (per-seq, per-domain) */ - float ga1, ga2; /* gathering cutoffs */ -}; -typedef struct aliinfo_s AINFO; -#define AINFO_TC (1 << 0) -#define AINFO_NC (1 << 1) -#define AINFO_GA (1 << 2) - -/***************************************************************** - * MSA - * SRE, Sun Jun 27 15:03:35 1999 [TW 723 over Greenland] - * - * Defines the new data structure and API for multiple - * sequence alignment i/o. - *****************************************************************/ - -/* Structure: MSA - * SRE, Tue May 18 11:33:08 1999 - * - * Our object for a multiple sequence alignment. - */ -typedef struct msa_struct { - /* Mandatory information associated with the alignment. - */ - char **aseq; /* the alignment itself, [0..nseq-1][0..alen-1] */ - char **sqname; /* names of sequences, [0..nseq-1][0..alen-1] */ - float *wgt; /* sequence weights [0..nseq-1] */ - int alen; /* length of alignment (columns) */ - int nseq; /* number of seqs in alignment */ - - /* Optional information that we understand, and might have. - */ - int flags; /* flags for what optional info is valid */ - int type; /* kOtherSeq, kRNA/hmmNUCLEIC, or kAmino/hmmAMINO */ - char *name; /* name of alignment, or NULL */ - char *desc; /* description of alignment, or NULL */ - char *acc; /* accession of alignment, or NULL */ - char *au; /* "author" information, or NULL */ - char *ss_cons; /* consensus secondary structure string, or NULL */ - char *sa_cons; /* consensus surface accessibility string, or NULL */ - char *rf; /* reference coordinate system, or NULL */ - char **sqacc; /* accession numbers for individual sequences */ - char **sqdesc; /* description lines for individual sequences */ - char **ss; /* per-seq secondary structure annotation, or NULL */ - char **sa; /* per-seq surface accessibility annotation, or NULL */ - float tc1, tc2; /* trusted score cutoffs (per-seq, per-domain) */ - float nc1, nc2; /* noise score cutoffs (per-seq, per-domain) */ - float ga1, ga2; /* gathering cutoffs (per-seq, per-domain) */ - - /* Optional information that we don't understand. - * That is, we know what type of information it is, but it's - * either (interpreted as) free-text comment, or it's Stockholm - * markup with unfamiliar tags. - */ - char **comment; /* free text comments, or NULL */ - int ncomment; /* number of comment lines */ - int alloc_ncomment; /* number of comment lines alloc'ed */ - - char **gf_tag; /* markup tags for unparsed #=GF lines */ - char **gf; /* annotations for unparsed #=GF lines */ - int ngf; /* number of unparsed #=GF lines */ - int alloc_ngf; /* number of gf lines alloc'ed */ - - char **gs_tag; /* markup tags for unparsed #=GS lines */ - char ***gs; /* [0..ngs-1][0..nseq-1][free text] markup */ - GKI *gs_idx; /* hash of #=GS tag types */ - int ngs; /* number of #=GS tag types */ - - char **gc_tag; /* markup tags for unparsed #=GC lines */ - char **gc; /* [0..ngc-1][0..alen-1] markup */ - GKI *gc_idx; /* hash of #=GC tag types */ - int ngc; /* number of #=GC tag types */ - - char **gr_tag; /* markup tags for unparsed #=GR lines */ - char ***gr; /* [0..ngr][0..nseq-1][0..alen-1] markup */ - GKI *gr_idx; /* hash of #=GR tag types */ - int ngr; /* number of #=GR tag types */ - - /* Stuff we need for our own maintenance of the data structure - */ - GKI *index; /* name ->seqidx hash table */ - int nseqalloc; /* number of seqs currently allocated for */ - int nseqlump; /* lump size for dynamic expansions of nseq */ - int *sqlen; /* individual sequence lengths during parsing */ - int *sslen; /* individual ss lengths during parsing */ - int *salen; /* individual sa lengths during parsing */ - int lastidx; /* last index we saw; use for guessing next */ -} MSA; -#define MSA_SET_TC (1 << 0) -#define MSA_SET_NC (1 << 1) -#define MSA_SET_GA (1 << 2) -#define MSA_SET_WGT (1 << 3) - -/* Structure: MSAFILE - * SRE, Tue May 18 11:36:54 1999 - * - * Defines an alignment file that's open for reading. - */ -typedef struct msafile_struct { - FILE *f; /* open file pointer */ - char *fname; /* name of file. used for diagnostic output */ - int linenumber; /* what line are we on in the file */ - - char *buf; /* buffer for line input w/ sre_fgets() */ - int buflen; /* current allocated length for buf */ - - SSIFILE *ssi; /* open SSI index file; or NULL, if none. */ - - int do_gzip; /* TRUE if f is a pipe from gzip -dc (need pclose(f)) */ - int do_stdin; /* TRUE if f is stdin (don't close f, not our problem) */ - int format; /* format of alignment file we're reading */ -} MSAFILE; - - -/* Alignment file formats. - * Must coexist with sqio.c/squid.h unaligned file format codes. - * Rules: - * - 0 is an unknown/unassigned format - * - <100 reserved for unaligned formats - * - >100 reserved for aligned formats - */ -#define MSAFILE_UNKNOWN 0 /* unknown format */ -#define MSAFILE_STOCKHOLM 101 /* Pfam/HMMER's Stockholm format */ -#define MSAFILE_SELEX 102 /* Obsolete(!): old HMMER/SELEX format */ -#define MSAFILE_MSF 103 /* GCG MSF format */ -#define MSAFILE_CLUSTAL 104 /* Clustal V/W format */ -#define MSAFILE_A2M 105 /* aligned FASTA (A2M is UCSC terminology) */ -#define MSAFILE_PHYLIP 106 /* Felsenstein's PHYLIP format */ -#define MSAFILE_EPS 107 /* Encapsulated PostScript (output only) */ - -#define IsAlignmentFormat(fmt) ((fmt) > 100) - - -/* from msa.c - */ -extern MSAFILE *MSAFileOpen(char *filename, int format, char *env); -extern MSA *MSAFileRead(MSAFILE *afp); -extern void MSAFileClose(MSAFILE *afp); -extern void MSAFree(MSA *msa); -extern void MSAFileWrite(FILE *fp, MSA *msa, int outfmt, int do_oneline); - -extern int MSAFileRewind(MSAFILE *afp); -extern int MSAFilePositionByKey(MSAFILE *afp, char *key); -extern int MSAFilePositionByIndex(MSAFILE *afp, int idx); - -extern int MSAFileFormat(MSAFILE *afp); -extern MSA *MSAAlloc(int nseq, int alen); -extern void MSAExpand(MSA *msa); -extern char *MSAFileGetLine(MSAFILE *afp); -extern void MSASetSeqAccession(MSA *msa, int seqidx, char *acc); -extern void MSASetSeqDescription(MSA *msa, int seqidx, char *desc); -extern void MSAAddComment(MSA *msa, char *s); -extern void MSAAddGF(MSA *msa, char *tag, char *value); -extern void MSAAddGS(MSA *msa, char *tag, int seqidx, char *value); -extern void MSAAppendGC(MSA *msa, char *tag, char *value); -extern char *MSAGetGC(MSA *msa, char *tag); -extern void MSAAppendGR(MSA *msa, char *tag, int seqidx, char *value); -extern void MSAVerifyParse(MSA *msa); -extern int MSAGetSeqidx(MSA *msa, char *name, int guess); - -extern MSA *MSAFromAINFO(char **aseq, AINFO *ainfo); - -extern void MSAMingap(MSA *msa); -extern void MSANogap(MSA *msa); -extern void MSAShorterAlignment(MSA *msa, int *useme); -extern void MSASmallerAlignment(MSA *msa, int *useme, MSA **ret_new); - -extern char *MSAGetSeqAccession(MSA *msa, int idx); -extern char *MSAGetSeqDescription(MSA *msa, int idx); -extern char *MSAGetSeqSS(MSA *msa, int idx); -extern char *MSAGetSeqSA(MSA *msa, int idx); - -/* from a2m.c - */ -extern MSA *ReadA2M(MSAFILE *afp); -extern void WriteA2M(FILE *fp, MSA *msa); - -/* from clustal.c - */ -extern MSA *ReadClustal(MSAFILE *afp); -extern void WriteClustal(FILE *fp, MSA *msa); - -/* from eps.c - */ -extern void EPSWriteSmallMSA(FILE *fp, MSA *msa); - -/* from msf.c - */ -extern MSA *ReadMSF(MSAFILE *afp); -extern void WriteMSF(FILE *fp, MSA *msa); - -/* from phylip.c - */ -extern MSA *ReadPhylip(MSAFILE *afp); -extern void WritePhylip(FILE *fp, MSA *msa); - -/* from selex.c - */ -extern MSA *ReadSELEX(MSAFILE *afp); -extern void WriteSELEX(FILE *fp, MSA *msa); - -/* from stockholm.c - */ -extern MSA *ReadStockholm(MSAFILE *afp); -extern void WriteStockholm(FILE *fp, MSA *msa); -extern void WriteStockholmOneBlock(FILE *fp, MSA *msa); - -#endif /*SQUID_MSA_INCLUDED*/ diff --git a/algorithm-hmm/src/include/rk.h b/algorithm-hmm/src/include/rk.h deleted file mode 100644 index aebf50b..0000000 --- a/algorithm-hmm/src/include/rk.h +++ /dev/null @@ -1,40 +0,0 @@ -/***************************************************************** - * HMMER - Biological sequence analysis with profile HMMs - * Copyright (C) 1992-1999 Washington University School of Medicine - * All Rights Reserved - * - * This source code is distributed under the terms of the - * GNU General Public License. See the files COPYING and LICENSE - * for details. - *****************************************************************/ - -#ifndef SQRKH_INCLUDED -#define SQRKH_INCLUDED - -/* rk.h - * - * Header file for Rabin-Karp pattern searching on encoded - * sequence strings. - * - * Sean Eddy, Thu Oct 1 11:45:42 1992 - * RCS $Id: rk.h,v 1.1.1.1 2003/07/20 20:30:07 cspencer Exp $ - */ - - - /* expect 32 bits for 8 nt */ -typedef unsigned long Hashseq; - /* but we count to be sure... - RK_HASHSIZE is the number of nt that fit - in one probe */ -#define RK_HASHSIZE (sizeof(Hashseq)*2) - /* empirically, how many nt minimum we require - in a pattern before we abandon rk and - go with something else */ -#define RK_REQUIRE 4 - -extern int rkseq(Hashseq hashprobe, char *sequence); -extern Hashseq rkcomp(char *probe); /* compile a Hashseq from a pattern */ - - - -#endif /* SQRKH_INCLUDED */ diff --git a/algorithm-hmm/src/include/sqfuncs.h b/algorithm-hmm/src/include/sqfuncs.h deleted file mode 100644 index 6f60c28..0000000 --- a/algorithm-hmm/src/include/sqfuncs.h +++ /dev/null @@ -1,293 +0,0 @@ -/***************************************************************** - * HMMER - Biological sequence analysis with profile HMMs - * Copyright (C) 1992-1999 Washington University School of Medicine - * All Rights Reserved - * - * This source code is distributed under the terms of the - * GNU General Public License. See the files COPYING and LICENSE - * for details. - *****************************************************************/ - -#ifndef SQFUNCSH_INCLUDED -#define SQFUNCSH_INCLUDED -/* sqfuncs.h - * - * Prototypes for squid library functions; - * also makes a good reference list for what the package contains. - * - * Warning: squid is a slowly evolving beast. Some functions are - * obsolete. Some functions are probably just wrong, dating to - * a primordial era before I knew anything about what I was doing. - * Some functions are both obsolete and wrong but still necessary - * to get legacy code to compile. - * - * RCS $Id: sqfuncs.h,v 1.1.1.1 2003/07/20 20:30:07 cspencer Exp $ - */ - -/* - * from aligneval.c - */ -extern float ComparePairAlignments(char *known1, char *known2, char *calc1, char *calc2); -extern float CompareRefPairAlignments(int *ref, char *known1, char *known2, char *calc1, char *calc2); -extern float CompareMultAlignments(char **kseqs, char **tseqs, int N); -extern float CompareRefMultAlignments(int *ref, char **kseqs, char **tseqs, int N); -extern float PairwiseIdentity(char *s1, char *s2); -extern float AlignmentIdentityBySampling(char **aseq, int L, int N, int nsample); -extern char *MajorityRuleConsensus(char **aseq, int nseq, int alen); - -/* - * from alignio.c - */ -extern void AllocAlignment(int nseq, int alen, char ***ret_aseq, AINFO *ainfo); -extern void InitAinfo(AINFO *ainfo); -extern void FreeAlignment(char **aseqs, AINFO *ainfo); -extern void SAMizeAlignment(char **aseq, int nseq, int alen); -extern void SAMizeAlignmentByGapFrac(char **aseq, int nseq, int alen, float maxgap); -extern int MakeAlignedString(char *aseq, int alen, char *ss, char **ret_s); -extern int MakeDealignedString(char *aseq, int alen, char *ss, char **ret_s); -extern int DealignedLength(char *aseq); -extern int WritePairwiseAlignment(FILE *ofp, char *aseq1, char *name1, int spos1, - char *aseq2, char *name2, int spos2, - int **pam, int indent); -extern int MingapAlignment(char **aseqs, AINFO *ainfo); -extern int RandomAlignment(char **rseqs, SQINFO *sqinfo, int nseq, float pop, float pex, - char ***ret_aseqs, AINFO *ainfo); -extern void AlignmentHomogenousGapsym(char **aseq, int nseq, int alen, char gapsym); - -/* from cluster.c - */ -extern int Cluster(float **mx, int N, enum clust_strategy mode, struct phylo_s **ret_tree); -extern struct phylo_s *AllocPhylo(int N); -extern void FreePhylo(struct phylo_s *tree, int N); -extern void MakeDiffMx(char **aseqs, int num, float ***ret_dmx); -extern void MakeIdentityMx(char **aseqs, int num, float ***ret_imx); -extern void PrintNewHampshireTree(FILE *fp, AINFO *ainfo, struct phylo_s *tree, int N); -extern void PrintPhylo(FILE *fp, AINFO *ainfo, struct phylo_s *tree, int N); - -/* - * from dayhoff.c - */ -extern int ParsePAMFile(FILE *fp, int ***ret_pam, float *ret_scale); -extern void ScalePAM(int **pam, int scale); - - -/* from file.c - */ -extern char *FileDirname(char *filename); -extern char *FileTail(char *file, int noextension); -extern char *FileConcat(char *dir, char *file); -extern char *FileAddSuffix(char *filename, char *sfx); -extern FILE *EnvFileOpen(char *fname, char *env, char **ret_dir); -extern int FileExists(char *filename); - - -/* from getopt.c - */ -extern int Getopt(int argc, char **argv, - struct opt_s *opt, int nopts, char *usage, - int *ret_optind, char **ret_optname, char **ret_optarg); - - -/* from hsregex.c - * Henry Spencer's regex() code - */ -extern int Strparse(char *rexp, char *s, int ntok); -extern void SqdClean(void); -extern sqd_regexp *sqd_regcomp(const char *re); -extern int sqd_regexec(sqd_regexp *rp, const char *s); -extern void sqd_regsub(const sqd_regexp *rp, const char *src, char *dst); -extern void sqd_regerror(char *message); - -/* from interleaved.c - */ -extern int IsInterleavedFormat(int format); -extern int ReadInterleaved(char *seqfile, - int (*skip_header)(FILE *), - int (*parse_header)(FILE *, AINFO *), - int (*is_dataline)(char *, char *), - char ***ret_aseqs, AINFO *ainfo); -extern int ReadAlignment(char *seqfile, int format, char ***ret_aseqs, AINFO *ainfo); - - -/* from revcomp.c - */ -extern char *revcomp(char *comp, char *seq); - -/* - * from selex.c - */ -extern int DealignAseqs(char **aseqs, int num, char ***ret_rseqs); -extern int IsSELEXFormat(char *filename); -extern int TruncateNames(char **names, int N); /* OBSOLETE? */ - -/* - * from seqencode.c - */ -extern int seqcmp(char *s1, char *s2, int allow); -extern int seqncmp(char *s1, char *s2, int n, int allow); -extern int seqencode(char *codeseq,char *str); -extern int coded_revcomp(char *comp, char *seq); -extern int seqdecode(char *str, char *codeseq); -extern int seqndecode(char *str, char *codeseq, int n); - -/* - * from shuffle.c - */ -extern int StrShuffle(char *s1, char *s2); -extern int StrDPShuffle(char *s1, char *s2); -extern int StrMarkov0(char *s1, char *s2); -extern int StrMarkov1(char *s1, char *s2); -extern int StrReverse(char *s1, char *s2); -extern int StrRegionalShuffle(char *s1, char *s2, int w); -extern int AlignmentShuffle(char **ali1, char **ali2, int nseq, int alen); -extern int AlignmentBootstrap(char **ali1, char **ali2, int nseq, int alen); - -/* - * from sqerror.c - */ -extern void Die(char *format, ...); -extern void Warn(char *format, ...); -extern void Panic(char *file, int line); - - -/* - * from sqio.c - */ -extern void FreeSequence(char *seq, SQINFO *sqinfo); -extern int SetSeqinfoString(SQINFO *sqinfo, char *sptr, int flag); -extern void SeqinfoCopy(SQINFO *sq1, SQINFO *sq2); -extern void ToDNA(char *seq); -extern void ToRNA(char *seq); -extern void ToIUPAC(char *seq); -extern int ReadMultipleRseqs(char *seqfile, int fformat, char ***ret_rseqs, - SQINFO **ret_sqinfo, int *ret_num); -extern SQFILE *SeqfileOpen(char *filename, int format, char *env); -extern SQFILE *SeqfileOpenForIndexing(char *filename, int format, char *env, int ssimode); -extern int SeqfileFormat(FILE *fp); -extern void SeqfilePosition(SQFILE *sfp, SSIOFFSET *offset); -extern void SeqfileRewind(SQFILE *sfp); -extern void SeqfileClose(SQFILE *sfp); - -extern int ReadSeq(SQFILE *fp, int format, char **ret_seq, SQINFO *sqinfo); -extern int GCGBinaryToSequence(char *seq, int len); -extern int GCGchecksum(char *seq, int seqlen); -extern int GCGMultchecksum(char **seqs, int nseq); -extern void WriteSimpleFASTA(FILE *fp, char *seq, char *name, char *desc); -extern int WriteSeq(FILE *outf, int outfmt, char *seq, SQINFO *sqinfo); -extern int Seqtype(char *seq); -extern int GuessAlignmentSeqtype(char **aseq, int nseq); -extern int String2SeqfileFormat(char *s); -extern char *SeqfileFormat2String(int code); -extern SQINFO *MSAToSqinfo(MSA *msa); - -/* from squidcore.c - */ -extern void Banner(FILE *fp, char *banner); - - -/* from sre_ctype.c - */ -extern int sre_tolower(int c); -extern int sre_toupper(int c); - -/* from sre_math.c - */ -extern float ExponentialRandom(void); -extern float Gaussrandom(float mean, float stddev); -extern int Linefit(float *x, float *y, int N, - float *ret_a, float *ret_b, float *ret_r); -extern void WeightedLinefit(float *x, float *y, float *var, int N, - float *ret_m, float *ret_b); -extern double Gammln(double xx); -extern int DNorm(double *vec, int n); -extern int FNorm(float *vec, int n); -extern void DScale(double *vec, int n, double scale); -extern void FScale(float *vec, int n, float scale); -extern void DSet(double *vec, int n, double value); -extern void FSet(float *vec, int n, float value); -extern double DSum(double *vec, int n); -extern float FSum(float *vec, int n); -extern void DAdd(double *vec1, double *vec2, int n); -extern void FAdd(float *vec1, float *vec2, int n); -extern void DCopy(double *vec1, double *vec2, int n); -extern void FCopy(float *vec1, float *vec2, int n); -extern int DMax(double *vec, int n); -extern int FMax(float *vec, int n); -extern double DDot(double *vec1, double *vec2, int n); -extern float FDot(float *vec1, float *vec2, int n); -extern float **FMX2Alloc(int rows, int cols); -extern void FMX2Free(float **mx); -extern double **DMX2Alloc(int rows, int cols); -extern void DMX2Free(double **mx); -extern void FMX2Multiply(float **A, float **B, float **C, int m, int p, int n); -extern float sre_random(void); -extern void sre_srandom(int seed); -extern int DChoose(double *p, int n); -extern int FChoose(float *p, int n); -extern double DLogSum(double *logp, int n); -extern float FLogSum(float *logp, int n); -extern double IncompleteGamma(double a, double x); - -/* from sre_string.c - */ -#ifdef NOSTR -extern char *strstr(char *s, char *subs); -#endif -extern char *Strdup(char *s); -extern void StringChop(char *s); -extern int Strinsert(char *s1, char c, int pos); -extern int Strdelete(char *s1, int pos); -extern void s2lower(char *s); -extern void s2upper(char *s); -extern void *sre_malloc(char *file, int line, size_t size); -extern void *sre_realloc(char *file, int line, void *p, size_t size); -extern void Free2DArray(void **p, int dim1); -extern void Free3DArray(void ***p, int dim1, int dim2); -extern char *RandomSequence(char *alphabet, float *p, int n, int len); -extern char *sre_fgets(char **buf, int *n, FILE *fp); -extern int sre_strcat(char **dest, int ldest, char *src, int lsrc); -extern char *sre_strtok(char **s, char *delim, int *len); -extern char *sre_strdup(char *s, int n); -extern char *sre_strncat(char *s1, char *s2, int n); -extern int IsBlankline(char *s); - -/* from stack.c - */ -extern struct intstack_s *InitIntStack(void); -extern void PushIntStack(struct intstack_s *stack, int data); -extern int PopIntStack(struct intstack_s *stack, int *ret_data); -extern void ReverseIntStack(struct intstack_s *stack); -extern int FreeIntStack( struct intstack_s *stack ); - -/* - * from translate.c - */ -extern char *Translate(char *seq, char **code); - -/* - * from types.c - */ -extern int IsInt(char *s); -extern int IsReal(char *s); -extern void Byteswap(char *swap, int nbytes); -#ifndef USE_HOST_BYTESWAP_FUNCTIONS -extern sqd_uint16 sre_ntoh16(sqd_uint16 netshort); -extern sqd_uint32 sre_ntoh32(sqd_uint32 netlong); -extern sqd_uint16 sre_hton16(sqd_uint16 hostshort); -extern sqd_uint32 sre_hton32(sqd_uint32 hostlong); -#endif /*!USE_HOST_BYTESWAP_FUNCTIONS*/ -extern sqd_uint64 sre_ntoh64(sqd_uint64 net_int64); -extern sqd_uint64 sre_hton64(sqd_uint64 host_int64); - -/* - * from weight.c - */ -extern void GSCWeights(char **aseq, int nseq, int alen, float *wgt); -extern void VoronoiWeights(char **aseq, int nseq, int alen, float *wgt); -extern void BlosumWeights(char **aseq, int nseq, int alen, float blosumlevel, float *wgt); -extern void PositionBasedWeights(char **aseq, int nseq, int alen, float *wgt); -extern void FilterAlignment(MSA *msa, float cutoff, MSA **ret_new); -extern void SampleAlignment(MSA *msa, int sample, MSA **ret_new); -extern void SingleLinkCluster(char **aseq, int nseq, int alen, float maxid, - int **ret_c, int *ret_nc); -#endif /* SQFUNCSH_INCLUDED */ diff --git a/algorithm-hmm/src/include/squid.h b/algorithm-hmm/src/include/squid.h deleted file mode 100644 index 4806fa5..0000000 --- a/algorithm-hmm/src/include/squid.h +++ /dev/null @@ -1,473 +0,0 @@ -/* Generated automatically from squid.h.in by configure. */ -/***************************************************************** - * HMMER - Biological sequence analysis with profile HMMs - * Copyright (C) 1992-1999 Washington University School of Medicine - * All Rights Reserved - * - * This source code is distributed under the terms of the - * GNU General Public License. See the files COPYING and LICENSE - * for details. - *****************************************************************/ - -#ifndef SQUIDH_INCLUDED -#define SQUIDH_INCLUDED - -/* squid.h - * Header file for my library of sequence functions. - * - * CVS $Id: squid.h,v 1.1.1.1 2003/07/20 20:30:07 cspencer Exp $ - */ - -#include <stdio.h> -#include <math.h> -#include <stdlib.h> -#include <unistd.h> /* for sysconf() #define's */ - - -#if DEBUGLEVEL > 0 -#include <assert.h> /* for SQD_DASSERT1(), etc. */ -#endif - -#include "squidconf.h" /* #define's generated by ./configure script */ - -/***************************************************************** - * Integers of guaranteed size. (used for instance in gsi.c, gsi2.c) - * These are set by the ./configure script; if they show up as FIXME, - * they must be manually edited to appropriate type definitions. You - * do need 64-bit integers in the current code; email me if this - * prevents you from compiling SQUID and tell me your system (I don't - * know of any systems that don't have 64-bit integers these days). - *****************************************************************/ -typedef unsigned short sqd_uint16; -typedef unsigned int sqd_uint32; -typedef unsigned long long sqd_uint64; - -#ifdef USE_HOST_BYTESWAP_FUNCTIONS -#include <sys/types.h> /* only for ntohl() and friends. */ -#include <netinet/in.h> /* only for ntohl() and friends. */ -#define sre_ntoh16(x) ntohs(x); -#define sre_ntoh32(x) ntohl(x); -#define sre_hton16(x) htons(x); -#define sre_hton32(x) htonl(x); -#endif /* USE_HOST_BYTESWAP_FUNCTIONS */ - -/* Library version info is made available as a global to - * any interested program. These are defined in iupac.c - * with the other globals. - */ -extern char squid_version[]; /* version number */ -extern char squid_date[]; /* date of release */ -extern int squid_errno; /* error codes */ - - - -/**************************************************** - * Error codes returned by squid library functions (squid_errno) - ****************************************************/ - -#define SQERR_OK 0 /* no error */ -#define SQERR_UNKNOWN 1 /* generic error, unidentified */ -#define SQERR_NODATA 2 /* unexpectedly NULL stream */ -#define SQERR_MEM 3 /* malloc or realloc failed */ -#define SQERR_NOFILE 4 /* file not found */ -#define SQERR_FORMAT 5 /* file format not recognized */ -#define SQERR_PARAMETER 6 /* bad parameter passed to func */ -#define SQERR_DIVZERO 7 /* error in sre_math.c */ -#define SQERR_INCOMPAT 8 /* incompatible parameters */ -#define SQERR_EOD 9 /* end-of-data (often normal) */ - -/**************************************************** - * Single sequence information - ****************************************************/ -#define SQINFO_NAMELEN 64 -#define SQINFO_DESCLEN 128 - -struct seqinfo_s { - int flags; /* what extra data are available */ - char name[SQINFO_NAMELEN];/* up to 63 characters of name */ - char id[SQINFO_NAMELEN]; /* up to 63 char of database identifier */ - char acc[SQINFO_NAMELEN]; /* up to 63 char of database accession # */ - char desc[SQINFO_DESCLEN];/* up to 127 char of description */ - int len; /* length of this seq */ - int start; /* (1..len) start position on source seq */ - int stop; /* (1..len) end position on source seq */ - int olen; /* original length of source seq */ - int type; /* kRNA, kDNA, kAmino, or kOther */ - char *ss; /* 0..len-1 secondary structure string */ - char *sa; /* 0..len-1 % side chain surface access. */ -}; -typedef struct seqinfo_s SQINFO; - -#define SQINFO_NAME (1 << 0) -#define SQINFO_ID (1 << 1) -#define SQINFO_ACC (1 << 2) -#define SQINFO_DESC (1 << 3) -#define SQINFO_START (1 << 4) -#define SQINFO_STOP (1 << 5) -#define SQINFO_LEN (1 << 6) -#define SQINFO_TYPE (1 << 7) -#define SQINFO_OLEN (1 << 8) -#define SQINFO_SS (1 << 9) -#define SQINFO_SA (1 << 10) - - -/**************************************************** - * Sequence alphabet: see also iupac.c - ****************************************************/ - /* IUPAC symbols defined globally in iupac.c */ -struct iupactype { - char sym; /* character representation */ - char symcomp; /* complement (regular char */ - char code; /* my binary rep */ - char comp; /* binary encoded complement */ -}; -extern struct iupactype iupac[]; -#define IUPACSYMNUM 17 - -extern char *stdcode1[]; /* 1-letter amino acid translation code */ -extern char *stdcode3[]; /* 3-letter amino acid translation code */ -extern float dnafq[]; /* nucleotide occurrence frequencies */ -extern float aafq[]; /* amino acid occurrence frequencies */ -extern char aa_alphabet[]; /* amino acid alphabet */ -extern int aa_index[]; /* convert 0..19 indices to 0..26 */ - - /* valid symbols in IUPAC code */ -#define NUCLEOTIDES "ACGTUNRYMKSWHBVDacgtunrymkswhbvd" -#define AMINO_ALPHABET "ACDEFGHIKLMNPQRSTVWY" -#define DNA_ALPHABET "ACGT" -#define RNA_ALPHABET "ACGU" -#define WHITESPACE " \t\n" - -#define isgap(c) ((c) == ' ' || (c) == '.' || (c) == '_' || (c) == '-' || (c) == '~') - - -/**************************************************** - * Sequence i/o: originally from Don Gilbert's readseq - ****************************************************/ -#include "msa.h" /* for multiple sequence alignment support */ - - /* buffer size for reading in lines from sequence files*/ -#define LINEBUFLEN 4096 - -/* sequence types parsed by Seqtype() */ -/* note that these must match hmmAMINO and hmmNUCLEIC in HMMER */ -#define kOtherSeq 0 /* hmmNOTSETYET */ -#define kDNA 1 -#define kRNA 2 /* hmmNUCLEIC */ -#define kAmino 3 /* hmmAMINO */ - -/* Unaligned sequence file formats recognized - * Coexists with definitions of multiple alignment formats in msa.h: - * >100 reserved for alignment formats - * <100 reserved for unaligned formats - * 0 reserved for unknown - * - * Some "legacy" formats are supported only when explicitly - * requested; not autodetected by SeqfileFormat(). - * - * DON'T REASSIGN THESE CODES. They're written into - * GSI index files. You can use new ones, but reassigning - * the sense of old ones will break GSI indices. - * Alignment format codes were reassigned with the creation - * of msa.c, but before Stockholm format, there were no - * indexed alignment databases. - */ -#define SQFILE_UNKNOWN 0 /* unknown format */ -#define SQFILE_IG 1 /* Intelligenetics (!) */ -#define SQFILE_GENBANK 2 /* GenBank flatfile */ - /* 3 was A2M. Now an alignment format */ -#define SQFILE_EMBL 4 /* EMBL or Swissprot flatfile */ -#define SQFILE_GCG 5 /* GCG single sequence files */ -#define SQFILE_STRIDER 6 /* MacStrider (!!) */ -#define SQFILE_FASTA 7 /* FASTA format: default */ -#define SQFILE_ZUKER 8 /* Zuker MFOLD format (legacy) */ -#define SQFILE_IDRAW 9 /* Idraw-style PostScript (legacy) */ - /* 10 was SELEX. Now alignment format */ - /* 11 was MSF. Now alignment format */ -#define SQFILE_PIR 12 /* PIR format */ -#define SQFILE_RAW 13 /* raw sequence */ -#define SQFILE_SQUID 14 /* my obsolete squid format */ - /* 15 was kXPearson, extended FASTA; withdrawn */ -#define SQFILE_GCGDATA 16 /* GCG data library file */ - /* 17 was Clustal. Now alignment format*/ - -#define IsUnalignedFormat(fmt) ((fmt) && (fmt) < 100) - -#include "ssi.h" - -struct ReadSeqVars { - FILE *f; /* open file pointer */ - char *fname; /* name of file; used for diagnostics */ - int linenumber; /* what line are we on in the file */ - - char *buf; /* dynamically allocated sre_fgets() buffer */ - int buflen; /* allocation length for buf */ - - int ssimode; /* SSI_OFFSET_I32 or SSI_OFFSET_I64 */ - SSIOFFSET ssioffset; /* disk offset to last line read into buf */ - SSIOFFSET r_off; /* offset to start of record */ - SSIOFFSET d_off; /* offset to start of sequence data */ - - int rpl; /* residues per data line for this file; -1 if unset, 0 if invalid */ - int lastrpl; /* rpl on last line seen */ - int maxrpl; /* max rpl on any line of the file */ - int bpl; /* bytes per data line; -1 if unset, 0 if invalid */ - int lastbpl; /* bpl on last line seen */ - int maxbpl; /* max bpl on any line of the file */ - - char *seq; /* growing sequence during parse */ - SQINFO *sqinfo; /* name, id, etc, gathered during parse */ - char *sp; - int seqlen; /* current sequence length */ - int maxseq; /* current allocation length for seq */ - - int format; /* format of seqfile we're reading. */ - int do_gzip; /* TRUE if f is a pipe from gzip -dc */ - int do_stdin; /* TRUE if f is stdin */ - - /* An (important) hack for sequential access of multiple alignment files: - * we read the whole alignment in, - * and then copy it one sequence at a time into seq and sqinfo. - * It is active if msa is non NULL. - * msa->lastidx is reused/overloaded: used to keep track of what - * seq we'll return next. - * afp->format is the real format, while SQFILE->format is kMSA. - * Because we keep it in the SQFILE structure, - * ReadSeq() and friends are always reentrant for multiple seqfiles. - */ - MSA *msa; - MSAFILE *afp; -}; -typedef struct ReadSeqVars SQFILE; - - -/**************************************************** - * Cluster analysis and phylogenetic tree support - ****************************************************/ - -/* struct phylo_s - a phylogenetic tree - * - * For N sequences, there will generally be an array of 0..N-2 - * phylo_s structures representing the nodes of a tree. - * [0] is the root. The indexes of left and - * right children are somewhat confusing so be careful. The - * indexes can have values of 0..2N-2. If they are 0..N-1, they - * represent pointers to individual sequences. If they are - * >= N, they represent pointers to a phylo_s structure - * at (index - N). - */ -struct phylo_s { - int parent; /* index of parent, N..2N-2, or -1 for root */ - int left; /* index of one of the branches, 0..2N-2 */ - int right; /* index of other branch, 0..2N-2 */ - float diff; /* difference score between seqs */ - float lblen; /* left branch length */ - float rblen; /* right branch length */ - char *is_in; /* 0..N-1 flag array, 1 if seq included */ - int incnum; /* number of seqs included at this node */ -}; - - -/* Strategies for cluster analysis; cluster by mean distance, - * minimum distance, or maximum distance. - */ -enum clust_strategy { CLUSTER_MEAN, CLUSTER_MAX, CLUSTER_MIN }; - -/**************************************************** - * Generic data structure support - ****************************************************/ - -/* a struct intstack_s implements a pushdown stack for storing - * single integers. - */ -struct intstack_s { - int data; - struct intstack_s *nxt; -}; - -/**************************************************** - * Binary nucleotide alphabet support - ****************************************************/ - -/* Binary encoding of the IUPAC code for nucleotides - * - * four-bit "word", permitting rapid degenerate matching - * A C G T/U - * 0 0 1 0 - */ -#define NTA 8 -#define NTC 4 -#define NTG 2 -#define NTT 1 -#define NTU 1 -#define NTN 15 /* A|C|G|T */ -#define NTR 10 /* A|G */ -#define NTY 5 /* C|T */ -#define NTM 12 /* A|C */ -#define NTK 3 /* G|T */ -#define NTS 6 /* C|G */ -#define NTW 9 /* A|T */ -#define NTH 13 /* A|C|T */ -#define NTB 7 /* C|G|T */ -#define NTV 14 /* A|C|G */ -#define NTD 11 /* A|G|T */ -#define NTGAP 16 /* GAP */ -#define NTEND 0 /* null string terminator */ - -/* ntmatch(): bitwise comparison of two nuc's - * note that it's sensitive to the order; - * probe may be degenerate but target should not be - */ -#define ntmatch(probe, target) ((probe & target) == target) - -/**************************************************** - * Support for a portable, flexible Getopt() - ****************************************************/ - -/* Structure: opt_s - * - * Structure for declaring options to a main(). - */ -struct opt_s { - char *name; /* name of option, e.g. "--option1" or "-o" */ - int single; /* TRUE if a single letter option */ - int argtype; /* for typechecking, e.g. sqdARG_INT */ -}; - /* acceptable argtype's... */ -#define sqdARG_NONE 0 /* no argument */ -#define sqdARG_INT 1 /* something that atoi() can grok */ -#define sqdARG_FLOAT 2 /* something that atof() can grok */ -#define sqdARG_CHAR 3 /* require single character or digit */ -#define sqdARG_STRING 4 /* anything goes */ - -/**************************************************** - * Support for convenient Perl-y regexp matching - * See hsregexp.c for copyright notice: this code is derived - * from Henry Spencer's freely distributed regexp library. - ****************************************************/ - -#define NSUBEXP 10 -typedef struct sqd_regexp { - char *startp[NSUBEXP]; - char *endp[NSUBEXP]; - char regstart; /* Internal use only. */ - char reganch; /* Internal use only. */ - char *regmust; /* Internal use only. */ - int regmlen; /* Internal use only. */ - char program[1]; /* Unwarranted chumminess with compiler. */ -} sqd_regexp; - -/* Strparse() defines and manages these. - * sqd_parse[0] contains the substring that matched the pattern. - * sqd_parse[1-9] contain substrings matched with ()'s. - */ -extern char *sqd_parse[10]; - -/**************************************************** - * Portable detection of multiprocessor # of CPUs. - * #include <unistd.h> - * long foo = SQD_NPROC; - * returns the number of available processors. - * if foo == -1, we failed. - ****************************************************/ - -/* Our problem here is that POSIX apparently doesn't specify - * a standard for how to get sysconf() to report the number of - * processors on-line. _SC_NPROCESSORS_ONLN is specified - * by SVR4.0MP. Thanks to W. Gish for help here. - */ -#undef SQD_NPROC -#ifdef _SC_NPROCESSORS_ONLN /* Sun Solaris, Digital UNIX */ -#define SQD_NPROC sysconf(_SC_NPROCESSORS_ONLN) -#else -#ifdef _SC_NPROC_ONLN /* Silicon Graphics IRIX */ -#define SQD_NPROC sysconf(_SC_NPROC_ONLN) -#else /* FreeBSD, Linux don't support getting ncpu via sysconf() */ -#define SQD_NPROC -1 -#endif -#endif - -/**************************************************** - * Three levels of debugging printf's and assert's - * level 1: little impact on verbosity or performance - * level 2: moderate impact - * level 3: high impact - * Example: - * SQD_DPRINTF3(("Matrix row %d col %d = %f\n", i, j, val)); - * Note the double parentheses; these are important. - ****************************************************/ - -#ifndef DEBUGLEVEL -#define DEBUGLEVEL 0 -#endif - -#if (DEBUGLEVEL >= 1) -#define SQD_DPRINTF1(x) printf x -#define SQD_DASSERT1(x) assert x -#else -#define SQD_DPRINTF1(x) -#define SQD_DASSERT1(x) -#endif -#if (DEBUGLEVEL >= 2) -#define SQD_DPRINTF2(x) printf x -#define SQD_DASSERT2(x) assert x -#else -#define SQD_DPRINTF2(x) -#define SQD_DASSERT2(x) -#endif -#if (DEBUGLEVEL >= 3) -#define SQD_DPRINTF3(x) printf x -#define SQD_DASSERT3(x) assert x -#else -#define SQD_DPRINTF3(x) -#define SQD_DASSERT3(x) -#endif - -/* PANIC is called for failures of Std C/POSIX functions, - * instead of my own functions. Panic() calls perror() and exits - * abnormally. - */ -#define PANIC Panic(__FILE__, __LINE__) - -/* Malloc/realloc calls are wrapped - */ -#define MallocOrDie(x) sre_malloc(__FILE__, __LINE__, (x)) -#define ReallocOrDie(x,y) sre_realloc(__FILE__, __LINE__, (x), (y)) - -/**************************************************** - * Miscellaneous macros and defines - ****************************************************/ - -#define CHOOSE(a) ((int) (sre_random() * (a))) - /* must declare swapfoo to use SWAP() */ -#define SWAP(a,b) {swapfoo = b; b = a; a = swapfoo;} -#define ScalarsEqual(a,b) (fabs((a)-(b)) < 1e-7) - -#ifndef MIN -#define MIN(a,b) (((a)<(b))?(a):(b)) -#endif -#ifndef MAX -#define MAX(a,b) (((a)>(b))?(a):(b)) -#endif - -/* For convenience and (one hopes) clarity in boolean tests: - */ -#ifndef TRUE -#define TRUE 1 -#endif -#ifndef FALSE -#define FALSE 0 -#endif - -/* Somewhere, there is a universe in which Unix vendors comply - * with the ANSI C standard. Unfortunately, it is not ours: - */ -#ifndef EXIT_SUCCESS -#define EXIT_SUCCESS 0 -#endif -#ifndef EXIT_FAILURE -#define EXIT_FAILURE 1 -#endif - -#include "sqfuncs.h" /* squid function declarations */ -#endif /* SQUIDH_INCLUDED */ diff --git a/algorithm-hmm/src/include/squidconf.h b/algorithm-hmm/src/include/squidconf.h deleted file mode 100644 index 4155d62..0000000 --- a/algorithm-hmm/src/include/squidconf.h +++ /dev/null @@ -1,77 +0,0 @@ -/* squidconf.h. Generated automatically by configure. */ -/* @configure_input@ */ -/***************************************************************** - * HMMER - Biological sequence analysis with profile HMMs - * Copyright (C) 1992-1999 Washington University School of Medicine - * All Rights Reserved - * - * This source code is distributed under the terms of the - * GNU General Public License. See the files COPYING and LICENSE - * for details. - *****************************************************************/ - -#ifndef SQUIDCONFH_INCLUDED -#define SQUIDCONFH_INCLUDED - -/* squidconf.h - * Captures #define's generated by the ./configure script; - * this configuration information is #included at the start of - * squid.h - */ - -/***************************************************************** - * Sizes of integer types. - * various things are set by ./configure; the code - * uses WORDS_BIGENDIAN and USE_HOST_BYTESWAP_FUNCTIONS. - *****************************************************************/ -/* #undef WORDS_BIGENDIAN */ -#define SIZEOF_UNSIGNED_SHORT 2 -#define SIZEOF_UNSIGNED_INT 4 -#define SIZEOF_UNSIGNED_LONG 4 -#define SIZEOF_UNSIGNED_LONG_LONG 8 -#define HAVE_NTOHS 1 /* if defined, system provides ntohs() */ -#define HAVE_NTOHL 1 /* if defined, system provides ntohl() */ -#define HAVE_HTONS 1 /* if defined, system provides htons() */ -#define HAVE_HTONL 1 /* if defined, system provides htonl() */ -#if defined HAVE_NTOHL && defined HAVE_NTOHS && defined HAVE_HTONS && defined HAVE_HTONL -#define USE_HOST_BYTESWAP_FUNCTIONS 1 -#endif - -/***************************************************************** - * Can we support arithmetic 64-bit file offsets? - * four possible models checked for: - * 1. ftello(), fseeko() with 64-bit off_t - * 2. ftello64(), fseeko64() with 64-bit off64_t - * 3. ftell64(), fseek64() with 64-bit integer - * 4. fgetpos(), fsetpos() with an fpos_t that happens to be a - * 64-bit integer, even though ANSI says we're not supposed to know - * anything about fpos_t's internals. - * Based on what ./configure tells us about these, we set - * HAS_64BIT_FILE_OFFSETS or not. - *****************************************************************/ -#define HAVE_FTELLO 1 -#define HAVE_FSEEKO 1 -#define HAVE_FTELLO64 1 -#define HAVE_FSEEKO64 1 -/* #undef HAVE_FTELL64 */ -/* #undef HAVE_FSEEK64 */ -/* #undef ARITHMETIC_FPOS_T */ -/* #undef HAVE_STAT64 */ -#define SIZEOF_FPOS_T 12 -#define SIZEOF_OFF_T 0 -#define SIZEOF_OFF64_T 0 - -#if defined HAVE_FTELLO && defined HAVE_FSEEKO && SIZEOF_OFF_T == 8 -#define HAS_64BIT_FILE_OFFSETS 1 -#elif defined HAVE_FTELLO64 && defined HAVE_FSEEKO64 && SIZEOF_OFF64_T == 8 -#define HAS_64BIT_FILE_OFFSETS 1 -#elif defined HAVE_FTELL64 && defined HAVE_FSEEK64 -#define HAS_64BIT_FILE_OFFSETS 1 -#elif defined ARITHMETIC_FPOS_T && SIZEOF_FPOS_T == 8 -#define HAS_64BIT_FILE_OFFSETS 1 -#else -/* #undef HAS_64BIT_FILE_OFFSETS */ -#endif - - -#endif /* SQUIDCONFH_INCLUDED */ diff --git a/algorithm-hmm/src/include/ssi.h b/algorithm-hmm/src/include/ssi.h deleted file mode 100644 index e976dfd..0000000 --- a/algorithm-hmm/src/include/ssi.h +++ /dev/null @@ -1,193 +0,0 @@ -/***************************************************************** - * HMMER - Biological sequence analysis with profile HMMs - * Copyright (C) 1992-1999 Washington University School of Medicine - * All Rights Reserved - * - * This source code is distributed under the terms of the - * GNU General Public License. See the files COPYING and LICENSE - * for details. - *****************************************************************/ - -#ifndef SSIH_INCLUDED -#define SSIH_INCLUDED - -/* ssi.h - * Database indexing (SSI format support) - * CVS $Id: ssi.h,v 1.1.1.1 2003/07/20 20:30:07 cspencer Exp $ - * - * See: ssi_format.tex in Docs/ - */ - -#include <stdio.h> -#include "squid.h" - -/* Limits - */ -#define SSI_MAXFILES 32767 /* 2^15-1 */ -#define SSI_MAXKEYS 2147483647L /* 2^31-1 */ - -/* typedef: SSIOFFSET - * Use the union to save space, since the two offset types are - * mutually exclusive, controlled by "mode" - */ -struct ssioffset_s { - char mode; /* GSI_OFFSET_I32, for example */ - union { - sqd_uint32 i32; /* an offset that fseek() can use */ - sqd_uint64 i64; /* an offset that e.g. fseeko64() can use */ - } off; -}; -typedef struct ssioffset_s SSIOFFSET; -#define SSI_OFFSET_I32 0 -#define SSI_OFFSET_I64 1 - -/* Structure: SSIFILE - * xref: SSI API documentation in ssi-format.tex - */ -struct ssifile_s { - FILE *fp; /* open SSI index file */ - sqd_uint32 flags; /* optional behavior flags */ - sqd_uint16 nfiles; /* number of files = 16 bit int */ - sqd_uint32 nprimary; /* number of primary keys */ - sqd_uint32 nsecondary; /* number of secondary keys */ - sqd_uint32 flen; /* length of filenames (inc '\0') */ - sqd_uint32 plen; /* length of primary keys (inc '\0') */ - sqd_uint32 slen; /* length of secondary keys (inc '\0') */ - sqd_uint32 frecsize; /* # bytes in a file record */ - sqd_uint32 precsize; /* # bytes in a primary key record */ - sqd_uint32 srecsize; /* # bytes in a secondary key record */ - SSIOFFSET foffset; /* disk offset, start of file records */ - SSIOFFSET poffset; /* disk offset, start of pri key recs */ - SSIOFFSET soffset; /* disk offset, start of sec key recs */ - - char imode; /* mode for index file offsets, 32 v. 64 bit */ - char smode; /* mode for sequence file offsets, 32 v. 64 bit */ - - /* File information: - */ - char **filename; /* list of file names [0..nfiles-1] */ - sqd_uint32 *fileformat; /* file formats */ - sqd_uint32 *fileflags; /* optional per-file behavior flags */ - sqd_uint32 *bpl; /* bytes per line in file */ - sqd_uint32 *rpl; /* residues per line in file */ -}; -typedef struct ssifile_s SSIFILE; - -/* optional per-index behavior flags in SSIFILE structure's flags: - */ -#define SSI_USE64 1<<0 /* seq offsets are 64-bit */ -#define SSI_USE64_INDEX 1<<1 /* index file offsets are 64-bit */ - -/* optional per-file behavior flags in fileflags - */ -#define SSI_FAST_SUBSEQ 1<<0 /* can do subseq lookup in this file */ - -/* Structure: SSIINDEX - * - * Used when building up an index and writing it to disk - */ -struct ssipkey_s { /* Primary key data: */ - char *key; /* key name */ - sqd_uint16 fnum; /* file number */ - SSIOFFSET r_off; /* record offset */ - SSIOFFSET d_off; /* data offset */ - sqd_uint32 len; /* sequence length */ - sqd_uint32 handle; /* handle on this key*/ -}; -struct ssiskey_s { /* Secondary key data: */ - char *key; /* secondary key name */ - char *pkey; /* primary key name */ -}; -struct ssiindex_s { - int smode; /* sequence mode: SSI_OFFSET_I32 or _I64 */ - int imode; /* index mode: SSI_OFFSET_I32 or _I64 */ - - char **filenames; - sqd_uint32 *fileformat; - sqd_uint32 *bpl; - sqd_uint32 *rpl; - sqd_uint32 flen; /* length of longest filename, inc '\0' */ - sqd_uint16 nfiles; - - struct ssipkey_s *pkeys; - sqd_uint32 plen; /* length of longest pkey, including '\0' */ - sqd_uint32 nprimary; - sqd_uint32 tot_primary; - - struct ssiskey_s *skeys; - sqd_uint32 slen; /* length of longest skey, including '\0' */ - sqd_uint32 nsecondary; - sqd_uint32 tot_secondary; - - /* The following stuff is for creating really big indexes, where - * we have to write a tmp file to disk with multiple chunks, then - * mergesort the chunks. - */ - char *tmpbase; /* root name of tmp files: <tmpbase>.t1 and .t2 */ - FILE *t1; /* open tmp file for collecting chunks */ - fpos_t *chunkoffset; /* array of offsets to individual chunks; 0..nchunks-1 */ - int nchunks; /* total # of chunks in t1 */ - int max_chunk_size; /* maximum size of chunk to hold in memory at one time, in MB */ -}; -typedef struct ssiindex_s SSIINDEX; - -/* These control malloc and realloc chunk sizes in the index - * construction code. - */ -#define SSI_FILE_BLOCK 10 -#define SSI_KEY_BLOCK 100 - -/* Error codes set by the API - */ -#define SSI_ERR_OK 0 -#define SSI_ERR_NODATA 1 /* no data? an fread() failed */ -#define SSI_ERR_NO_SUCH_KEY 2 /* that key's not in the index */ -#define SSI_ERR_MALLOC 3 -#define SSI_ERR_NOFILE 4 /* no such file? an fopen() failed */ -#define SSI_ERR_BADMAGIC 5 /* magic number mismatch in GSIOpen() */ -#define SSI_ERR_BADFORMAT 6 /* didn't read what I expected to fread() */ -#define SSI_ERR_NO64BIT 7 /* needed 64-bit support and didn't have it */ -#define SSI_ERR_SEEK_FAILED 8 /* an fseek() (or similar) failed */ -#define SSI_ERR_TELL_FAILED 9 /* an ftell() (or similar) failed */ -#define SSI_ERR_NO_SUBSEQS 10 /* fast subseq is disallowed */ -#define SSI_ERR_RANGE 11 /* subseq requested is out of range */ -#define SSI_ERR_BADARG 12 /* something wrong with a function argument */ - -#define SSI_ERR_TOOMANY_FILES 13 /* ran out of range for files in an index */ -#define SSI_ERR_TOOMANY_KEYS 14 /* ran out of range for keys in an index */ -#define SSI_ERR_FWRITE 15 - -/* The SSI file reading API: - */ -extern int SSIOpen(char *filename, SSIFILE **ret_sfp); -extern int SSIGetOffsetByName(SSIFILE *sfp, char *key, int *ret_fh, - SSIOFFSET *ret_offset); -extern int SSIGetOffsetByNumber(SSIFILE *sfp, int n, int *ret_fh, - SSIOFFSET *ret_offset); -extern int SSIGetSubseqOffset(SSIFILE *sfp, char *key, int requested_start, - int *ret_fh, SSIOFFSET *record_offset, - SSIOFFSET *data_offset, int *ret_actual_start); -extern int SSISetFilePosition(FILE *fp, SSIOFFSET *offset); -extern int SSIFileInfo(SSIFILE *sfp, int fh, char **ret_filename, int *ret_format); -extern void SSIClose(SSIFILE *sfp); - -/* The SSI index file writing API: - */ -extern int SSIRecommendMode(char *file); -extern SSIINDEX *SSICreateIndex(int mode); -extern int SSIGetFilePosition(FILE *fp, int mode, SSIOFFSET *ret_offset); -extern int SSIAddFileToIndex(SSIINDEX *g, char *filename, int fmt, int *ret_fh); -extern int SSISetFileForSubseq(SSIINDEX *g, int fh, int bpl, int rpl); -extern int SSIAddPrimaryKeyToIndex(SSIINDEX *g, char *key, int fh, - SSIOFFSET *r_off, SSIOFFSET *d_off, - int L); -extern int SSIAddSecondaryKeyToIndex(SSIINDEX *g, char *key, char *pkey); -extern int SSIWriteIndex(char *file, SSIINDEX *g); -extern void SSIFreeIndex(SSIINDEX *g); - -/* The SSI misc. functions API: - */ -extern char *SSIErrorString(int n); - - -#endif /*SSIH_INCLUDED*/ diff --git a/algorithm-hmm/src/include/stopwatch.h b/algorithm-hmm/src/include/stopwatch.h deleted file mode 100644 index 743e1a4..0000000 --- a/algorithm-hmm/src/include/stopwatch.h +++ /dev/null @@ -1,59 +0,0 @@ -/* stopwatch.h - * SRE, Fri Nov 26 14:54:21 1999 [St. Louis] [HMMER] - * SRE, Thu Aug 3 08:00:35 2000 [St. Louis] [moved to SQUID] - * CVS $Id: stopwatch.h,v 1.1.1.1 2003/07/20 20:30:07 cspencer Exp $ - * - * Header file for stopwatch.c module: - * reporting of cpu/system/elapsed time used by a process. - * See stopwatch.c comments for documentation of compile-time - * configuration options and API. - * - ***************************************************************** - * HMMER - Biological sequence analysis with profile HMMs - * Copyright (C) 1992-1999 Washington University School of Medicine - * All Rights Reserved - * - * This source code is distributed under the terms of the - * GNU General Public License. See the files COPYING and LICENSE - * for details. - ***************************************************************** - */ -#include <stdio.h> -#include <time.h> -#ifndef SRE_STRICT_ANSI -#include <sys/times.h> -#endif - -#ifndef STOPWATCH_H_INCLUDED -#define STOPWATCH_H_INCLUDED - -struct stopwatch_s { - time_t t0; /* Wall clock time, ANSI time() */ -#ifdef SRE_STRICT_ANSI - clock_t cpu0; /* CPU time, ANSI clock() */ -#else - struct tms cpu0; /* CPU/system time, POSIX times()*/ -#endif - - double elapsed; /* elapsed time, seconds */ - double user; /* CPU time, seconds */ - double sys; /* system time, seconds */ -}; -typedef struct stopwatch_s Stopwatch_t; - -extern void StopwatchStart(Stopwatch_t *w); -extern void StopwatchStop(Stopwatch_t *w); -extern void StopwatchInclude(Stopwatch_t *w1, Stopwatch_t *w2); -extern Stopwatch_t *StopwatchCreate(void); -extern void StopwatchZero(Stopwatch_t *w); -extern void StopwatchCopy(Stopwatch_t *w1, Stopwatch_t *w2); -extern void StopwatchFree(Stopwatch_t *w); -extern void StopwatchDisplay(FILE *fp, char *s, Stopwatch_t *w); - -#ifdef HMMER_PVM -extern void StopwatchPVMPack(Stopwatch_t *w); -extern void StopwatchPVMUnpack(Stopwatch_t *w); -#endif - -#endif /*STOPWATCH_H_INCLUDED*/ - -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/psortb.git _______________________________________________ debian-med-commit mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-med-commit
