From: Erik Garrison Date: Thu, 5 Aug 2010 13:01:02 +0000 (-0400) Subject: for json output in bamtools convert X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=62c1034f56e918f277bf9ee1ad5afde5a654bf88;p=bamtools.git for json output in bamtools convert Process qualities to provide a list of Q scores in the json output instead of just a string of characters. --- diff --git a/bamtools_convert.cpp b/bamtools_convert.cpp index ddb3389..408b4fd 100644 --- a/bamtools_convert.cpp +++ b/bamtools_convert.cpp @@ -388,8 +388,15 @@ void ConvertTool::ConvertToolPrivate::PrintJson(const BamAlignment& a) { m_out << "\"queryBases\":\"" << a.QueryBases << "\","; // write qualities - if ( !a.Qualities.empty() ) - m_out << "\"qualities\":\"" << a.Qualities << "\","; + if ( !a.Qualities.empty() ) { + string::const_iterator s = a.Qualities.begin(); + m_out << "\"qualities\":[" << static_cast(*s) - 33; + ++s; + for (; s != a.Qualities.end(); ++s) { + m_out << "," << static_cast(*s) - 33; + } + m_out << "],"; + } // write tag data const char* tagData = a.TagData.c_str(); @@ -609,4 +616,4 @@ void ConvertTool::ConvertToolPrivate::PrintSam(const BamAlignment& a) { void ConvertTool::ConvertToolPrivate::PrintWiggle(const BamAlignment& a) { ; -} \ No newline at end of file +}