In the paper we report on development of a dedicated data acquisition (DAQ) software being part of a full-filed X-ray fluorescence spectroscopy (XRF) imaging system equipped with a standard 3-stage Gas Electron Multiplier (GEM) detector of 10 cm by 10 cm .
Analysis of the spatial distribution of elements on the heritage objects, using XRF, nowadays is a very important support for conservators. Elemental mapping offers possibility to study spatial distribution of pigments of artworks. Presented system is able to perform a fast imaging of the spatial distribution of the elements over the large area of an object. Moreover, thanks to the infinite depth of field of the pinhole camera the system is able to investigate the non-flat surfaces.
Simulations measurement of a large surface introduces additional constraints and requirements (in comparison to e.g. macro-XRF) for the front-end electronics, data acquisition system and the software which are necessary for efficient system operation. The details on the front-end electronics and the data acquisition system have already been reported elsewhere [2, 3]. Therefore, in the paper we focus mostly on the software part of the developed system.
The software suite consists of a few independent components, each responsible for well-defined task. The components are interacting all together. A crucial part of the software, in a form of a graphical user interface (GUI) application written in modern C++ language with help of Qt framework and Boost libraries, is responsible for system configuration, monitoring and online data reconstruction. The GUI software is very helpful as convenient diagnostic tool during setting up and debugging the measurement campaign. However, when the system is in an optimum configuration and ready for data-taking one needs a different approach. In this case an automated system is utilized for batch recording of the measurement data, event reconstruction and processing with results visualization. That part of the software has been decomposed into: (a) dedicated raw data recorder, (b) non-GUI event reconstruction component (C++ based) able to use most of the workstation resources (mainly CPUs time) and (c) independent, flexible offline visualization component for plots or histograms preparation (Python based). All the components of the system are completely independent from each other. Therefore, distribution of the tasks to many workstation PCs is straightforward and provides flexibility along with data processing acceleration.
The software is running in the Linux environment (with possibility to be deployed to the Microsoft Windows operating system, if needed). It is also equipped with CMake build recipes in order to make building, testing and deployment of the system simpler and faster.
This work was supported by the Polish National Centre for Research and Development, grant no. PBS3/A9/29/2015.
 A. Zielińska et al., X-ray fluorescence imaging system for fast mapping of pigment distributions in cultural heritage paintings, JINST 8 (2013) P10011.
 B. Mindur et al., A compact system for two-dimensional readout of Gas Electron Multiplier detectors, JINST 8 (2013) T01005.
 T. Fiutowski et al., ARTROC - a readout ASIC for GEM-based full-field XRF imaging system, JINST 12 (2017) C12016.