NA62 software has been designed trying to keep its complexity as low as possible and yet allowing enough flexibility to accommodate the needed functionality and collaborative development.
The diagram below sketches the data flow from the experiment (grey blocks) to the end user, grouped in the three main software packages and the data storage library. The simulation is kept as much as possible independent from the experimental conditions, offloading most of the time dependent parameterisations to the digitization stage.
NA62 FrameWork consists at this time of four packages:
|NA62MC||Geant4 based framework for NA62 detector full simulation (now includes all subdetectors, with their persistency of hits)|
|NA62Reconstruction||Root based reconstruction package, modularized in libraries for individual subdetectors (now includes all subdetectors, at different stages of development). It contains also the online monitor (NA62OnlineMonitor) and a visualization tool (NA62EventDisplay)|
|NA62Analysis||ROOT based framework for modularized development of simple and complex analysis (now including several tools, from detector acceptance definition to candidate particles collecting information from all detectors)|
|NA62DB||Interface library to the offline Oracle metadata database (still experimental)|
There is a significant amount of documentation embedded in the code using doxygen.