📄 blast_traceback.h
字号:
/* * =========================================================================== * PRODUCTION $Log: blast_traceback.h,v $ * PRODUCTION Revision 1000.3 2004/06/01 18:03:54 gouriano * PRODUCTION PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.31 * PRODUCTION * =========================================================================== *//* $Id: blast_traceback.h,v 1000.3 2004/06/01 18:03:54 gouriano Exp $ * =========================================================================== * * PUBLIC DOMAIN NOTICE * National Center for Biotechnology Information * * This software/database is a "United States Government Work" under the * terms of the United States Copyright Act. It was written as part of * the author's offical duties as a United States Government employee and * thus cannot be copyrighted. This software/database is freely available * to the public for use. The National Library of Medicine and the U.S. * Government have not placed any restriction on its use or reproduction. * * Although all reasonable efforts have been taken to ensure the accuracy * and reliability of the software and data, the NLM and the U.S. * Government do not and cannot warrant the performance or results that * may be obtained by using this software or data. The NLM and the U.S. * Government disclaim all warranties, express or implied, including * warranties of performance, merchantability or fitness for any particular * purpose. * * Please cite the author in any work or product based on this material. * * =========================================================================== * * Author: Ilya Dondoshansky * *//** @file blast_traceback.h * Functions to do gapped alignment with traceback */#ifndef __BLAST_TRACEBACK__#define __BLAST_TRACEBACK__#ifdef __cplusplusextern "C" {#endif#include <algo/blast/core/blast_seqsrc.h>#include <algo/blast/core/blast_gapalign.h>/** Compute gapped alignment with traceback for all HSPs from a single * query/subject sequence pair. * Final e-values are calculated here, except when sum statistics is used, * in which case this is done in file link_hsps.c: * @sa { BLAST_LinkHsps } * @param program_number Type of BLAST program [in] * @param hsp_list List of HSPs [in] * @param query_blk The query sequence [in] * @param subject_blk The subject sequence [in] * @param query_info Query information, needed to get pointer to the * start of this query within the concatenated sequence [in] * @param gap_align Auxiliary structure used for gapped alignment [in] * @param sbp Statistical parameters [in] * @param score_params Scoring parameters (esp. scale factor) [in] * @param ext_options Gapped extension options [in] * @param hit_params Hit saving parameters [in] * @param gen_code_string specifies genetic code [in] */Int2Blast_TracebackFromHSPList(Uint1 program_number, BlastHSPList* hsp_list, BLAST_SequenceBlk* query_blk, BLAST_SequenceBlk* subject_blk, BlastQueryInfo* query_info, BlastGapAlignStruct* gap_align, BlastScoreBlk* sbp, const BlastScoringParameters* score_params, const BlastExtensionOptions* ext_options, const BlastHitSavingParameters* hit_params, const Uint1* gen_code_string);/** Given the preliminary alignment results from a database search, redo * the gapped alignment with traceback, if it has not yet been done. * @param program_number Type of the BLAST program [in] * @param results Results of this BLAST search [in] [out] * @param query The query sequence [in] * @param query_info Information about the query [in] * @param bssp BLAST database structure [in] * @param gap_align The auxiliary structure for gapped alignment [in] * @param score_params Scoring parameters (esp. scale factor) [in] * @param ext_params Gapped extension parameters [in] * @param hit_params Parameters for saving hits. Can change if not a database search [in] * @param eff_len_params Parameters for recalculating effective search * space. Can change if not a database search. [in] * @param db_options Options containing database genetic code string [in] * @param psi_options Options for iterative searches [in] * @return nonzero indicates failure, otherwise zero */Int2 BLAST_ComputeTraceback(Uint1 program_number, BlastHSPResults* results, BLAST_SequenceBlk* query, BlastQueryInfo* query_info, const BlastSeqSrc* bssp, BlastGapAlignStruct* gap_align, BlastScoringParameters* score_params, const BlastExtensionParameters* ext_params, BlastHitSavingParameters* hit_params, BlastEffectiveLengthsParameters* eff_len_params, const BlastDatabaseOptions* db_options, const PSIBlastOptions* psi_options);/** Compute traceback information for alignments found by an * RPS blast search. This function performs two major tasks: * - Computes a composition-specific PSSM to be used during the * traceback computation (non-translated searches only) * - After traceback is computed, switch query offsets with * subject offsets and switch the edit blocks that describe * the alignment. This is required because the entire RPS search * was performed with these quatities reversed. * This call is also the first time that enough information * exists to compute E-values for alignments that are found. * * @param program_number Type of the BLAST program [in] * @param results Structure containing the single HSPList * that is the result of a call to Blast_HSPResultsRPSUpdate. * Traceback information is added to HSPs in list [in] [out] * @param concat_db The concatentation of all RPS DB sequences. * The sequence data itself is not needed, * only its size [in] * @param concat_db_info Used for the list of context offsets * for concat_db [in] * @param query The original query sequence [in] * @param query_info Information associated with the original query. * Only used for the search space [in] * @param gap_align The auxiliary structure for gapped alignment [in] * @param score_params Scoring parameters (esp. scale factor) [in] * @param ext_params Gapped extension parameters [in] * @param hit_params Parameters for saving hits. Can change if not a database search [in] * @param db_options Options containing database genetic code string [in] * @param karlin_k Array of Karlin values, one for each database * sequence. Used for E-value calculation [in] * @return nonzero indicates failure, otherwise zero */Int2 BLAST_RPSTraceback(Uint1 program_number, BlastHSPResults* results, BLAST_SequenceBlk* concat_db, BlastQueryInfo* concat_db_info, BLAST_SequenceBlk* query, BlastQueryInfo* query_info, BlastGapAlignStruct* gap_align, const BlastScoringParameters* score_params, const BlastExtensionParameters* ext_params, BlastHitSavingParameters* hit_params, const BlastDatabaseOptions* db_options, const double* karlin_k);#ifdef __cplusplus}#endif#endif /* !__BLAST_TRACEBACK__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -