#!/bin/bash

set -eux

function create_track() {
    local name=$1
    local description=$2
    local color=$3
    echo "track type=bigWig name='${name}_Comb' description='Combined ${description}' db=mm9 visibility=full autoScale=on viewLimits=0.0:100.0 color=${color} yLineOnOff=off windowingFunction=mean smoothingWindow=3 maxHeightPixels=100:64:8 bigDataUrl=http://waxmanlabvm.bu.edu/mpyatkov/tf_chipseq_tracks/Combined_${name}.bw" >> tf_tracks_output.txt
}

mm9_chrom_sizes="mm9.chrom.sizes"

# G36M01_RiPPM_norm	(Male-High_STAT5_ChIPSeq_rep1_G36)	A
# G41M01_RiPPM_norm	(Male-High_STAT5_ChIPSeq_rep2_G41)	A
# G42M01_RiPPM_norm	(Male-High_STAT5_ChIPSeq_rep3_G42)	A
# G36M01|G41M01|G42M01

name=Male_High_STAT5_ChIPSeq 
description='Male_High_STAT5_ChIPSeq (G36M01|G41M01|G42M01)'
line=$(fd --search-path "../" 'G36M01|G41M01|G42M01' -e bw | paste -s -d " ")
create_track $name "$description" "195,60,30"

# G66M01_RiPPM_norm	(Female-High_STAT5_ChIPSeq_rep1_G66_M1)	B
# G66M02_RiPPM_norm	(Female-High_STAT5_ChIPSeq_rep2_G66_M2)	B
# G66M03_RiPPM_norm	Female-High_STAT5_ChIPSeq_rep3_G66_M3)	B

# G66M01|G66M02|G66M03

name=Female_High_STAT5_ChIPSeq
description="${name} (G66M01|G66M02|G66M03)"
echo $description
line=$(fd --search-path "../" 'G66M01|G66M02|G66M03' -e bw | paste -s -d " ")
create_track $name "$description" "204,0,204"


# G35M01_RiPPM_norm	(Male-Low_STAT5_ChIPSeq_rep1_G35)	C
# G40M01_RiPPM_norm	Male-Low_STAT5_ChIPSeq_rep2_G40)	C
# G35M01|G40M01

name=Male_Low_STAT5_ChIPSeq
description="${name} (G35M01|G40M01)"
line=$(fd --search-path "../" 'G35M01|G40M01' -e bw | paste -s -d " ")
create_track $name "$description" "51,153,102"

# G52M01_RiPPM_norm	(Female-Low_STAT5_ChIPSeq_rep1_G52)	D
# G70M03_RiPPM_norm	(Female-Low_STAT5_ChIPSeq_rep2_G70_M3)	D
# G72M01_RiPPM_norm	(Female-Low_STAT5_ChIPSeq_rep3_G72_M1)	D

# G52M01|G70M03|G72M01

name=Female_Low_STAT5_ChIPSeq
description="${name} (G52M01|G70M03|G72M01)"
line=$(fd --search-path "../" 'G52M01|G70M03|G72M01' -e bw | paste -s -d " ")
create_track $name "$description" "255,204,0"

# G49M01_RiPPM_norm	(Male_Bcl6_ChIPSeq_rep1_G49)	E
# G50M01_RiPPM_norm	(Male_Bcl6_ChIPSeq_rep2_G50)	E
# G71M02_RiPPM_norm	(Male_Bcl6_ChIPSeq_rep3_G71_M2)	E

# G49M01|G50M01|G71M02

name=Male_Bcl6_ChIPSeq
description="${name} (G49M01|G50M01|G71M02)"
line=$(fd --search-path "../" 'G49M01|G50M01|G71M02' -e bw | paste -s -d " ")
create_track $name "$description" "153,51,102"

