![]() |
ATLAS Offline Software
|
Event-owned builder for calibration-hit containers. More...
#include <LArCalibrationHitContainerBuilder.h>
Classes | |
| class | LessHit |
| struct | Partition |
Public Types | |
| using | hit_ptr_t = std::unique_ptr<CaloCalibrationHit> |
| using | hits_t = std::set<hit_ptr_t, LessHit> |
Public Member Functions | |
| ~LArCalibrationHitContainerBuilderBase () override=default | |
| void | RegisterSource (const std::string &sourceName) |
| Register a regular-SD partition in final output order. | |
| void | AddHit (const std::string &sourceName, hit_ptr_t hit) |
| Take ownership of a hit and add it to one regular-SD partition. | |
| void | Finalize () |
| Move merged hits into the persisted container in final output order. | |
Private Member Functions | |
| void | Finalize (hits_t &hits) |
| Partition & | FindOrCreatePartition (const std::string &sourceName) |
Static Private Member Functions | |
| static void | AddHit (hits_t &hits, hit_ptr_t hit) |
Private Attributes | |
| std::vector< Partition > | m_partitions |
| hits_t | m_directHits |
Event-owned builder for calibration-hit containers.
The partitioning model mirrors LArHitContainerBuilder: regular SDs merge within their own named partitions, while direct contributors use the empty source name and are finalized last. The template is shared by the standard and SR calibration output container types. The per-SD partitions are a compatibility layer for the historical partitioned output contract; if hits no longer need to remain distinct and ordered by originating SD, this builder can be reduced to one event-wide merge bucket as well.
Definition at line 29 of file LArCalibrationHitContainerBuilder.h.
| using LArCalibrationHitContainerBuilderBase< HitContainerT >::hit_ptr_t = std::unique_ptr<CaloCalibrationHit> |
Definition at line 33 of file LArCalibrationHitContainerBuilder.h.
| using LArCalibrationHitContainerBuilderBase< HitContainerT >::hits_t = std::set<hit_ptr_t, LessHit> |
Definition at line 43 of file LArCalibrationHitContainerBuilder.h.
|
overridedefault |
| void LArCalibrationHitContainerBuilderBase< HitContainerT >::AddHit | ( | const std::string & | sourceName, |
| hit_ptr_t | hit ) |
Take ownership of a hit and add it to one regular-SD partition.
|
staticprivate |
| void LArCalibrationHitContainerBuilderBase< HitContainerT >::Finalize | ( | ) |
Move merged hits into the persisted container in final output order.
|
private |
|
private |
| void LArCalibrationHitContainerBuilderBase< HitContainerT >::RegisterSource | ( | const std::string & | sourceName | ) |
Register a regular-SD partition in final output order.
|
private |
Definition at line 66 of file LArCalibrationHitContainerBuilder.h.
|
private |
Definition at line 65 of file LArCalibrationHitContainerBuilder.h.