Abstract
The data acquisition software framework, EUDAQ, was originally developed to read out data from the EUDET-type pixel telescopes. This was successfully used in many test beam campaigns in which an external position and time reference were required. The software has recently undergone a significant upgrade, EUDAQ2, which is a generic, modern and modular system for use by many different detector types, ranging from tracking detectors to calorimeters. EUDAQ2 is suited as an overarching software that links individual detector readout systems and simplifies the integration of multiple detectors. The framework itself supports several triggering and event building modes. This flexibility makes test beams with multiple detectors significantly easier and more efficient, as EUDAQ2 can adapt to the characteristics of each detector prototype during testing. The system has been thoroughly tested during multiple test beams involving different detector prototypes. EUDAQii has now been released and is freely available under an open-source license.
Highlights
EUDAQ2 architectureEUDAQ2, like its predecessor EUDAQ, is implemented in C++, taking advantage of many of the powerful features provided by the C++11 standard [5]
To keep the pure C++ EUDAQ2 core clearly separated from all user code, which may depend on non-standard libraries, the EUDAQ2 binary library is split into a core library and optional module/extension libraries
The Analog Hadronic CALorimeter (AHCAL) EUDAQ2 Producer includes an configurable event building method, producing events in various modes in order to be able to synchronize with other detectors: Timestamp is recorded in AHCAL DAQ hardware with 25 ns resolution with the possibility to receive the clock from other systems
Summary
EUDAQ2, like its predecessor EUDAQ, is implemented in C++, taking advantage of many of the powerful features provided by the C++11 standard [5]. Compatibility across operating systems and compilers is one of the EUDAQ2 design principles, it only uses standard C++ language features and POSIX [6] system routines. To build an EUDAQ2 system, different compilers such as GCC, LLVM/Clang and MS Visual C++ are supported. The data streams from different detectors can be merged using well-defined synchronization mechanisms and stored to disk
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.