In this chapter we present the structure of the LHCb Event Data model. For the moment only a small part of the model is implemented. The rest will be implemented incrementally as the designs are finalised.
The objects in the data store are arranged in a tree. This facilitates the location of objects within the store by human-readable identifiers. The tree structure consists of an Event root branching four sub-trees: Monte Carlo event, Raw event, Reconstructed event, and Analysis event. Retrieving an identifiable object (see Chapter 6 ) from the store is based on the knowledge of the logical path. The paths so far implented are shown in the tables that follow. They are defined in the files:
The
LHCbEvent/TopLevel
directory also contains the include files for the top level event classes (which are all derived from DataObject and are therefore identifiable).:
Logical Path
|
Type
|
---|---|
The identifiable objects in the MonteCarlo, Raw, Reconstructed, and Analysis event sub-trees are all container classes, containing instances of classes that inherit (directly or indirectly) from the class ContainedObject.
The Monte Carlo event sub-tree contains output from the event generators and from the Monte Carlo tracking. The include files for the contained classes can be found in LHCbEvent/MonteCarlo/*.h with obvious names
Logical Path
|
Container Type
|
---|---|
The Raw event sub-tree should contain the raw data collected by the data acquisition and simulated data in the same format (i.e. with detector and electronics response applied). The include files for the contained classes can be found in LHCbEvent/Raw/*.h with obvious names. Currently only the classes RawInnerTrackerMeass and RawOuterTrackerMeass are implemented, which are for the time being copies of the SicB banks WIDG and WODG
Logical Path
|
Container Type
|
---|---|
The Reconstructed event sub-tree is meant to contain the output of the reconstruction program. It is currently empty.
The Analysis event sub-tree should contain the objects created and used during data analysis.The include files for the contained classes can be found in LHCbEvent/Analysis/*.h with obvious names. Currently only the class
AxPartCandidate
is implemented, derived from the SICB bank AXTK.
Logical Path
|
Container Type
|
---|---|