/usr/include/biosquid/sqfuncs.h is in biosquid-dev 1.9g+cvs20050121-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 | /*****************************************************************
* @LICENSE@
*****************************************************************/
#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.
*
* CVS $Id: sqfuncs.h,v 1.34 2004/05/24 15:49:07 eddy 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 *FileSameDirectory(char *full, char *file);
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);
extern int QRNAShuffle(char *xs, char *ys, char *x, char *y);
/*
* 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, int is_aseq);
extern void ToSimplyN(char *seq, int is_aseq);
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 SqdBanner(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 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 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 void FMX2Copy(float **mx_dest, float **mx_src, int m, int n);
/* 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 char *sre_strncpy(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);
/* from wuss.c
*/
extern int WUSS2ct(char *ss, int len, int allow_pseudoknots, int **ret_ct);
extern void WUSStoKHS(char *ss);
extern void KHStoWUSS(char *ss);
#endif /* SQFUNCSH_INCLUDED */
|