#!/usr/bin/perl

# This is the data from Nov 2018.

@strains = ("RUB", "RUBKO2");
@mutations = ("Null", "WT");
@reps = ("1", "2", "3", "4", "5", "6");

@grps = ("RKO", "RKKO", "RWT");
%grp2str = ("RKO" => "RUB", "RWT" => "RUB", "RKKO" => "RUBKO2");
%grp2mut = ("RKO" => "Null", "RWT" => "WT", "RKKO" => "Null");

@ids = ("RWT4", "RWT5", "RWT6", "RKO4", "RKO5", "RKO6", "RKKO1", "RKKO2", "RKKO3");


$useColor = "102,0,204";

# Step 1)  Write track view header.
$prio = 100;
open(OUT, ">trackDb.Set2.txt");
print OUT "track\tGM3_tracks\n";
print OUT "compositeTrack\ton\n";
print OUT "shortLabel\tGM Set2\n";
print OUT "longLabel\tGMuse RNAseq Depth\n";
print OUT "priority\t$prio\n";
print OUT "visibility\tfull\n";
print OUT "subGroup1\tview View COVN=depthNorm\n"; # COVR=depthRaw\n";
print OUT "subGroup2\tstrain Strain";
foreach $str (@strains) { print OUT " $str=$str"; } print OUT "\n";
print OUT "subGroup3\trmut RubcnMutation";
foreach $mut (@mutations) { print OUT " $mut=$mut"; } print OUT "\n";
print OUT "subGroup4\treplicate Replicate";
foreach $rep (@reps) { print OUT " $rep=$rep"; } print OUT "\n";
print OUT "dimensions\tdimX=strain dimY=rmut\n";
print OUT "sortOrder\tstrain=+ rmut=+ replicate=+\n";
print OUT "configurable\ton\n";
print OUT "type\tbigWig\n\n";

# Step 2a)  Write header for normalized depth track grouping.
print OUT "   track\tGM3_tracksViewDepthN\n";
print OUT "   parent\tGM3_tracks\n";
print OUT "   shortLabel\tNormDepth\n";
print OUT "   longLabel\tNormalized RNA-seq Depth\n";
print OUT "   view\tCOVN\n";
print OUT "   visibility\tfull\n";
print OUT "   type\tbigWig\n";
print OUT "   allButtonPair\ton\n";
print OUT "   dragAndDrop\ton\n";
print OUT "   alwaysZero\ton\n";
print OUT "   graphTypeDefault\tbar\n";
print OUT "   maxHeightPixels\t150:40:11\n";
print OUT "   viewLimits\t0:300\n";
print OUT "   showSubtrackColorOnUi\ton\n";
print OUT "   viewUi\ton\n\n";

# Step 2b)  Write normalized depth tracks.
foreach $id (@ids) {
  $rep = substr($id, -1);
  $grp = $id; $grp =~ s/$rep//;
  $str = $grp2str{$grp};
  $mut = $grp2mut{$grp};
  $bwfile = "DATA/set2/$id.depthNorm.bw";
  unless (-e $bwfile) { print "WARNING: Did not find $bwfile.\n"; exit; }
  $prio++;
  print OUT "      track\t$id.NDset2\n";
  print OUT "      parent\tGM3_tracksViewDepthN on\n";
  print OUT "      bigDataUrl\t$bwfile\n";
  print OUT "      shortLabel\t$id\n";
  print OUT "      longLabel\tnormalized read depth: $id (set2)\n";
  print OUT "      type\tbigWig\n";
  print OUT "      color\t$useColor\n";
  print OUT "      priority\t$prio\n";
  print OUT "      visibility\thide\n";
  print OUT "      subGroups\tstrain=$str rmut=$mut replicate=$rep view=COVN\n\n";
}

close(OUT);

