I have put together a few python functions which allow for briefly spawning multiple threads to switch many filters at (roughy) the same time. The idea here is NOT to provide synchronous filter switching, but rather to speed up Guardian transitions which change the state of many filter modules (or more generally, write many channels).
The new code is in:
userapps/release/isc/h1/guardian/
fast_ezca.py - new functions for writing, switching, and generally doing things quickly
test_write_many.py - test functions for multi-thread writing
test_switch_many.py - test functions for multi-thread switching
test_do_many.py - test functions for multi-thread compound actions
and it is being used in the ISC_library function slow_offload_fast. There is a single-thread version of this function in ISC_library in case of trouble: slow_offload_many. The only caller is gen_OFFLOAD_ALIGNMENT_MANY in ISC_GEN_STATES, so go there if you need to switch this out.
This allows the guardian to move on without setting a setting, and can cause problems because settings can be wrong and the user has no clues.
I want to delete this completely.