FU Logo
  • Startseite
  • Kontakt
  • Impressum
  • Home
  • Listenauswahl
  • Anleitungen

[Seqan-dev] Trouble Hashing Kmers into Qgram Index

<-- thread -->
<-- date -->
  • From: Brett Bowman <bnbowman@gmail.com>
  • To: SeqAn Development <seqan-dev@lists.fu-berlin.de>
  • Date: Tue, 18 Nov 2014 22:34:45 -0800
  • Reply-to: SeqAn Development <seqan-dev@lists.fu-berlin.de>
  • Subject: [Seqan-dev] Trouble Hashing Kmers into Qgram Index

Sorry to be a bother, but I decided to go back to the docs and start fresh and I'm still having issues.  

We're using Qgrams, so I trying to write a simple loop to search for all 12mers from a query sequence "seq" in the index formed from a StringSet of references "refSeq", building on the example code in the Q-Gram Index tutorial:
"""
  TFinder qgramFinder(index);
 for (size_t i = 0; i < length(seq)-12; i++)
 {
     TInfix::Type kmer = infix(seq, i, i+12);
     std::cout << kmer << std::endl;

     seqan::hash(indexShape(index), kmer);
     for (unsigned i = 0; i < length(getOccurrences(index, indexShape(index))); ++i)
     {
         std::cout << getOccurrences(index, indexShape(index))[i] << std::endl;
     }
     std::cout << std::endl;
 }
"""

but I'm getting a fairly obtuse error message I don't quite understand, and doesn't point me back to any specific lines in my code.

"""
/usr/include/seqan/index/shape_base.h:535:55: error: indirection requires pointer operand ('seqan::Segment<const seqan::String<seqan::SimpleType<unsigned
      char, seqan::Dna5_>, seqan::Alloc<void> >, seqan::InfixSegment>' invalid)
                        hash * ValueSize<TValue>::VALUE + ordValue((TValue)*it),
                                                                           ^~~
/usr/include/seqan/index/shape_base.h:548:22: note: in instantiation of function template specialization 'seqan::_hashFixedShape<unsigned long,
      seqan::SimpleType<unsigned char, seqan::Dna5_>, seqan::Segment<const seqan::String<seqan::SimpleType<unsigned char, seqan::Dna5_>, seqan::Alloc<void> >,
      seqan::InfixSegment>, 12>' requested here
                return me.hValue = _hashFixedShape(me.hValue, it, TValue(), UngappedShape<q>());
                                   ^
/home/bbowman/git/SRSLI/src/C++/SparseAlignment.hpp:102:16: note: in instantiation of function template specialization 'seqan::hash<seqan::SimpleType<unsigned
      char, seqan::Dna5_>, 12, seqan::Segment<const seqan::String<seqan::SimpleType<unsigned char, seqan::Dna5_>, seqan::Alloc<void> >, seqan::InfixSegment>
      >' requested here
        seqan::hash(indexShape(index), kmer);
               ^
/home/bbowman/git/SRSLI/src/C++/main.cpp:86:9: note: in instantiation of function template specialization 'FindSeeds2<FindSeedsConfig<12,
      seqan::UngappedShape<12>, seqan::IndexQGram<seqan::UngappedShape<12>, seqan::Tag<seqan::Default_> > > >' requested here
        FindSeeds2(querySeedHits, refSetIndex, idxAndRecord.second.Seq);
"""

Suggestions?

Sincerely,
Brett
<-- thread -->
<-- date -->
  • Follow-Ups:
    • Re: [Seqan-dev] Trouble Hashing Kmers into Qgram Index
      • From: Rahn, René <rene.maerker@fu-berlin.de>
  • seqan-dev - November 2014 - Archives indexes sorted by:
    [ thread ] [ subject ] [ author ] [ date ]
  • Complete archive of the seqan-dev mailing list
  • More info on this list...

Hilfe

  • FAQ
  • Dienstbeschreibung
  • ZEDAT Beratung
  • postmaster@lists.fu-berlin.de

Service-Navigation

  • Startseite
  • Listenauswahl

Einrichtung Mailingliste

  • ZEDAT-Portal
  • Mailinglisten Portal