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

puts "Not used"
exit
#
# input files:
# SRDCPS-QS-100HzextraPVs.mon
#
# output file:
# SRDCPS-QS-100Hz.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 convertorPVList {MeanAI MADAI}
set convertorNameList {Mean MAD}
set convertorUnitsList {A A}

set output(ColumnNames) "ControlName ReadbackName ReadbackUnits"

for {set sector 1} {$sector<41} {incr sector} {
    foreach side {A B} {
        foreach num {1 2 3 4 5} {
            set prefix S${sector}$side:Q$num
            foreach pv $convertorPVList name $convertorNameList units $convertorUnitsList {
                lappend CNList $prefix:$pv
                lappend NameList $prefix:$name
                lappend UnitsList $units
            }
        }
    }
}

for {set sector 1} {$sector<41} {incr sector} {
    foreach side {A:S1 A:S2 A:S3 A:S4 B:S3 B:S2 B:S1} {
        set prefix S${sector}$side
        foreach pv $convertorPVList name $convertorNameList units $convertorUnitsList {
            lappend CNList $prefix:$pv
            lappend NameList $prefix:$name
            lappend UnitsList $units
        }
    }
}

set AB B
for {set sector 1} {$sector<40} {incr sector 2} {
    set prefix S$sector$AB:QS
    foreach pv $convertorPVList name $convertorNameList units $convertorUnitsList {
        lappend CNList $prefix:$pv
        lappend NameList $prefix:$name
        lappend UnitsList $units
    }
    if [string compare $AB A]==0 {
        set AB B
    } else {
        set AB A
    }
}

for {set sector 1} {$sector<41} {incr sector} {
    foreach side {A:QS4} {
        set prefix S${sector}$side
        foreach pv $convertorPVList name $convertorNameList units $convertorUnitsList {
            lappend CNList $prefix:$pv
            lappend NameList $prefix:$name
            lappend UnitsList $units
        }
    }
}

set output(Column.ControlName) [list $CNList]
set output(Column.ReadbackName) [list $NameList]
set output(Column.ReadbackUnits) [list $UnitsList]

if {[catch {sdds save /tmp/makeMonFile.out1 output} result]} {
    puts "error: $result"
    file delete -force /tmp/makeMonFile.out1
    exit
}

if {[catch {exec sddsprocess /tmp/makeMonFile.out1 -print=column,Provider,ca -print=column,ExpectNumeric,y,type=character -print=column,ExpectFieldType,scalar -define=column,ExpectElements,1,type=long -nowarn} results]} {
    puts "ERROR: $results"
    exit
}

if {[catch {exec sddscombine /tmp/makeMonFile.out1 ./DataLogging/SRDCPS-QS-100HzextraPVs.mon \
              -pipe=out -overwrite -merge | \
              sddssort -pipe \
              -col=ControlName -nowarning -numericHigh | \
              sddsprocess -pipe=in /tmp/SRDCPS-QS-100Hz.mon \
              -edit=column,SimpleControlName,ControlName,S?/./K} result]} {
    puts "error: $result"
    file delete -force /tmp/makeMonFile.out1
    exit
}

file delete -force /tmp/makeMonFile.out1

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

file delete -force /tmp/SRDCPS-QS-100Hz.mon

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

puts "use cppatch to install SRDCPS-QS-100Hz.mon"