# G51M01_RiPPM_norm	(Female_Bcl6_ChIPSeq_rep1_G51)	F
# G65M01_RiPPM_norm	(Female_Bcl6_ChIPSeq_rep2_G65_M1)	F
# G65M02_RiPPM_norm	(Female_Bcl6_ChIPSeq_rep3_G65_M2)	F
# G65M03_RiPPM_norm	(Female_Bcl6_ChIPSeq_rep4_G65_M3)	F

# G51M01|G65M01|G65M02|G65M03

name=Female_Bcl6_ChIPSeq
description="${name} (G51M01|G65M01|G65M02|G65M03)"
line=$(fd --search-path "../" 'G51M01|G65M01|G65M02|G65M03' -e bw | paste -s -d " ")
create_track $name "$description" "128,128,128"

# G62M01_RiPPM_norm	(Male_Cux2_ChIPSeq_G62M1_M3)	
# G62M02_RiPPM_norm	(Female_Cux2_ChIPSeq_G62M2_M4_G33)	
echo "track type=bigWig name=G62M01_RiPPM_norm description='M_Cux2_ChIPSeq_G62M1_M3' db=mm9 visibility=full autoScale=on viewLimits=0.0:100.0 color='204,0,204' yLineOnOff=off windowingFunction=mean smoothingWindow=3 maxHeightPixels=100:64:8 bigDataUrl=http://waxmanlabvm.bu.edu/mpyatkov/tf_chipseq_tracks/G62M01_RiPPM_norm.bw" >> tf_tracks_output.txt
echo "track type=bigWig name=G62M02_RiPPM_norm description='F_Cux2_ChIPSeq_G62M2_M4_G33' db=mm9 visibility=full autoScale=on viewLimits=0.0:100.0 color='204,77,0' yLineOnOff=off windowingFunction=mean smoothingWindow=3 maxHeightPixels=100:64:8 bigDataUrl=http://waxmanlabvm.bu.edu/mpyatkov/tf_chipseq_tracks/G62M02_RiPPM_norm.bw" >> tf_tracks_output.txt

# G73M03_RiPPM_norm	(Male_Hnf6_ChIPSeq_G73_M3)	I
# G73M04_RiPPM_norm	(Male_Hnf6_ChIPSeq_G73_M4)	I
# G76M12_RiPPM_norm	(Male_Hnf6_ChIPSeq_G76_M12)	I
# G76M13_RiPPM_norm	(Male_Hnf6_ChIPSeq_G76_M13)	I


# G73M03|G73M04|G76M12|G76M13

name=Male_Hnf6_ChIPSeq
description="${name} (G73M03|G73M04|G76M12|G76M13)"
line=$(fd --search-path "../" 'G73M03|G73M04|G76M12|G76M13' -e bw | paste -s -d " ")
create_track $name "$description" "255,128,128"

# G73M01_RiPPM_norm	(Female_Hnf6_ChIPSeq_G73_M1)	J
# G73M02_RiPPM_norm	(Female_Hnf6_ChIPSeq_G73_M2)	J
# G76M10_RiPPM_norm	(Female_Hnf6_ChIPSeq_G76_M10)	J
# G76M11_RiPPM_norm	(Female_Hnf6_ChIPSeq_G76_M11)	J

# G73M01|G73M02|G76M10|G76M11

name=Female_Hnf6_ChIPSeq
description="${name} (G73M01|G73M02|G76M10|G76M11)"
line=$(fd --search-path "../" 'G73M01|G73M02|G76M10|G76M11' -e bw | paste -s -d " ")
create_track $name "$description" "51,204,204"


# G999M01_RiPPM_norm	(Male_HNF6_WT_ChIPSeq_Repl1)	K
# G999M02_RiPPM_norm	(Male_HNF6_WT_ChIPSeq_Repl2)	K
# G999M03_RiPPM_norm	(Male_HNF6_WT_ChIPSeq_Repl3)	K

# G999M01|G999M02|G999M03


