Do not access the hardware during xDAQ application construction
Summary
At the moment, some xDAQ applications, particularly the ShelfMonitor
tries to access the hardware during their construction. If the initialization last (this is the case until #140 (closed) is fixed, but could also happen in case of hardware problem), remote xDAQ executive configuration (as done by RCMS) prevents any web query. As a side effect, the xDAQ executive seems stalled.
The xDAQ application construction should remain as simple as possible and hardware access should be forbidden. During the "Initialize" transition, connections to the back-end can be established. Acces to the front-end can only be done during and after the "Configure" transition.
Be careful, the init
function is still part of the xDAQ application construction (even if it is not the constructor)!!!
What is the expected correct behavior?
No access to the hardware is attempted before the proper transition. For the monitoring application, there could be an "Initialize" transition as part of the FSM. Otherwise, it could be established during the "Start" transition.