#!/bin/sh  
# \
exec oagtclsh "$0" "$@"

# input files:
# SRPSMagH2O.flow.template SRPSMagH2O.pressure.template
#
# output file:
# SRPSMagH2O.mon

set auto_path [linsert $auto_path 0  /usr/local/oag/apps/lib/$env(HOST_ARCH)]
set auto_path [linsert $auto_path 0 /usr/local/oag/lib_patch/$env(HOST_ARCH)]
APSStandardSetup

set root flow
for {set sector 1} {$sector<41} {incr sector} {
    exec sddsprocess ./../DataLogging/SRPSMagH2O.${root}.template /tmp/${root}.mon.$sector \
      -reedit=column,ControlName,%/<sector>/$sector/ \
      -reedit=column,ReadbackName,%/<sector>/$sector/
    lappend fileList /tmp/${root}.mon.$sector
}

set root pressure

for {set pump 501} {$pump<535} {incr pump; incr pump} {
    exec sddsprocess ./../DataLogging/SRPSMagH2O.${root}.template /tmp/${root}.mon.$pump \
      -reedit=column,ControlName,%/<pump>/$pump/ \
      -reedit=column,ReadbackName,%/<pump>/$pump/
    lappend fileList /tmp/${root}.mon.$pump
}
foreach pump {401 405} {
    exec sddsprocess ./../DataLogging/SRPSMagH2O.${root}.template /tmp/${root}.mon.$pump \
      -reedit=column,ControlName,%/<pump>/$pump/ \
      -reedit=column,ReadbackName,%/<pump>/$pump/
    lappend fileList /tmp/${root}.mon.$pump
}

set root SRPSMagH2O

if {[catch {eval exec sddscombine $fileList -merge -pipe=out \
              | sddsprocess -pipe -match=col,ReadbackName=*Ave,! \
              | sddssort -pipe -column=ControlName -numericHigh -unique \
              | sddsprocess -pipe=in /tmp/SRPSMagH2O.mon \
              -edit=column,SimpleControlName,ControlName,S?/./K} results]} {
    puts "error: $results"
    eval exec rm $fileList
    exit
}

eval exec rm $fileList

puts "Comparing against master PV list"
exec sddsselect /tmp/SRPSMagH2O.mon /home/helios/oagData/pvdata/iocRecNamesOAG.sdds -pipe=out -match=SimpleControlName=rec_name -nowarning -reuse | sddsconvert -pipe=in ./../DataLogging/SRPSMagH2O.mon -delete=column,SimpleControlName

file delete -force /tmp/SRPSMagH2O.mon

sdds load ./../DataLogging/SRPSMagH2O.mon data
set data(ParameterNames) "InstallLocation"
set data(Parameter.InstallLocation) [list /home/helios/oagData/monitoring/SRPSMagH2O/SRPSMagH2O.mon]
set data(Layout.DataMode.Mode) "ascii"
sdds save ./../DataLogging/SRPSMagH2O.mon data

puts "use cppatch to install SRPSMagH2O.mon"
