]> git.donarmstrong.com Git - bamtools.git/blobdiff - bamtools_convert.cpp
for json output in bamtools convert
[bamtools.git] / bamtools_convert.cpp
index ddb338910f535532c319b4159f75932147c67c03..408b4fd17478fb29ae66ffb4dc91d595d4edee4c 100644 (file)
@@ -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<short>(*s) - 33;
+        ++s;
+        for (; s != a.Qualities.end(); ++s) {
+            m_out << "," << static_cast<short>(*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
+}