#!/usr/bin/perl

@trts = ("T", "V");
@reps = (1,2,3,4,5);
@tlist = ("d", "p", "L");
#@idlist = (); foreach $t (@tlist) { foreach $trt (@trts) { foreach $r (@reps) { $id = "$trt$r$t"; push @idlist, $id; } } }

%key = ();
open(IN, "/ddn/gs1/home/grimmsa/sherry/RNAseq_Oct2015/tophat_output/sample_key.txt");
while (<IN>) {
  chomp $_; ($sherryID, $id) = split/\t/, $_;
  $key{$id} = $sherryID;
}
close(IN);

%colorkey = ("Td" => "0,0,204", "Vd" => "51,153,255", "Tp" => "102,0,204", "Vp" => "178,102,255", "TL" => "0,102,0", "VL" => "0,204,0");
# distal uterus = blue, proximal uterus = purple, liver = green // dark = treated, light = vehicle


$tracktxt = "trackDb.txt";
$prio = 100;

# Step 1)  Write track view header.
open(OUT, ">$tracktxt");
print OUT "track\tCoulterTracksDPL\n";
print OUT "compositeTrack\ton\n";
print OUT "shortLabel\tCoulter RNA-seq\n";
print OUT "longLabel\tNormalized Mapped Read Depth for S. Coulter's Rat RNA-seq\n";
print OUT "priority\t$prio\n";
print OUT "visibility\tfull\n";
print OUT "subGroup1\tview Views COV=depth\n";
#print OUT "subGroup2\ttissue Tissue ";
#foreach $t (@tlist) { print OUT " $t=$t"; } print OUT "\n";
print OUT "subGroup2\ttissue Tissue d=distalUterus p=proximalUterus L=liver\n";
#print OUT "subGroup3\ttrt Treatment ";
#foreach $trt (@trts) { print OUT " $trt=$trt"; } print OUT "\n";
print OUT "subGroup3\ttrt Treatment T=treated V=vehicle\n";
print OUT "subGroup4\trep Replicate ";
foreach $r (@reps) { print OUT " r$r=$r"; } print OUT "\n";

print OUT "dimensions\tdimX=trt dimY=rep dimA=tissue\n";
print OUT "sortOrder\ttissue=+ trt=+ rep=+\n";
print OUT "configurable\ton\n";
print OUT "type\tbed 3\n\n";

# Step 2a)  Write header for depth track grouping.
print OUT "   track\tCoulterTracksDPLViewDepth\n";
print OUT "   parent\tCoulterTracksDPL\n";
print OUT "   shortLabel\tDepth, RNA-seq\n";
print OUT "   longLabel\tNormalized Depth, stranded RNA-seq\n";
print OUT "   view\tCOV\n";
print OUT "   visibility\thide\n";
print OUT "   type\tbigWig\n";
print OUT "   allButtonPair\ton\n";
print OUT "   centerLabelsDense\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:200\n";
print OUT "   showSubtrackColorOnUi\ton\n";
print OUT "   viewUi\ton\n\n";

# Step 2b)  Write depth tracks.
foreach $t (@tlist) { foreach $trt (@trts) { foreach $r (@reps) {
  $id = "$trt$r$t"; $grp = "$trt$t";
  $color = $colorkey{$grp};
  $prio++;
  print OUT "      track\t$id\n";
  print OUT "      parent\tCoulterTracksDPLViewDepth on\n";
  print OUT "      bigDataUrl\tDATA/$id.tophat.norm50m.bigWig\n";
  print OUT "      shortLabel\t$id depth\n";
  print OUT "      longLabel\tnormalized read depth: $id ($key{$id})\n";
  print OUT "      type\tbigWig\n";
  print OUT "      color\t$color\n";
  print OUT "      priority\t$prio\n";
  print OUT "      visibility\thide\n";
  print OUT "      subGroups\ttissue=$t trt=$trt rep=r$r view=COV\n\n";
} } }


close(OUT);