name=Male_HNF6_WT_ChIPSeq
description="${name} (G999M01|G999M02|G999M03)"
line=$(fd --search-path "../" 'G999M01|G999M02|G999M03' -e bw | paste -s -d " ")
create_track $name "$description" "255,102,0"


# G999M04_RiPPM_norm	(Male_HNF6_KO_ChIPSeq_Repl1)	L
# G999M05_RiPPM_norm	(Male_HNF6_KO_ChIPSeq_Repl2)	L
# G999M06_RiPPM_norm	(Male_HNF6_KO_ChIPSeq_Repl3)	L

# G999M04|G999M05|G999M06


name=Male_HNF6_KO_ChIPSeq
description="${name} (G999M04|G999M05|G999M06)"
line=$(fd --search-path "../" 'G999M04|G999M05|G999M06' -e bw | paste -s -d " ")
create_track $name "$description" "0,204,255"


# G133M03_RiPPM_norm	(Male_Rad21-Cohesin_ChIPSeq_Repl1_G133_M3)	M
# G133M06_RiPPM_norm	(Male_Rad21-Cohesin_ChiPSeq_Repl2_G133_M6)	M
# G100M05_RiPPM_norm	(Male_Rad21-Cohesin_ChiPSeq_Repl3_G100_M5)	M
# G133M03|G133M06|G100M05

name=Male_Rad21-Cohesin_ChIPSeq
description="${name} (G133M03|G133M06|G100M05)"
line=$(fd --search-path "../" 'G133M03|G133M06|G100M05' -e bw | paste -s -d " ")
create_track $name "$description" "153,204,0"




# G133M04_RiPPM_norm	(Female_Rad21-Cohesin_ChiPSeq_Repl1_G133_M4)	N
# G133M05_RiPPM_norm	(Female_Rad21-Cohesin_ChiPSeq_Repl2_G133_M5)	N
# G100M03_RiPPM_norm	(Female_Rad21-Cohesin_ChiPSeq_Repl3_G100_M3)	N
# G133M04|G133M05|G100M03

name=Female_Rad21-Cohesin_ChiPSeq
description="${name} (G133M04|G133M05|G100M03)"
line=$(fd --search-path "../" 'G133M04|G133M05|G100M03' -e bw | paste -s -d " ")
create_track $name "$description" "0,0,255"

# G133M09_RiPPM_norm	(Male_CTCF_ChiPSeq_Repl1_G133_M9)	O
# G133M13_RiPPM_norm	(Male_CTCF_ChiPSeq_Repl2_G133_M13)	O
# G133M14_RiPPM_norm	(Male_CTCF_ChiPSeq_Repl3_G133_M14)	O
# G100M02_RiPPM_norm	(Male_CTCF_ChiPSeq_Repl4_G100_M2)	O
# G133M04|G133M05|G100M03

name=Male_CTCF_ChiPSeq
description="${name} (G133M09|G133M13|G133M14|G100M02)"
line=$(fd --search-path "../" 'G133M09|G133M13|G133M14|G100M02' -e bw | paste -s -d " ")
create_track $name "$description" "103,103,153"


# G133M11_RiPPM_norm	(Female_CTCF_ChiPSeq_Repl1_G133_M11)	P
# G133M12_RiPPM_norm	(Female_CTCF_ChiPSeq_Repl2_G133_M12)	P
# G133M15_RiPPM_norm	(Female_CTCF_ChiPSeq_Repl3_G133_M15)	P
# G100M01_RiPPM_norm	(Female_CTCF_ChiPSeq_Repl4_G100_M1)	P

# G133M11|G133M12|G133M15|G100M01

name=Female_CTCF_ChiPSeq
description="${name} (G133M11|G133M12|G133M15|G100M01)"
line=$(fd --search-path "../" 'G133M11|G133M12|G133M15|G100M01' -e bw | paste -s -d " ")
create_track $name "$description" "153,51,102"


