ATLAS Offline Software

This package is used to provide the Transient/Persistent separation for TileCal simulation hits classes.

Author
Aranzazu Ruiz Martinez Aranz.nosp@m.azu..nosp@m.Ruiz..nosp@m.Mart.nosp@m.inez@.nosp@m.cern.nosp@m..ch
Alexander Solodkov Sanya.nosp@m..Sol.nosp@m.odkov.nosp@m.@cer.nosp@m.n.ch

Introduction

  • Two separate data models are used:
  • Transient data model: principal, used almost everywhere
  • Persistent data model: supplementary, used for data storage
  • The primary motivation of T/P separation is to provide backwards compatibility (i.e. when the transient representation of a TileEvent class is modified, the old persistent representations can still be read)
  • Additionally, the persistent model introduces class versioning (ClassName_p1, ClassName_p2, etc.)
  • It allows more efficient and performant data storage, important to include information in ESD or AOD files
  • Data is being copied between transient and persistent objects before writing and after reading by the T/P converters

Related Packages

The persistent classes and containers in TileTPCnv package have the correspondent transient classes and containers in TileSimEvent packages:

  • TileHit: stores the total energy visible by one PMT

Note that a GUID is assigned for each transient class in TileSimEvent/selection.xml files.

The AthenaPool converters, where these GUIDs are used, are stored in TileSimEventAthenaPool package.

Persistent Classes

The following persistent classes are implemented in this package:

This persistent classes are meant to reduce the size of the objects, i.e. converting variables from double to float, for data storage. Note that a GUID is assigned for each persistent class in TileSimEventTPCnv/selection.xml file.

Persistent Containers

The following persistent containers are implemented in this package:

T/P Converters

The following T/P converters are implemented in this package:

In the T/P converters, the methods transToPers and persToTrans are used for the conversion from transient to persistent or vice versa.

T/P Container Converters

The following T/P container converters are implemented in this package: