;
93m_ScoringOpts =
NULL;
95m_HitSavingOpts =
NULL;
98m_ipInitHitlist =
NULL;
100m_ipScoreParams =
NULL;
101m_ipHitParams =
NULL;
102m_ipExtParams =
NULL;
103m_ipWordParams =
NULL;
113 sfree(m_ipScoreParams);
114 sfree(m_ipHitParams);
115 sfree(m_ipExtParams);
125 const intnum_hsps = 8;
126 const intq_offsets[num_hsps] =
127{8799, 1358, 14042, 27664, 5143, 27737, 5231, 3212 };
128 const ints_offsets[num_hsps] =
129{ 2728, 2736, 2784, 2784, 2792, 2856, 2888, 3640 };
130 const intq_starts[num_hsps] =
131{ 8794, 1355, 14015, 27637, 5131, 27732, 5226, 3201 };
132 const ints_starts[num_hsps] =
133{ 2723, 2733, 2757, 2757, 2780, 2851, 2883, 3629 };
134 const intlengths[num_hsps] = { 174, 18, 141, 92, 38, 37, 28, 20 };
135 const intscores[num_hsps] = { 146, 18, 93, 40, 34, 21, 24, 16 };
141 for(index = 0; index < num_hsps; ++index) {
144ungapped_data->
q_start= q_starts[index];
145ungapped_data->
s_start= s_starts[index];
146ungapped_data->
length= lengths[index];
147ungapped_data->
score= scores[index];
149s_offsets[index], ungapped_data);
155 const intnum_hsps = 14;
156 const intq_offsets[num_hsps] =
157{ 8799, 1358, 8831, 14042, 27664, 5143, 8863, 8903, 8927, 14114,
15827737, 8943, 5231, 3212 };
159 const ints_offsets[num_hsps] =
160{ 2728, 2736, 2760, 2784, 2784, 2792, 2792, 2832, 2856, 2856,
1612856, 2872, 2888, 3640 };
166 for(index = 0; index < num_hsps; ++index) {
168s_offsets[index],
NULL);
180db_num_seq, &eff_len_params);
182m_ipScoreBlk, m_iclsQueryInfo,
NULL);
188 boolgreedy,
boolchaining =
false,
189 doubleexpect_value = 10)
194BOOST_REQUIRE(status == 0);
202 if(m_ipScoreBlk->
gbp) {
209BOOST_REQUIRE(status == 0);
212program, m_ipScoreBlk,
213m_iclsQueryBlk->
sequence, m_iclsQueryInfo,
216BOOST_REQUIRE(message ==
NULL);
218BOOST_REQUIRE(status == 0);
220program, m_iclsQueryInfo,
NULL);
222BOOST_REQUIRE(status == 0);
227fillEffectiveLengths(program, m_ScoringOpts,
231m_ipScoreBlk, &m_ipScoreParams);
239BOOST_REQUIRE(status == 0);
242m_ExtnOpts, m_ipScoreBlk,
243m_iclsQueryInfo, &m_ipExtParams);
248BOOST_REQUIRE(status == 0);
252m_ipScoreBlk, m_iclsQueryInfo, subject_length, 0, &m_ipHitParams);
256BOOST_REQUIRE(status == 0);
263m_iclsQueryInfo.
Get(),
266BOOST_REQUIRE(status == 0);
269subject_length, m_ipScoreBlk, &m_ipGapAlign);
270BOOST_REQUIRE(status == 0);
277 const intnum_hsps = 7;
278 const intquery_starts[num_hsps] =
279{ 8794, 13982, 12612, 5131, 5226, 1355, 3201 };
280 const intsubject_starts[num_hsps] =
281{ 2723, 2723, 2733, 2780, 2883, 2733, 3629 };
282 const intquery_lengths[num_hsps] = { 174, 174, 182, 38, 28, 18, 20 };
283 const intsubject_lengths[num_hsps] = { 174, 175, 183, 38, 28, 18, 20 };
287pair<TSeqPos, TSeqPos> range(20000, 35000);
288unique_ptr<SSeqLoc> qsl(
291unique_ptr<SSeqLoc> ssl(
297queries.push_back(*qsl);
298subjects.push_back(*ssl);
306 SetupQueries(queries, m_iclsQueryInfo, &m_iclsQueryBlk,
307 prog, strand_opt, blast_msg);
309BOOST_REQUIRE(m->empty());
312 Uint4subject_length;
313vector<BLAST_SequenceBlk*> subject_blk_v;
315&subject_blk_v, &subject_length);
328m_iclsQueryBlk, m_iclsQueryInfo, subject_blk_v[0],
329m_ipGapAlign, m_ipScoreParams, m_ipExtParams,
330m_ipHitParams, m_ipWordParams, m_ipInitHitlist,
331&hsp_list, gapped_stats,
NULL);
334BOOST_REQUIRE_EQUAL(num_hsps, hsp_list->
hspcnt);
336BOOST_REQUIRE_EQUAL(num_hsps, gapped_stats->
extensions);
338 sfree(gapped_stats);
343 for(index = 0; index < num_hsps; ++index) {
345query_starts[index]);
347subject_starts[index]);
350query_lengths[index]);
353subject_lengths[index]);
360 const intnum_hsps = 7;
361 const intquery_starts[num_hsps] =
362{ 8794, 13982, 12612, 5131, 5226, 1355, 3201 };
363 const intsubject_starts[num_hsps] =
364{ 2723, 2723, 2733, 2780, 2883, 2733, 3629 };
365 const intquery_lengths[num_hsps] =
366{ 174, 174, 182, 38, 28, 18, 20 };
367 const intsubject_lengths[num_hsps] =
368{ 174, 175, 183, 38, 28, 18, 20 };
373pair<TSeqPos, TSeqPos> range(20000, 35000);
374unique_ptr<SSeqLoc> qsl(
377unique_ptr<SSeqLoc> ssl(
384queries.push_back(*qsl);
385subjects.push_back(*ssl);
393 SetupQueries(queries, m_iclsQueryInfo, &m_iclsQueryBlk,
394 prog, strand_opt, blast_msg);
396BOOST_REQUIRE(m->empty());
399 Uint4subject_length;
400vector<BLAST_SequenceBlk*> subject_blk_v;
402&subject_blk_v, &subject_length);
407setupGreedyHitList();
414m_iclsQueryBlk, m_iclsQueryInfo, subject_blk_v[0],
415m_ipGapAlign, m_ipScoreParams, m_ipExtParams,
416m_ipHitParams, m_ipWordParams, m_ipInitHitlist,
417&hsp_list, gapped_stats,
NULL);
419BOOST_REQUIRE_EQUAL(num_hsps, hsp_list->
hspcnt);
425BOOST_REQUIRE(hsp_list ==
NULL);
429setupGreedyHitList();
432m_ipHitParams->options->min_hit_length = 100;
433m_ipHitParams->options->percent_identity = 99;
436m_iclsQueryBlk, m_iclsQueryInfo, subject_blk_v[0],
437m_ipGapAlign, m_ipScoreParams, m_ipExtParams,
438m_ipHitParams, m_ipWordParams, m_ipInitHitlist,
439&hsp_list, gapped_stats,
NULL);
441BOOST_REQUIRE_EQUAL(num_hsps, hsp_list->
hspcnt);
447BOOST_REQUIRE_EQUAL(2*num_hsps, gapped_stats->
extensions);
449 sfree(gapped_stats);
454 for(index = 0; index < num_hsps; ++index) {
456query_starts[index]);
458subject_starts[index]);
461query_lengths[index]);
464subject_lengths[index]);
472 const intquery_start = 2612;
473 const intquery_end = 2754;
474 const intsubject_start = 291;
475 const intsubject_end = 438;
476 const intq_offset = 2754;
477 const ints_offset = 438;
484ungapped.
score= 42;
487unique_ptr<SSeqLoc> qsl(
490pair<TSeqPos, TSeqPos> range(1896999, 1897550);
491unique_ptr<SSeqLoc> ssl(
498queries.push_back(*qsl);
499subjects.push_back(*ssl);
507 SetupQueries(queries, m_iclsQueryInfo, &m_iclsQueryBlk,
508 prog, strand_opt, blast_msg);
510BOOST_REQUIRE(m->empty());
513 Uint4subject_length;
514vector<BLAST_SequenceBlk*> subject_blk_v;
516&subject_blk_v, &subject_length);
522m_ipScoreParams->reward = 1;
523m_ipScoreParams->penalty = -2;
524m_ipScoreParams->gap_open = 0;
525m_ipScoreParams->gap_extend = 0;
527m_ipExtParams->gap_x_dropoff = 16;
528m_ipExtParams->gap_x_dropoff_final = 54;
533subject_length, m_ipScoreBlk, &m_ipGapAlign);
544m_iclsQueryBlk, m_iclsQueryInfo, subject_blk_v[0],
545m_ipGapAlign, m_ipScoreParams, m_ipExtParams,
546m_ipHitParams, m_ipWordParams, m_ipInitHitlist,
547&hsp_list, gapped_stats,
NULL);
549m_ipInitHitlist->init_hsp_array[0].ungapped_data =
NULL;
551BOOST_REQUIRE_EQUAL(1, hsp_list->
hspcnt);
555 sfree(gapped_stats);
563BOOST_REQUIRE(m_ipGapAlign->greedy_query_seed_start >= query_start);
564BOOST_REQUIRE(m_ipGapAlign->greedy_query_seed_start <= query_end);
565BOOST_REQUIRE(m_ipGapAlign->greedy_subject_seed_start >= subject_start);
566BOOST_REQUIRE(m_ipGapAlign->greedy_subject_seed_start <= subject_end);
574 CSeq_idqid(
"WP_026970592.1");
575unique_ptr<SSeqLoc> qsl(
578unique_ptr<SSeqLoc> ssl(
584queries.push_back(*qsl);
585subjects.push_back(*ssl);
593 SetupQueries(queries, m_iclsQueryInfo, &m_iclsQueryBlk,
594 prog, strand_opt, blast_msg);
596BOOST_REQUIRE(m->empty());
599 Uint4subject_length;
600vector<BLAST_SequenceBlk*> subject_blk_v;
602&subject_blk_v, &subject_length);
605 false,
true, 0.00001);
606m_ipExtParams->options->chaining =
true;
608 const intnum_init_hsps = 1;
609 const intq_starts[num_init_hsps] = { 164 };
610 const ints_starts[num_init_hsps] = { 242 };
611 const intlengths[num_init_hsps] = { 9 };
612 const intscores[num_init_hsps] = { 42 };
618 for(index = 0; index < num_init_hsps; ++index) {
621ungapped_data->
q_start= q_starts[index];
622ungapped_data->
s_start= s_starts[index];
623ungapped_data->
length= lengths[index];
624ungapped_data->
score= scores[index];
626s_starts[index], ungapped_data);
636m_iclsQueryBlk, m_iclsQueryInfo, subject_blk_v[0],
637m_ipGapAlign, m_ipScoreParams, m_ipExtParams,
638m_ipHitParams, m_ipWordParams, m_ipInitHitlist,
639&hsp_list, gapped_stats,
NULL);
642BOOST_REQUIRE_EQUAL(hsp_list->
hspcnt, 0);
646BOOST_REQUIRE_EQUAL(gapped_stats->
extensions, 0);
648 sfree(gapped_stats);
656 const intkSize = 100;
657 const intkDefaultSize = 1000000;
659BOOST_REQUIRE(retval);
666 const intkDefaultSize = 1000000;
668BOOST_REQUIRE(retval);
674 const intkSize = 5000000;
676BOOST_REQUIRE(retval);
684 boolnull_output =
false;
688BOOST_REQUIRE_EQUAL(
true, null_output);
694 boolnull_output =
false;
698BOOST_REQUIRE_EQUAL(
true, null_output);
Declares the CBl2Seq (BLAST 2 Sequences) class.
#define sfree(x)
Safe free a pointer: belongs to a higher level header.
Declarations of static arrays used to define some NCBI encodings to be used in a toolkit independent ...
BlastInitHitList * BLAST_InitHitListNew(void)
Allocate memory for the BlastInitHitList structure.
Boolean BLAST_SaveInitialHit(BlastInitHitList *init_hitlist, Int4 q_off, Int4 s_off, BlastUngappedData *ungapped_data)
Save the initial hit data into the initial hit list structure.
void Blast_InitHitListSortByScore(BlastInitHitList *init_hitlist)
Sort array of initial HSPs by score.
Blast_ExtendWord * BlastExtendWordFree(Blast_ExtendWord *ewp)
Deallocate memory for the word extension structure.
BlastInitHitList * BLAST_InitHitListFree(BlastInitHitList *init_hitlist)
Free memory for the BlastInitList structure.
Structures and functions prototypes used for BLAST gapped extension.
Int2 BLAST_GetGappedScore(EBlastProgramType program_number, BLAST_SequenceBlk *query, BlastQueryInfo *query_info, BLAST_SequenceBlk *subject, BlastGapAlignStruct *gap_align, const BlastScoringParameters *score_params, const BlastExtensionParameters *ext_params, const BlastHitSavingParameters *hit_params, const BlastInitialWordParameters *word_params, BlastInitHitList *init_hitlist, BlastHSPList **hsp_list_ptr, BlastGappedStats *gapped_stats, Boolean *fence_hit)
Performs gapped extension for all non-Mega BLAST programs, given that ungapped extension has been don...
Int2 BLAST_GapAlignStructNew(const BlastScoringParameters *score_params, const BlastExtensionParameters *ext_params, Uint4 max_subject_length, BlastScoreBlk *sbp, BlastGapAlignStruct **gap_align_ptr)
Initializes the BlastGapAlignStruct structure.
BlastGapAlignStruct * BLAST_GapAlignStructFree(BlastGapAlignStruct *gap_align)
Deallocates memory in the BlastGapAlignStruct structure.
BlastHSPList * Blast_HSPListNew(Int4 hsp_max)
Creates HSP list structure with a default size HSP array.
BlastHSPList * Blast_HSPListFree(BlastHSPList *hsp_list)
Deallocate memory for an HSP list structure as well as all it's components.
Blast_Message * Blast_MessageFree(Blast_Message *blast_msg)
Deallocates message memory.
Declares the CBlastNucleotideOptionsHandle class.
Definitions which are dependant on the NCBI C++ Object Manager.
BlastHitSavingOptions * BlastHitSavingOptionsFree(BlastHitSavingOptions *options)
Deallocate memory for BlastHitSavingOptions.
@ eGreedyScoreOnly
Greedy extension (megaBlast)
Int2 BlastEffectiveLengthsOptionsNew(BlastEffectiveLengthsOptions **options)
Allocate memory for BlastEffectiveLengthsOptions* and fill with default values.
BlastInitialWordOptions * BlastInitialWordOptionsFree(BlastInitialWordOptions *options)
Deallocate memory for BlastInitialWordOptions.
Int2 BlastScoringOptionsNew(EBlastProgramType program, BlastScoringOptions **options)
Allocate memory for BlastScoringOptions and fill with default values.
BlastEffectiveLengthsOptions * BlastEffectiveLengthsOptionsFree(BlastEffectiveLengthsOptions *options)
Deallocate memory for BlastEffectiveLengthsOptions*.
BlastExtensionOptions * BlastExtensionOptionsFree(BlastExtensionOptions *options)
Deallocate memory for BlastExtensionOptions.
Int2 BlastHitSavingOptionsNew(EBlastProgramType program, BlastHitSavingOptions **options, Boolean gapped_calculation)
Allocate memory for BlastHitSavingOptions.
Int2 BlastInitialWordOptionsNew(EBlastProgramType program, BlastInitialWordOptions **options)
Allocate memory for BlastInitialWordOptions and fill with default values.
BlastScoringOptions * BlastScoringOptionsFree(BlastScoringOptions *options)
Deallocate memory for BlastScoringOptions.
Int2 BlastExtensionOptionsNew(EBlastProgramType program, BlastExtensionOptions **options, Boolean gapped)
Allocate memory for BlastExtensionOptions and fill with default values.
BlastHitSavingParameters * BlastHitSavingParametersFree(BlastHitSavingParameters *parameters)
Deallocate memory for BlastHitSavingOptions*.
BlastEffectiveLengthsParameters * BlastEffectiveLengthsParametersFree(BlastEffectiveLengthsParameters *parameters)
Deallocate memory for BlastEffectiveLengthsParameters*.
Int2 BlastExtensionParametersNew(EBlastProgramType blast_program, const BlastExtensionOptions *options, BlastScoreBlk *sbp, BlastQueryInfo *query_info, BlastExtensionParameters **parameters)
Calculate the raw values for the X-dropoff parameters.
BlastInitialWordParameters * BlastInitialWordParametersFree(BlastInitialWordParameters *parameters)
Deallocate memory for BlastInitialWordParameters.
Int2 BlastScoringParametersNew(const BlastScoringOptions *options, BlastScoreBlk *sbp, BlastScoringParameters **parameters)
Calculate scaled cutoff scores and gap penalties.
Int2 BlastInitialWordParametersNew(EBlastProgramType program_number, const BlastInitialWordOptions *word_options, const BlastHitSavingParameters *hit_params, const LookupTableWrap *lookup_wrap, const BlastScoreBlk *sbp, BlastQueryInfo *query_info, Uint4 subject_length, BlastInitialWordParameters **parameters)
Allocate memory for BlastInitialWordParameters and set x_dropoff.
Int2 BlastHitSavingParametersNew(EBlastProgramType program_number, const BlastHitSavingOptions *options, const BlastScoreBlk *sbp, const BlastQueryInfo *query_info, Int4 avg_subject_length, Int4 compositionBasedStats, BlastHitSavingParameters **parameters)
Allocate memory and initialize the BlastHitSavingParameters structure.
Int2 BlastEffectiveLengthsParametersNew(const BlastEffectiveLengthsOptions *options, Int8 db_length, Int4 num_seqs, BlastEffectiveLengthsParameters **parameters)
Allocate memory for BlastEffectiveLengthsParameters.
Boolean Blast_QueryIsProtein(EBlastProgramType p)
Returns true if the query is protein.
EBlastProgramType
Defines the engine's notion of the different applications of the BLAST algorithm.
Utilities initialize/setup BLAST.
Int2 Blast_ScoreBlkKbpGappedCalc(BlastScoreBlk *sbp, const BlastScoringOptions *scoring_options, EBlastProgramType program, const BlastQueryInfo *query_info, Blast_Message **error_return)
Blast_ScoreBlkKbpGappedCalc, fills the ScoreBlkPtr for a gapped search.
Int2 Blast_ScoreBlkMatrixInit(EBlastProgramType program_number, const BlastScoringOptions *scoring_options, BlastScoreBlk *sbp, GET_MATRIX_PATH get_path)
Initializes the substitution matrix in the BlastScoreBlk according to the scoring options specified.
Int2 BLAST_CalcEffLengths(EBlastProgramType program_number, const BlastScoringOptions *scoring_options, const BlastEffectiveLengthsParameters *eff_len_params, const BlastScoreBlk *sbp, BlastQueryInfo *query_info, Blast_Message **blast_message)
Function to calculate effective query length and db length as well as effective search space.
BlastScoreBlk * BlastScoreBlkFree(BlastScoreBlk *sbp)
Deallocates BlastScoreBlk as well as all associated structures.
Int2 Blast_ScoreBlkKbpUngappedCalc(EBlastProgramType program, BlastScoreBlk *sbp, Uint1 *query, const BlastQueryInfo *query_info, Blast_Message **blast_message)
Calculate and fill the ungapped Karlin-Altschul parameters in the BlastScoreBlk structure (fields kbp...
BlastScoreBlk * BlastScoreBlkNew(Uint1 alphabet, Int4 number_of_contexts)
Allocates and initializes BlastScoreBlk.
BLAST_SequenceBlk * BlastSequenceBlkFree(BLAST_SequenceBlk *seq_blk)
Deallocate memory for a sequence block.
BOOST_AUTO_TEST_CASE(testGapAlignment)
int x_score_compare_hsps(const void *v1, const void *v2)
BOOST_AUTO_TEST_SUITE_END() static int s_GetSegmentFlags(const CBioseq &bioseq)
Wrapper class for BLAST_SequenceBlk .
Handle to the nucleotide-nucleotide options to the BLAST algorithm.
Encapsulates ALL the BLAST algorithm's options.
Wrapper class for BlastQueryInfo .
static CTestObjMgr & Instance()
typedef for the messages for an entire BLAST search, which could be comprised of multiple query seque...
static SQLCHAR output[256]
void MBSpaceFree(SMBSpace *sp)
Free the space structure.
SMBSpace * MBSpaceNew(int num_space_arrays)
Allocate a space structure for greedy alignment At least num_space_arrays will be allocated,...
BlastQueryInfo * Get() const
void SetupSubjects(TSeqLocVector &subjects, EBlastProgramType program, vector< BLAST_SequenceBlk * > *seqblk_vec, unsigned int *max_subjlen)
Sets up internal subject data structure for the BLAST search.
void SetupQueries(TSeqLocVector &queries, BlastQueryInfo *qinfo, BLAST_SequenceBlk **seqblk, EBlastProgramType prog, objects::ENa_strand strand_opt, TSearchMessages &messages)
Populates BLAST_SequenceBlk with sequence data for use in CORE BLAST.
objects::ENa_strand GetStrandOption() const
#define BLASTNA_SEQ_CODE
Identifies the blastna alphabet, for use in blast only.
#define BLASTAA_SEQ_CODE
== Seq_code_ncbistdaa
EBlastProgramType GetProgramType() const
Returns the CORE BLAST notion of program type.
const CBlastOptions & GetOptions() const
Return the object which this object is a handle for.
char * BlastFindMatrixPath(const char *matrix_name, Boolean is_prot)
Returns the path to a specified matrix.
void SetupQueryInfo(TSeqLocVector &queries, EBlastProgramType prog, objects::ENa_strand strand_opt, BlastQueryInfo **qinfo)
Allocates the query information structure and fills the context offsets, in case of multiple queries,...
static CBlastOptionsHandle * CreateTask(string task, EAPILocality locality=CBlastOptions::eLocal)
Creates an options handle object configured with default options for the requested task,...
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
int16_t Int2
2-byte (16-bit) signed integer
int32_t Int4
4-byte (32-bit) signed integer
uint32_t Uint4
4-byte (32-bit) unsigned integer
int64_t Int8
8-byte (64-bit) signed integer
ENa_strand
strand of nucleic acid
@ eNa_strand_both
in forward orientation
Magic spell ;-) needed for some weird compilers... very empiric.
Defines: CTimeFormat - storage class for time format.
vector< SSeqLoc > TSeqLocVector
Vector of sequence locations.
Uint1 * sequence
Sequence used for search (could be translation).
Options for setting up effective lengths and search spaces.
Parameters for setting up effective lengths and search spaces.
Options used for gapped extension These include: a.
Boolean chaining
Use chaining for fast approximate gapped extension.
EBlastPrelimGapExt ePrelimGapExt
type of preliminary gapped extension (normally) for calculating score.
Computed values used as parameters for gapped alignments.
Structure supporting the gapped alignment.
Structure containing hit counts from the gapped stage of a BLAST search.
Int4 extensions
Total number of gapped extensions performed.
The structure to hold all HSPs for a given sequence after the gapped alignment.
Int4 hspcnt
Number of HSPs saved.
BlastHSP ** hsp_array
Array of pointers to individual HSPs.
Structure holding all information about an HSP.
BlastSeg query
Query sequence info.
BlastSeg subject
Subject sequence info.
Int4 score
This HSP's raw score.
Options used when evaluating and saving hits These include: a.
double expect_value
The expect value cut-off threshold for an HSP, or a combined hit if sum statistics is used.
Parameter block that contains a pointer to BlastHitSavingOptions and the values derived from it.
Structure to hold all initial HSPs for a given subject sequence.
Options needed for initial word finding and processing.
Parameter block that contains a pointer to BlastInitialWordOptions and the values derived from it.
Structure used for scoring calculations.
Blast_KarlinBlk ** kbp
Karlin-Altschul parameters.
Blast_KarlinBlk ** kbp_gap
K-A parameters for gapped alignments.
Blast_KarlinBlk ** kbp_gap_std
K-A parameters for std (not position-based) alignments.
Blast_KarlinBlk ** kbp_std
K-A parameters for ungapped alignments.
Blast_GumbelBlk * gbp
Gumbel parameters for FSC.
Scoring options block Used to produce the BlastScoreBlk structure This structure may be needed for lo...
Boolean gapped_calculation
gap-free search if FALSE
Scoring parameters block Contains scoring-related information that is actually used for the blast sea...
Int4 offset
Start of hsp.
Structure to hold ungapped alignment information.
Int4 score
Score of the ungapped alignment.
Int4 length
Length of the ungapped alignment.
Int4 q_start
Start of the ungapped alignment in query.
Int4 s_start
Start of the ungapped alignment in subject.
Structure for keeping initial word extension information.
Structure to hold the a message from the core of the BLAST engine.
void setupStructures(EBlastProgramType program, Uint4 subject_length, bool greedy, bool chaining=false, double expect_value=10)
BlastHitSavingParameters * m_ipHitParams
BlastHitSavingOptions * m_HitSavingOpts
CBLAST_SequenceBlk m_iclsQueryBlk
~CBlastExtendTestFixture()
CBlastExtendTestFixture()
BlastInitialWordParameters * m_ipWordParams
BlastInitialWordOptions * m_WordOpts
BlastGapAlignStruct * m_ipGapAlign
BlastScoringOptions * m_ScoringOpts
BlastScoreBlk * m_ipScoreBlk
BlastExtensionParameters * m_ipExtParams
CBlastQueryInfo m_iclsQueryInfo
BlastInitHitList * m_ipInitHitlist
BlastScoringParameters * m_ipScoreParams
void fillEffectiveLengths(EBlastProgramType program_type, const BlastScoringOptions *score_options, Int8 db_length, Int4 db_num_seq)
BlastExtensionOptions * m_ExtnOpts
void setupGreedyHitList()
Space structure for greedy alignment algorithm.
Int4 space_allocated
number of structures allocated
Utility stuff for more convenient using of Boost.Test library.
voidp calloc(uInt items, uInt size)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4