BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
package CalibData
Author
Joanne Bogart

Introduction

This package contains data model for the transient detector store: definitions of the classes and of hierarchy within the store and assignment of class ids.

The model is a 3-tiered hierarchy, but the only nodes with significant associated data are the leaf nodes at the bottom. There are no internal references among the nodes. The expectation is that clients will only want to access the leaf nodes, and that the client is prepared to handle all the data associated with such a node.

  1. Top node is the root; has no data attached
  2. Second-level nodes correspond to calibration types, such as CAL_LightAsym, TKR_HotChan, etc. They have only a small data object (class CalibCLIDNode, defined in the CalibSvc package) used for bookkeeping. Its only data is single field containing the class ID of its child nodes (all children have the samle class ID, corresponding to the calibration type).
  3. Third-level (leaf) nodes have a calibration data set attached. Different child nodes of the same second-level node correspond to different calibration flavors. Most often a second-level node will have a single child with flavor = "vanilla".

Clients wishing to access calibration data by symbol (e.g., CalibData::CAL_Ped + "/vanilla" rather than the string "/Calib/CAL_Ped/vanilla") should add the following line to a private section of their requirements file:

    apply_pattern use_CalibData_symbols

The CalibModelSvc class makes certain information internal to the CalibData package safely available to CalibDataSvc, which is in the CalibSvc package.

requirements


release.notes

release.notes


Todo

Make individual tds classes for different calibration types

Make CalibModel (CondModel ??) class to describe hierarchy in the TDS.