~ubuntu-branches/debian/experimental/ncbi-tools6/experimental

« back to all changes in this revision

Viewing changes to algo/blast/core/blast_util.h

  • Committer: Bazaar Package Importer
  • Author(s): Aaron M. Ucko
  • Date: 2008-07-14 19:43:15 UTC
  • mfrom: (2.1.12 intrepid)
  • Revision ID: james.westby@ubuntu.com-20080714194315-ed44u9ek7txva2rz
Tags: 6.1.20080302-3
tools/readdb.c: enable madvise()-based code on all glibc (hence all
Debian) systems, not just Linux.  (Closes: #490437.)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* $Id: blast_util.h,v 1.78 2006/09/12 20:53:33 camacho Exp $
 
1
/* $Id: blast_util.h,v 1.81 2007/01/05 16:10:21 papadopo Exp $
2
2
 * ===========================================================================
3
3
 *
4
4
 *                            PUBLIC DOMAIN NOTICE
30
30
 * Various auxiliary BLAST utility functions
31
31
 */
32
32
 
33
 
#ifndef __BLAST_UTIL__
34
 
#define __BLAST_UTIL__
 
33
#ifndef ALGO_BLAST_CORE__BLAST_UTIL__H
 
34
#define ALGO_BLAST_CORE__BLAST_UTIL__H
35
35
 
 
36
#include <algo/blast/core/ncbi_std.h>
 
37
#include <algo/blast/core/blast_export.h>
 
38
#include <algo/blast/core/blast_program.h>
36
39
#include <algo/blast/core/blast_def.h>
37
40
#include <algo/blast/core/blast_query_info.h>
38
41
#include <algo/blast/core/blast_encoding.h>
115
118
                            const Uint1* sequence,
116
119
                            Int4 seqlen);
117
120
 
 
121
/** Adds a specialized representation of sequence data to a sequence
 
122
 * block. In the specialized representation, the byte at offset i 
 
123
 * packs together nucleotide bases i to i+3
 
124
 * @param seq_blk structure containing sequence data. Data is assumed
 
125
 *          to be in blastna format [in][out]
 
126
 */
 
127
NCBI_XBLAST_EXPORT
 
128
Int2 BlastCompressBlastnaSequence(BLAST_SequenceBlk *seq_blk);
 
129
 
118
130
/** Stores the compressed nucleotide sequence in the sequence block structure
119
131
 * for the subject sequence when BLASTing 2 sequences. This sequence should be
120
132
 * encoded in eBlastEncodingNcbi2na and NOT have sentinel bytes (as this 
138
150
 * @param buffer Preallocated buffer for the translated sequence [in][out]
139
151
 * @param genetic_code Genetic code to use for translation, 
140
152
 *                     in ncbistdaa encoding [in]
141
 
 * @return Length of the traslated protein sequence.
 
153
 * @return Length of the translated protein sequence.
142
154
*/
143
155
NCBI_XBLAST_EXPORT
144
156
Int4 BLAST_GetTranslation(const Uint1* query_seq, 
319
331
 */
320
332
#define MAX_FULL_TRANSLATION 2100
321
333
 
 
334
/** This sentry value is used as a 'fence' around the valid portions
 
335
 * of partially decoded sequences.  If an alignment finds this value
 
336
 * in a subject sequence, the fence_hit flag should be used to request
 
337
 * a refetch of the whole sequence, and the alignment restarted.
 
338
 */
 
339
#define FENCE_SENTRY 201
 
340
 
 
341
 
322
342
/** Translate the subject sequence into 6 frames, and create a mixed-frame 
323
343
 * sequence, if out-of-frame gapping will be used.
324
344
 * @param subject_blk Subject sequence structure [in]
349
369
#ifdef __cplusplus
350
370
}
351
371
#endif
352
 
#endif /* !__BLAST_UTIL__ */
 
372
#endif /* !ALGO_BLAST_CORE__BLAST_UTIL__H */