#!/usr/bin/env sh

inputdir=$(realpath $1)
outputdir=$(realpath $2)
actcoding=$3
infa=$4

# actcoding_code should be 0, 1, or guess
Usage="./res2coding_fa.sh inputdir outputdir actcoding_code source_fa"

# script root
sr="/home/yduan/work_file/lncRNAdb/methods_assement/plot_script"

if [[ ${actcoding} == "guess" ]];then
    actc="--guess-coding"
elif [[ ${actcoding} = 1 ]] || [[ ${actcoding} = 0 ]];then
    actc="-a ${actcoding}"
else
    echo "actcoding illegal"
    echo "actcoding_code should be 0, 1, or guess"
    exit 1
fi
if [[ ! -f ${infa} ]];then
    echo "infa not exist"
    exit 1
fi
# CNCI
${sr}/cnci2coding.py ${inputdir}/CNCI_pl.out -o ${outputdir}/CNCI_pl.coding ${actc}
${sr}/cnci2coding.py ${inputdir}/CNCI_ve.out -o ${outputdir}/CNCI_ve.coding ${actc}

# CPAT
${sr}/cpat2coding.py ${inputdir}/cpat_fly.out -o ${outputdir}/cpat_fly.coding ${actc} -s fly
${sr}/cpat2coding.py ${inputdir}/cpat_human.out -o ${outputdir}/cpat_human.coding ${actc} -s human
${sr}/cpat2coding.py ${inputdir}/cpat_mouse.out -o ${outputdir}/cpat_mouse.coding ${actc} -s mouse
${sr}/cpat2coding.py ${inputdir}/cpat_zebrafish.out -o ${outputdir}/cpat_zebrafish.coding ${actc} -s zebrafish

# CPC2
${sr}/cpc22coding.py ${inputdir}/cpc2.out -o ${outputdir}/cpc2.coding ${actc}

# CPC
${sr}/cpc2coding.py ${inputdir}/cpc.out -o ${outputdir}/cpc.coding ${actc}

# feelnc
for feelnc in ${inputdir}/feelnc*.out
do
    feename=${feelnc##*/}
    ${sr}/feelnc2coding.py ${feelnc} -o ${outputdir}/${feename%.out}.coding ${actc}
done

# hmmscan
LANG=C
cat ${inputdir}/hmmscan.t.out |tr -s ' ' |sort -k3| ${sr}/hmmscore2coding.py - ${actc} -n ${infa} -o ${outputdir}/hmmscan1.coding
cat ${inputdir}/hmmscan_b.t.out |tr -s ' ' |sort -k3| ${sr}/hmmscore2coding.py - ${actc} -n ${infa} -o ${outputdir}/hmmscan2.coding
cat ${inputdir}/hmmscan.t.out ${inputdir}/hmmscan_b.t.out |tr -s ' ' |sort -k3| ${sr}/hmmscore2coding.py - ${actc} -n ${infa} -o ${outputdir}/hmmscan3.coding

# longdist
for ldst in ${inputdir}/longdist*.out
do
    ldstname=${ldst##*/}
    ${sr}/longdist2coding.py ${ldst} -o ${outputdir}/${ldstname%.out}.coding ${actc}
done

# PLEK
${sr}/plek2coding.py ${inputdir}/PLEK.out -o ${outputdir}/PLEK.coding ${actc}

# plncpro
${sr}/plncpro2coding.py ${inputdir}/plncpro1.out -o ${outputdir}/plncpro1.coding ${actc}
${sr}/plncpro2coding.py ${inputdir}/plncpro2.out -o ${outputdir}/plncpro2.coding ${actc}

# rnaplonc
${sr}/rnaplonc2coding.py ${inputdir}/rnaplonc.out -o ${outputdir}/rnaplonc1.coding ${actc} 
${sr}/rnaplonc2coding.py ${inputdir}/rnaplonc.out -o ${outputdir}/rnaplonc2.coding ${actc} --add-noncoding

