#@File   (label = "file path") filePath_File
#@File   (label = "Results path", style="directory") resultFolder_File
#@int    (label = "Transcripts radius (in pixel)", value=2)tx_MaxRadius
#@string (label = "transcripts channel(s)" ) transcripts_channels_str

# Author: Benoit Lombardot, Scientific computing facility @ MPI-CBG  
# date: 2015-11-26

from ij import IJ

from mpicbg_scicomp.transcript_analysis import cell_transcript_analysis_v3; # needs Dev version for now

from os import listdir, sep, path, sys;
from os import makedirs;

#################################################################
# parameters ####################################################
IJ.log("script started")

filePath = filePath_File.getPath(); print filePath
resultFolder = resultFolder_File.getPath(); print resultFolder
#tx_MaxRadius = int(sys.argv[3])
transcripts_channels = transcripts_channels_str.split(",")
for i in range(len(transcripts_channels)):
	transcripts_channels[i] = int(transcripts_channels[i])

print transcripts_channels

fileName = path.basename(filePath)
fileName2 = path.splitext(fileName)[0]
filePrefix   = path.join(resultFolder,fileName2+"_");

if not path.exists(resultFolder ):
    makedirs(resultFolder);


tx_analyzer = cell_transcript_analysis_v3();

tx_analyzer.setTranscriptMaxRadius(tx_MaxRadius);
tx_analyzer.setTranscriptChannel(transcripts_channels);
tx_analyzer.setImagePath(filePath);
tx_analyzer.setSavePath(resultFolder);
tx_analyzer.setFilePrefix(filePrefix);

# processing
imp_aux = IJ.openImage( filePath );
imp_rawImg = tx_analyzer.convert_input(imp_aux);
tx_analyzer.save_transcripts_maxima_distribution(imp_rawImg);


IJ.log("script finished")

