40 #ifndef _ALIGNMENTFILTERMAFITERATOR_H_
41 #define _ALIGNMENTFILTERMAFITERATOR_H_
97 const std::vector<std::string>& species,
98 unsigned int windowSize,
102 bool keepTrashedBlocks,
133 const std::vector<std::string>& species,
134 unsigned int windowSize,
138 bool keepTrashedBlocks,
208 AlignmentFilter2MafIterator(
MafIterator* iterator,
const std::vector<std::string>& species,
unsigned int windowSize,
unsigned int step,
unsigned int maxGap,
unsigned int maxPos,
bool keepTrashedBlocks,
bool missingAsGap) :
237 AlignmentFilter2MafIterator(
MafIterator* iterator,
const std::vector<std::string>& species,
unsigned int windowSize,
unsigned int step,
double maxPropGap,
unsigned int maxPos,
bool keepTrashedBlocks,
bool missingAsGap) :
Helper class for developping filter for maf blocks.
Filter maf blocks to remove ambiguously aligned or non-informative regions.
AlignmentFilter2MafIterator(MafIterator *iterator, const std::vector< std::string > &species, unsigned int windowSize, unsigned int step, unsigned int maxGap, unsigned int maxPos, bool keepTrashedBlocks, bool missingAsGap)
Create a new AlignmentFilter2MafIterator with absolute thresholds.
std::vector< std::string > species_
std::deque< std::vector< bool > > window_
AlignmentFilter2MafIterator(MafIterator *iterator, const std::vector< std::string > &species, unsigned int windowSize, unsigned int step, double maxPropGap, unsigned int maxPos, bool keepTrashedBlocks, bool missingAsGap)
Create a new AlignmentFilterMafIterator with relative thresholds.
MafBlock * nextRemovedBlock()
Get the next available removed alignment block.
MafBlock * analyseCurrentBlock_()
std::deque< MafBlock * > blockBuffer_
std::deque< MafBlock * > trashBuffer_
Filter maf blocks to remove ambiguously aligned or non-informative regions.
std::deque< MafBlock * > blockBuffer_
AlignmentFilterMafIterator(MafIterator *iterator, const std::vector< std::string > &species, unsigned int windowSize, unsigned int step, unsigned int maxGap, double maxEnt, bool keepTrashedBlocks, bool missingAsGap)
Create a new AlignmentFilterMafIterator with absolute thresholds.
std::deque< std::vector< int > > window_
AlignmentFilterMafIterator(MafIterator *iterator, const std::vector< std::string > &species, unsigned int windowSize, unsigned int step, double maxPropGap, double maxEnt, bool keepTrashedBlocks, bool missingAsGap)
Create a new AlignmentFilterMafIterator with relative thresholds.
std::deque< MafBlock * > trashBuffer_
MafBlock * analyseCurrentBlock_()
MafBlock * nextRemovedBlock()
Get the next available removed alignment block.
std::vector< std::string > species_
A synteny block data structure, the basic unit of a MAF alignement file.
Interface to loop over maf alignment blocks.
Interface to loop over removed blocks of a maf alignment.