@@ -354,11 +354,21 @@ function channelinfo(data::LegendData, sel::AnyValiditySelection; system::Symbol
354
354
ann_status:: Symbol = Symbol (get (get (get (dpcfg[k], :psd , PropDict ()), :status , PropDict ()), Symbol (" ann" ), :unknown ))
355
355
coax_rt_status:: Symbol = Symbol (get (get (get (dpcfg[k], :psd , PropDict ()), :status , PropDict ()), Symbol (" coax_rt" ), :unknown ))
356
356
is_bb_like:: String = replace (get (get (dpcfg[k], :psd , PropDict ()), :is_bb_like , " " ), " &" => " &&" )
357
+ psd_usability:: Symbol = if ! (is_bb_like == " missing" ) &&
358
+ ifelse (occursin (" low_aoe" , is_bb_like), low_aoe_status == :valid , true ) &&
359
+ ifelse (occursin (" high_aoe" , is_bb_like), high_aoe_status == :valid , true ) &&
360
+ ifelse (occursin (" lq" , is_bb_like), lq_status == :valid , true ) &&
361
+ ifelse (occursin (" ann" , is_bb_like), ann_status == :valid , true ) &&
362
+ ifelse (occursin (" coax_rt" , is_bb_like), coax_rt_status == :valid , true )
363
+ :on
364
+ else
365
+ :off
366
+ end
357
367
358
368
location:: Symbol , detstring:: Int , position:: Int , fiber:: StaticString{8} = _convert_location (chmap[k]. location)
359
369
360
370
c = (;
361
- detector, channel, fcid, rawid, system, processable, usability, is_blinded, low_aoe_status, high_aoe_status, lq_status, ann_status, coax_rt_status, is_bb_like, det_type,
371
+ detector, channel, fcid, rawid, system, processable, usability, is_blinded, psd_usability, low_aoe_status, high_aoe_status, lq_status, ann_status, coax_rt_status, is_bb_like, det_type,
362
372
location, detstring, fiber, position
363
373
)
364
374
0 commit comments