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
|
#include <iostream>
#include <seqan/seeds.h>
using namespace seqan;
int main()
{
typedef Seed<Simple> TSeed;
typedef SeedSet<TSeed> TSeedSet;
typedef Iterator<TSeedSet>::Type TIterator;
DnaString seqH = "ggatACGTccTTCGAtACccTGGTg";
DnaString seqV = "ttccgACGTgTTCGAgACtgaGGTca";
TSeed seed0(4, 5, 4);
TSeed seed1(10, 10, 5);
TSeed seed2(14, 14, 4);
TSeed seed3(21, 21, 3);
TSeedSet seedSet;
addSeed(seedSet, seed0, Single());
addSeed(seedSet, seed1, Single());
addSeed(seedSet, seed2, Single());
addSeed(seedSet, seed3, Single());
std::cout << "Single Method:" << std::endl;
for (TIterator it = begin(seedSet, Standard()); it != end(seedSet, Standard()); ++it)
std::cout << "Seed: " << *it << std::endl;
std::cout << std::endl;
clear(seedSet);
if (!addSeed(seedSet, seed0, 2, Merge()))
addSeed(seedSet, seed0, Single());
if (!addSeed(seedSet, seed1, 2, Merge()))
addSeed(seedSet, seed1, Single());
if (!addSeed(seedSet, seed2, 2, Merge()))
addSeed(seedSet, seed2, Single());
if (!addSeed(seedSet, seed3, 2, Merge()))
addSeed(seedSet, seed3, Single());
std::cout << "Merge Method:" << std::endl;
for (TIterator it = begin(seedSet, Standard()); it != end(seedSet, Standard()); ++it)
std::cout << "Seed: " << *it << std::endl;
std::cout << std::endl;
clear(seedSet);
Score<int, Simple> scoreScheme(2, -1, -2);
if (!addSeed(seedSet, seed0, 2, 1, scoreScheme, seqH, seqV, Chaos()))
addSeed(seedSet, seed0, Single());
if (!addSeed(seedSet, seed1, 2, 1, scoreScheme, seqH, seqV, Chaos()))
addSeed(seedSet, seed1, Single());
if (!addSeed(seedSet, seed2, 2, 1, scoreScheme, seqH, seqV, Chaos()))
addSeed(seedSet, seed2, Single());
if (!addSeed(seedSet, seed3, 2, 1, scoreScheme, seqH, seqV, Chaos()))
addSeed(seedSet, seed3, Single());
std::cout << "Chaos Method:" << std::endl;
for (TIterator it = begin(seedSet, Standard()); it != end(seedSet, Standard()); ++it)
std::cout << "Seed: " << *it << std::endl;
std::cout << std::endl;
}
|