#!/usr/bin/perl

$stroot = "CNR2";
$shortLab = "CUT&RUN-AFOS";
$longLab = "CUT&RUN Normalized Depth Tracks (AFOS datasets)";

$prio = 200;

##############################################################

$datadir = "data/CUTnRUN-AFOS";
$trackname = "trackDb.$stroot.txt";

@inds = ("dox","ctrl");
@lentis = ("afos","empty");
@ips = ("flag","fra1","p300","brg1");

##############################################################

open(OUT, ">$trackname");

##### normalized depth #####
# write header supertrack header
print OUT "track\tdata$stroot\n";
print OUT "compositeTrack\ton\n";
print OUT "shortLabel\t$shortLab\n";
print OUT "longLabel\t$longLab\n";
print OUT "priority\t$prio\n";
print OUT "subGroup1\tview View CNR=CNR\n";
print OUT "subGroup2\tind IfInduced"; foreach $ind (@inds) { print OUT " $ind=$ind"; } print OUT "\n";
print OUT "subGroup3\tlenti Lenti"; foreach $L (@lentis) { print OUT " $L=$L"; } print OUT "\n";
print OUT "subGroup4\tip IP"; foreach $ip (@ips) { print OUT " $ip=$ip"; } print OUT "\n";
print OUT "dimensions\tdimX=lenti dimY=ind dimA=ip\n";
print OUT "sortOrder\tview=+ lenti=+ ind=+ ip=+\n";
print OUT "configurable\ton\n";
print OUT "type\tbigWig\n\n";

# write header for CUT&RUN tracks
print OUT "   track\tdata$stroot\_ViewDepth\n";
print OUT "   parent\tdata$stroot\n";
print OUT "   shortLabel\t$shortLab\n";
print OUT "   longLabel\t$longLab\n";
print OUT "   view\tCNR\n";
print OUT "   visibility\tfull\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 "   autoScale\ton\n";
#print OUT "   viewLimits\t0:300\n";
print OUT "   showSubtrackColorOnUi\ton\n";
print OUT "   viewUi\ton\n\n";

# write CUT&RUN depth tracks
foreach $L (@lentis) { foreach $ind (@inds) { foreach $ip (@ips) {
  $id = "cnr.wt.lenti_$L.$ind.$ip";
  $bwfile = "$datadir/$id.merged_replicates_coverage.bigWig";
  unless (-e $bwfile) { print "WARNING: Did not find \'$bwfile\'.\n"; next; }
  $prio++;
  print OUT "      track\t$id\n";
  print OUT "      parent\tdata$stroot\_ViewDepth\n";
  print OUT "      bigDataUrl\t$bwfile\n";
  print OUT "      shortLabel\t$id\n";
  print OUT "      longLabel\twt/$ind $ip (lenti:$L) normalized depth (CUT&RUN)\n";
  print OUT "      type\tbigWig\n";
  print OUT "      color\t0,0,0\n";
  print OUT "      priority\t$prio\n";
  print OUT "      visibility\thide\n";
  print OUT "      subGroups\tview=CNR lenti=$L ind=$ind ip=$ip\n\n";
} } }

print OUT "\n\n";

close(OUT);
