ATLAS Offline Software

This package is used to provide the Transient/Persistent separation for TileCal 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 and TileEvent packages:

  • TileHit: stores the total energy visible by one PMT
  • TileL2: stores TileMuId and \( E_{\rm{T}} \) quantities as computed in the ROD DSPs
  • TileMu: stores TileMuId (processed offline) related information
  • TileCosmicMuon: stores information on TileMuonFitter results
  • TileTTL1Cell: stores the trigger tower energy, average time and quality factor built from Tile cell information

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

The AthenaPool converters, where these GUIDs are used, are stored in TileEventAthenaPool 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 TileTPCnv/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:

  • TileHitVectorCnv_p1
  • TileL2ContainerCnv_p1
  • TileMuContainerCnv_p1
  • TileCosmicMuonContainerCnv_p1
  • TileTTL1CellContainerCnv_p1