# This is the channel Algorithm Control register which is fields within the register at 0x1n80 for {set i 0} {$i < $NumChans} {incr i} { variable Ch$i.AlgorithmControl 0 variable Ch$i.AlgorithmControl_B00=>07 0 variable Ch$i.AlgorithmControl_B08=>09 0 variable Ch$i.AlgorithmControl_B10=>11 0 variable Ch$i.AlgorithmControl_B12=>13 0 variable Ch$i.AlgorithmControl_B15 0 variable Ch$i.AlgorithmControl_B16 0 variable Ch$i.AlgorithmControl_B17 0 variable Ch$i.AlgorithmControl_B18=>19 0 variable Ch$i.AlgorithmControl_B20=>22 0 variable Ch$i.AlgorithmControl_B24 0 variable Ch$i.AlgorithmControl_B25 0 variable Ch$i.AlgorithmControl_B26 0 variable Ch$i.AlgorithmControl_B27 0 } proc GetAlgorithmControl {} { variable NumChans for {set i 0} {$i < $NumChans} {incr i} { variable Ch$i.AlgorithmControl set Ch$i.AlgorithmControl [ReadRegister Ch$i.AlgorithmControl] variable Ch$i.AlgorithmControl_B00=>07 variable Ch$i.AlgorithmControl_B08=>09 variable Ch$i.AlgorithmControl_B10=>11 variable Ch$i.AlgorithmControl_B12=>13 variable Ch$i.AlgorithmControl_B15 variable Ch$i.AlgorithmControl_B16 variable Ch$i.AlgorithmControl_B17 variable Ch$i.AlgorithmControl_B18=>19 variable Ch$i.AlgorithmControl_B20=>22 variable Ch$i.AlgorithmControl_B24 variable Ch$i.AlgorithmControl_B25 variable Ch$i.AlgorithmControl_B26 variable Ch$i.AlgorithmControl_B27 set Ch$i.AlgorithmControl_B00=>07 [expr [set Ch$i.AlgorithmControl] & 255] set Ch$i.AlgorithmControl_B08=>09 [expr ([set Ch$i.AlgorithmControl] >> 8) & 3] set Ch$i.AlgorithmControl_B10=>11 [expr ([set Ch$i.AlgorithmControl] >> 10) & 3] set Ch$i.AlgorithmControl_B12=>13 [expr ([set Ch$i.AlgorithmControl] >> 12) & 3] set Ch$i.AlgorithmControl_B15 [expr ([set Ch$i.AlgorithmControl] >> 15) & 1] set Ch$i.AlgorithmControl_B16 [expr ([set Ch$i.AlgorithmControl] >> 16) & 1] set Ch$i.AlgorithmControl_B17 [expr ([set Ch$i.AlgorithmControl] >> 17) & 1] set Ch$i.AlgorithmControl_B18=>19 [expr ([set Ch$i.AlgorithmControl] >> 18) & 3] set Ch$i.AlgorithmControl_B20=>22 [expr ([set Ch$i.AlgorithmControl] >> 20) & 7] set Ch$i.AlgorithmControl_B24 [expr ([set Ch$i.AlgorithmControl] >> 24) & 1] set Ch$i.AlgorithmControl_B25 [expr ([set Ch$i.AlgorithmControl] >> 25) & 1] set Ch$i.AlgorithmControl_B26 [expr ([set Ch$i.AlgorithmControl] >> 26) & 1] set Ch$i.AlgorithmControl_B27 [expr ([set Ch$i.AlgorithmControl] >> 27) & 1] } } proc SetAlgorithmControl {w} { variable NumChans for {set i 0} {$i < $NumChans} {incr i} { variable Ch$i.AlgorithmControl if {$w < $NumChans && $w != $i} {continue} variable Ch$i.AlgorithmControl_B00=>07 variable Ch$i.AlgorithmControl_B08=>09 variable Ch$i.AlgorithmControl_B10=>11 variable Ch$i.AlgorithmControl_B12=>13 variable Ch$i.AlgorithmControl_B15 variable Ch$i.AlgorithmControl_B16 variable Ch$i.AlgorithmControl_B17 variable Ch$i.AlgorithmControl_B18=>19 variable Ch$i.AlgorithmControl_B20=>22 variable Ch$i.AlgorithmControl_B24 variable Ch$i.AlgorithmControl_B25 variable Ch$i.AlgorithmControl_B26 variable Ch$i.AlgorithmControl_B27 set Ch$i.AlgorithmControl [expr \ ([set Ch$i.AlgorithmControl_B00=>07] << 0) | \ ([set Ch$i.AlgorithmControl_B08=>09] << 8) | \ ([set Ch$i.AlgorithmControl_B10=>11] << 10) | \ ([set Ch$i.AlgorithmControl_B12=>13] << 12) | \ ([set Ch$i.AlgorithmControl_B15] << 15) | \ ([set Ch$i.AlgorithmControl_B16] << 16) | \ ([set Ch$i.AlgorithmControl_B17] << 17) | \ ([set Ch$i.AlgorithmControl_B18=>19] << 18) | \ ([set Ch$i.AlgorithmControl_B20=>22] << 20) | \ ([set Ch$i.AlgorithmControl_B24] << 24) | \ ([set Ch$i.AlgorithmControl_B25] << 25) | \ ([set Ch$i.AlgorithmControl_B26] << 26) | \ ([set Ch$i.AlgorithmControl_B27] << 27) ] WriteRegister Ch$i.AlgorithmControl [set Ch$i.AlgorithmControl] } } proc SaveAlgorithmControl {} { variable NumChans for {set i 0} {$i < $NumChans} {incr i} { DBSetValue Ch$i.AlgorithmControl [ReadRegister Ch$i.AlgorithmControl] } } proc RestAlgorithmControl {} { variable NumChans for {set i 0} {$i < $NumChans} {incr i} { variable Ch$i.AlgorithmControl set Ch$i.AlgorithmControl [DBGetValue Ch$i.AlgorithmControl] WriteRegister Ch$i.AlgorithmControl [DBGetValue Ch$i.AlgorithmControl] } GetAlgorithmControl } proc DrawAlgorithmControl {} { variable NumChans variable Name for {set i 0} {$i < $NumChans} {incr i} { variable Ch$i.AlgorithmControl variable Ch$i.AlgorithmControl_B00=>07 variable Ch$i.AlgorithmControl_B08=>09 variable Ch$i.AlgorithmControl_B10=>11 variable Ch$i.AlgorithmControl_B12=>13 variable Ch$i.AlgorithmControl_B15 variable Ch$i.AlgorithmControl_B16 variable Ch$i.AlgorithmControl_B17 variable Ch$i.AlgorithmControl_B18=>19 variable Ch$i.AlgorithmControl_B20=>22 variable Ch$i.AlgorithmControl_B24 variable Ch$i.AlgorithmControl_B25 variable Ch$i.AlgorithmControl_B26 variable Ch$i.AlgorithmControl_B27 } set html "" append html "

" append html "" append html "" append html "" append html "" append html "" for {set i 0} {$i < $NumChans} {incr i} { append html "" append html "" append html "" append html "" } append html "
ChannelTrapezoid Rescaling
$i
 
" append html "" append html "

" append html "

" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" for {set i 0} {$i < $NumChans} {incr i} { append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" } append html "
ChannelDecimationDigital GainPeak MeanEnable Noise RejectionInvert InputTrigger on RC-CR or RC-CR2Trigger ModeBaseline averageSelf TriggerPseudo Event #1Pseudo Event #2Pile Up Energy
$i" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "" append html "
" append html "

" return $html }