# -*- coding: utf-8 -*-
"""
Created on Sun 2/21/2021
Swaps FRET sensitized emission intensity data in PairedProfile
files for ALEX intensity for cases where they were swapped in
the movie before processing with PSM

@author: yeg
"""
#import numpy as np
import matplotlib.pyplot as plt
import os
import csv
import sys
import re

plt.close('all')

#path = r"D:\Dropbox\Crew\Clark\PRE-6"
#path = r"D:\Dropbox\Crew\Jiabei\191111"
#path = r"D:\Dropbox\Crew\Clark\translocation"
#path = r"D:\Dropbox\Crew\Clark\Translocation\More_Examples"
#path = r"D:\Dropbox\Crew\Clark\PRE-6_TrypIRES"
#path = r"D:\Dropbox\Crew\Clark\Translocation\Good_Translocation_Traces"
#path = r"D:\Dropbox\Crew\Arpan\Translocation\Non-ALEX Traces for Yale"
#path = r"D:\Dropbox\Crew\Arpan\Translocation\Non-ALEX Traces for Yale"
#path = r"C:\Users\goldmany\Arpan\SubFolder\Combined"
#path = r"D:\Dropbox\Crew\Arpan\Nd2, tiff and Rw files\Tiff files\Averges\Av8"
#path = r"D:\Dropbox\Crew\Arpan\Tiff_time lapse\CaRb"
#path = r"D:\Dropbox\Crew\Clark\PRE_6"
#path = r"D:\Dropbox\Crew\Arpan\timeLapse_fromND2ImProp\CaRb"
#path = r"D:\Dropbox\Crew\Clark\DDX3\Duplex RNA alone\wr"
#path = r"D:\Dropbox\Crew\Clark\DDX3\Duplex RNA with DDX3X\wr"
#path = r"D:\Dropbox\Crew\Clark\DDX3\wrError"
#path = r"D:\Dropbox\Crew\Clark\DDX3\wrError\wr"
path = r"C:\Users\clark\Desktop\WR_Rearrange_Test\RNA Duplex_protein\wr"


def gfn():       # Get file names from directory
    file_list=os.listdir(path)
#    print (file_list)
    return file_list

plt.close('all')

file_list = gfn()
print ("Files: ", len(file_list))



pplist = []
for fn in file_list:
    if "pairProf" in fn:
#        print ("filename = ", fn)
        if (("txt" in fn) or ("ZD" in fn)):
            print ("Don't process ", fn,)
        else:
            pplist.append(fn)

        '''
        result = re.search('file(.*).c', fn)     
        if (result != None):
            pplist.append(fn)
 #           print ("result = ", result)
            print (fn, result.group(1))
        '''
                
        
print ("PairProfile .csv files: ", len(pplist))
##print (pplist) 

outpath = path + "\\sb"
print ("\nOutput directory: ", outpath)
#    print (' ')
#    sys.exit(1)
     
try:
    os.mkdir(outpath)
except:
    print ('Folder ' + outpath + ' already exists')
    
#    print (' ')
    


i = 0
while (i < len(pplist)): 
#while (i < 1): 
    
#    print ("\ni = ", i)
    fullnamein = path + "\\" + pplist[i]
#    print ("Full file name = ", fullnamein)
#    fi = open(fullnamein)
    with open(fullnamein) as csvfile:
        
        data = list(csv.reader(csvfile))
    
    L = len(data)-1
    hL = int(L/2)
    oe = L%2
    if (oe != 0):
        print ("File ", fullnamein, "has odd # of frames. Skipping")
        
    else:
    #    sb2.grid("True")   
        outfile = outpath + "\\" + pplist[i][:-4] + '-sb.csv'        
        print ("saving ", outfile)
    
        fo = open(outfile, 'w') 
        str = data[0][0] + ', ' + data[0][1] + ', \n'
        fo.write(str)       #header
        
        for k in range(1,hL+1):
            str = data[k][0] + ', ' + data[k+hL][1] + ', \n'
            fo.write(str)       #donor, FRET
    
    #    fo.write('break\n')
        
        for k in range(hL+1,L+1):
            str = data[k][0] + ', ' + data[k-hL][1] + ', \n'
            fo.write(str)       #dark, ALEX
            
            
        fo.close() 
    csvfile.close()
    i += 1 
