Capture Timing structure.

Create additional GUI panel that holds timing information.

All timing PVs adhere to following template ICS_Tim:Chop_FlavorXXX:SignalYYY. The flavor depends on machine mode. To obtain current machine mode use channel ICS_Tim:EventGen:ActiveFlavor

Flavor PV value FlavorXX
(0) Beam Off 0 Flavor0
(1) Target 1 1 Flavor1
(2) Target 2 2 Flavor2
(3) 10 uSec 3 Flavor3
(4) 50 uSec 4 Flavor4
(5) 100 uSec 5 Flavor5
(6) Physics 1 6 Flavor6
(7) No Chop 7 Flavor7

Signals to be saved are shown in Table 2 below

Name SignalYYY
Ramp up RampUp
Beam On BeamOn
Ramp Down RampDown
PW Start StartPulseWidth
PW On OnPulseWidth
PW Stop StopPulseWidth

The panel should contain a label that displays current flavor in large font. Under the label there should be a table that has all timing signals from Table 2 that are relevant to current flavor. E.g. if the flavor is (1) Target 1 the table will look like:

Name Value Captured Value Delta
Ramp up Value of ICS_Tim:Chop_Flavor1:RampUp value_from_file delta_as_usual
Beam On Value of ICS_Tim:Chop_Flavor1:BeamOn value_from_file delta_as_usual

If the machine mode has changed and now the flavor is (4) 50 uSec, the table should update accordingly to display following

Name Value Captured Value Delta
Ramp up Value of ICS_Tim:Chop_Flavor4:RampUp value_from_file delta_as_usual
Beam On Value of ICS_Tim:Chop_Flavor4:BeamOn value_from_file delta_as_usual

Add MEBT_Diag:BCM02:currentAvg as parameter in parameter table.

Edited by Zhukov, Alexander P.