#!/bin/bash

. lib.sh

NO_GW_NEEDED=true

main() {
    #Check that the test wasn't skipped.
    if [ "$(ls -A ../user)" ]; then
        #Otherwise this would create *.txt file and plot.sh and break the automation
        ln -s ../user/*.txt .
    else
        SKIPPED=1; return;
    fi;
}

#ADDITIONAL_PLOTS=detail

plot_cmds() {
    if [[ "$1" = detail ]]; then
	range=0.0:0.3
    else
	range=0.01:800
	echo "set logscale y"
    fi
    if [ -s user2-msgs.txt ]; then
	min=$(head -n 1 user2-msgs.txt | awk '{ print $2 }')
    else
	min=$(head -n 1 user8-msgs.txt | awk '{ print $2 }')
    fi
    cat <<EOF
set title "Single GW rule for all messages, no modifications"
set grid xtics ytics mytics lw 1, lw 0.5
set xlabel "Experiment time [s]"
set ylabel "GW latency [ms]"
plot [:] [$range] \\
          "user2-msgs.txt" using (\$2-$min):(1000*\$14-0.001*\$16) with points title "Userspace GW, 2 byte messages", \\
          "user8-msgs.txt" using (\$2-$min):(1000*\$14-0.001*\$16) with points title "Userspace GW, 8 byte messages", \\
          "kern2-msgs.txt" using (\$2-$min):(1000*\$14-0.001*\$16) with points title "Kernel GW, 2 byte messages", \\
          "kern8-msgs.txt" using (\$2-$min):(1000*\$14-0.001*\$16) with points title "Kernel GW, 8 byte messages"
EOF
}
    
test_end