GearsReport.scala 1.71 KB
Newer Older
Wai Yi Leung's avatar
Wai Yi Leung committed
1
2
3
4
5
6
7
8
package nl.lumc.sasc.biopet.pipelines.gears

import java.io.{ PrintWriter, File }

import nl.lumc.sasc.biopet.core.report.MultisampleReportBuilder
import nl.lumc.sasc.biopet.core.report.ReportBuilderExtension
import nl.lumc.sasc.biopet.core.report.ReportPage
import nl.lumc.sasc.biopet.core.report.ReportSection
Wai Yi Leung's avatar
Wai Yi Leung committed
9
import nl.lumc.sasc.biopet.utils.config.Configurable
Wai Yi Leung's avatar
Wai Yi Leung committed
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

class GearsReport(val root: Configurable) extends ReportBuilderExtension {
  val builder = GearsReport

  override val defaultCoreMemory = 3.0
}

object GearsReport extends MultisampleReportBuilder {

  // FIXME: Not yet finished
  // TODO: Summary all: Add summary (sunflare plot)
  // TODO: Sample specific: Add summary (sunflare plot)
  // TODO: Add dusbin analysis (aggregated)
  // TODO: Add alignment stats per sample for the dustbin analysis

  def indexPage = {
    ReportPage(
      List("Samples" -> generateSamplesPage(pageArgs)) ++
Wai Yi Leung's avatar
Wai Yi Leung committed
28
        Map(
Wai Yi Leung's avatar
Wai Yi Leung committed
29
30
31
32
33
          "Versions" -> ReportPage(List(), List((
            "Executables" -> ReportSection("/nl/lumc/sasc/biopet/core/report/executables.ssp"
            ))), Map())
        ),
      List(
Wai Yi Leung's avatar
Wai Yi Leung committed
34
35
        "Gears intro" -> ReportSection("/nl/lumc/sasc/biopet/pipelines/gears/gearsFront.ssp"),
        "Sunburst analysis" -> ReportSection("/nl/lumc/sasc/biopet/pipelines/gears/gearsSunburst.ssp")
Wai Yi Leung's avatar
Wai Yi Leung committed
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
      ),
      pageArgs
    )
  }

  def samplePage(sampleId: String, args: Map[String, Any]) = {
    ReportPage(List(
    ), List(
      "Sunburst analysis" -> ReportSection("/nl/lumc/sasc/biopet/pipelines/gears/gearsSunburst.ssp")
    ), args)
  }

  def libraryPage(sampleId: String, libId: String, args: Map[String, Any]) = {
    ReportPage(List(
    ), List(
    ), args)
  }

  def reportName = "Gears :: Metagenomics Report"

}