#!/bin/bash
SUBDIR=DASs
ThisDev=TektrMSO56Standard
WEBPATH=$PWD
source ../../Commons.sh
source ../../Tools.sh
source ../../Drivers/TektrMSO5/driver.sh





function Arming()
{
#    rm -f /home/golem/tektronix_drop/shots/*
    mkdir -p $SHM0/$SUBDIR/$ThisDev/Querries
	#SingleSeq
#    echo ":SAVEon:TRIG ON" # Docasne ne ...
    shot_no=`CurrentShotDataBaseQuerry shot_no`
    WebRec "<html><body>" 
    WebRec "<h1>$ThisDev@GOLEM for Shot #$shot_no </h1>"
    echo OK
}

function PostDischargeFinals()
{
    $LogFunctionGoingThrough
    GetOscScreenShot
    getdata
    
}
    
#https://www.tek.com/support/faqs/programing-how-get-and-plot-waveform-dpo-mso-mdo4000-series-scope-python
function getdata ()
{
    LogIt "$ThisDevice: Start of acquiring"
    
    diags=('null' 'loop_voltage' 'toroidal_field_coil_voltage' 'rogowski_coil_voltage' 'photodiode_alpha' )
    echo ":data:encdg ascii"|$COMMAND

    echo ":data:source ch1"|$COMMAND
    XINCR=`echo ":WFMPRE:XINCR?"|$QUERRY`;echo $XINCR > Querries/XINCR.osc

    for i in `seq 1 4`;do
        diag_id=${diags[$i]}
        LogIt "$ThisDevice: ... Acquiring :$diag_id"
       	echo ":DISplay:GLObal:CH$i:STATE ON"|$COMMAND
       	echo ":data:source ch$i"|$COMMAND
       	
       	YMULT=`echo ":WFMPRE:YMULT?"|$QUERRY_w1`;echo $YMULT > Querries/YMULT_$diag_id.osc
        YZERO=`echo ":WFMPRE:YZERO?"|$QUERRY`;echo $YZERO > Querries/YZERO_$diag_id.osc
        YOFF=`echo ":WFMPRE:YOFF?"|$QUERRY`;echo $YOFF > Querries/YOFF_$diag_id.osc
       	
       	echo ":curve?"|netcat -w 3 $TheOscilloscope 4000|sed 's/,/\n/g' > Querries/$diag_id.ascii
       	awk '{print NR*'$XINCR'",\t"($1-'$YOFF')*'$YMULT'+'$YZERO'}' Querries/$diag_id.ascii > $diag_id.csv
       	
       	echo "set terminal jpeg;set title '`cat $SHM/ShotNo`';set style data dots;set ylabel '$diag_id  [V]'; set xlabel 'Time [s]';set output '$diag_id.jpg';plot '$diag_id.csv' title ''"|gnuplot 
       	
        WebRec "<h2>Standard diagnostics:$diag_id (raw voltage signal)</h2>"
        WebRec "<img src='$diag_id.jpg'/></br>"
        WebRec "<a href='http://golem.fjfi.cvut.cz/utils/data/$shot_no/$diag_id'/>Data</a></br>"

    done
    echo ":DISplay:GLObal:CH2:STATE OFF"|$COMMAND
    echo ":DISplay:GLObal:CH3:STATE OFF"|$COMMAND
    
    diags=('null' 'toroidal_field' 'rogowski_current' )
    rawdiags=('null' 'toroidal_field_coil_voltage' 'rogowski_coil_voltage' )
    for i in `seq 1 2`;do
        diag_id=${diags[$i]}
        LogIt "$ThisDevice: ... Acquiring :$diag_id"
        echo ":data:source math$i"|$COMMAND
       	
       	echo ":curve?"|netcat -w 3 $TheOscilloscope 4000|sed 's/,/\n/g' > Querries/$diag_id.ascii
       	awk '{print NR*'$XINCR'",\t"$1}' Querries/$diag_id.ascii > $diag_id.csv
       	
       	echo "set terminal jpeg;set title '`cat $SHM/ShotNo`';set style data dots;set ylabel '$diag_id  [V]'; set xlabel 'Time [s]';set output '$diag_id.jpg';plot '$diag_id.csv' title ''"|gnuplot 
       	
        WebRec "<h2>Standard diagnostics:$diag_id (recalculated signal)</h2>"
        WebRec "<img src='$diag_id.jpg'/></br>"
        WebRec "<a href='http://golem.fjfi.cvut.cz/utils/data/$shot_no/$diag_id'/>Data</a></br>"
        WebRec "<a href='http://golem.fjfi.cvut.cz/utils/data/$shot_no/${rawdiags[$i]}'/>Original raw data</a></br>"

    done
    LogIt "$ThisDevice: End of acquiring"
    
}	


function PostDisch()
{
    $LogFunctionGoingThrough
    
    WebRec "</body></html>" 
    echo OK
}

function sandbox ()
{
    echo ":data:source ch1"|$COMMAND
    XINCR=`echo ":WFMPRE:XINCR?"|$QUERRY`;echo $XINCR > XINCR.osc

}
	

#./TektrMSO56Standard.sh -r PostDischargeFinals
TASK=$1
COMMANDLINE=`echo $@|sed 's/-r //g'`

case "$TASK" in
   "")
      RETVAL=1
      ;;
      --raw_command|-r)
      RsyncDeviceFromDirigent
      $COMMANDLINE
      ;;
      --rsync)
      RsyncDeviceFromDirigent
      ;;
esac


function zmb()
{
    mv `ls -d /home/golem/tektronix_drop/shots/*|grep math2` $SHM0/DASs/$ThisDev/Irogowski.wfm
    mv `ls -d /home/golem/tektronix_drop/shots/*|grep math1` $SHM0/DASs/$ThisDev/Btoroidal.wfm
    mv `ls -d /home/golem/tektronix_drop/shots/*|grep ch1` $SHM0/DASs/$ThisDev/Uloop.wfm
    mv `ls -d /home/golem/tektronix_drop/shots/*|grep ch4` $SHM0/DASs/$ThisDev/Photod.wfm
    mv `ls -d /home/golem/tektronix_drop/shots/*|grep png` $SHM0/DASs/$ThisDev/EventScreenshot.png
    echo OK
}
