#import(nl.lumc.sasc.biopet.core.summary.Summary) #import(nl.lumc.sasc.biopet.core.report.ReportPage) #import(nl.lumc.sasc.biopet.pipelines.bammetrics.BammetricsReport) #import(java.io.File) <%@ var summary: Summary %> <%@ var sampleId: Option[String] = None %> <%@ var libId: Option[String] = None %> <%@ var sampleLevel: Boolean = false %> <%@ var rootPath: String %> <%@ var outputDir: File %> <%@ var showPlot: Boolean = false %> <%@ var showTable: Boolean = true %> #{ val samples = sampleId match { case Some(sample) => { List(sample.toString) } case _ => summary.samples.toList } }# #if (showPlot) #{ BammetricsReport.alignmentSummaryPlot(outputDir, "alignmentSummary", summary, !sampleLevel, sampleId = sampleId) }#
Tsv file #end #if (showTable) #if (!sampleLevel) #end #for (sample <- samples.toList.sorted) #{ val libs = (libId, sampleLevel) match { case (_, true) => List("") case (Some(libId), _) => List(libId.toString) case _ => summary.libraries(sample).toList } }# #for (libId <- libs) #if (libs.head != libId) #end #if (!sampleLevel) #end #{ val prefixPath = List("samples", sample) ::: (if (libId.isEmpty) Nil else List("libraries", libId)) ::: List("bammetrics", "stats") val total = summary.getValue((prefixPath ::: List("biopet_flagstat", "All")):_*).getOrElse(0L).asInstanceOf[Long] val mapped = summary.getValue((prefixPath ::: List("biopet_flagstat", "Mapped")):_*).getOrElse(0L).asInstanceOf[Long] val duplicates = summary.getValue((prefixPath ::: List("biopet_flagstat", "Duplicates")):_*).getOrElse(0L).asInstanceOf[Long] val insertsizeMean = summary.getValue((prefixPath ::: List("insert_size_metrics", "mean_insert_size")):_*) }# #end #end
SampleLibraryTotal Mapped (%) Duplicates (%) Insert size
${sample}
${libId}${total} ${mapped} ${mapped.toDouble / total * 100}% ${duplicates} ${duplicates.toDouble / total * 100}% ${insertsizeMean}
#end