Speaker
Description
The detector description is an essential component to analyse data resulting from particle collisions in high energy physics experiments.
The interpretation of these data from particle collisions typically require more long-living data which describe in detail the state of the experiment itself. Such accompanying data include alignment parameters, the electronics calibration and their organization, the environmental parameters needed for the data processing, etc. We present a mechanism to manage the data in simultaneously multiple versions depending on their validity.
The detector conditions data are made available to the physics algorithms through a number of transient objects grouped to collections. Such a collection represents a coherent slice of all conditions data necessary to process one or a several event depending of the valid interval of the slice being the intersection of the individual conditions.
A multi-threaded application may hold several such collections in parallel depending on the time-stamps of the events currently processed. Once prepared, these collections are read-only and can easily be shared between threads with minimal requirements for locking and hence minimal overhead.
We deliberately restrained ourselves from providing a persistent data solution, which in the past were fields of expertise of the experiments, but rather provided the necessary hooks to populate We will present the use-cases that have driven the development, the main design choices and details of the implementation. Finally we describe how it is customized to provide specific needs of an experiment.