ATLAS Offline Software
|
Helpers for overlaying Identifiable Containers. More...
Functions | |
template<> | |
void | mergeChannelData (HGTD_RDO &, const HGTD_RDO &, const IDC_OverlayBase *algorithm) |
template<> | |
std::unique_ptr< HGTD_RDO_Collection > | copyCollection (const IdentifierHash &hashId, const HGTD_RDO_Collection *collection) |
template<> | |
void | mergeChannelData (PixelRDORawData &, const PixelRDORawData &, const IDC_OverlayBase *algorithm) |
template<> | |
std::unique_ptr< PixelRDO_Collection > | copyCollection (const IdentifierHash &hashId, const PixelRDO_Collection *collection, DataPool< Pixel1RawData > &dataItems) |
template<> | |
std::unique_ptr< SCT_RDO_Collection > | copyCollection (const IdentifierHash &hashId, const SCT_RDO_Collection *collection, DataPool< SCT3_RawData > &dataItems) |
template<> | |
void | mergeCollections (SCT_RDO_Collection *bkgCollection, SCT_RDO_Collection *signalCollection, SCT_RDO_Collection *outputCollection, const IDC_OverlayBase *algorithm, DataPool< SCT3_RawData > &dataItems) |
template<> | |
void | mergeChannelData (MdtDigit &signalDigit, const MdtDigit &bkgDigit, const IDC_MuonOverlayBase *algorithm) |
template specialization function to add 2 MDT Digits - basically the operator+= A declaration of the specialization must happen before the template is used from the overlayContainer() method. More... | |
template<> | |
void | mergeChannelData (MmDigit &signalDigit, const MmDigit &bkgDigit, const IDC_MuonOverlayBase *algorithm) |
template specialization function to add 2 MM Digits - basically the operator+= A declaration of the specialization must happen before the template is used from the overlayContainer() method. More... | |
template<class Datum > | |
void | mergeMultiHits (const std::vector< Datum * > &bkgHits, const std::vector< Datum * > &signalHits, std::vector< Datum * > &outputHits) |
Merging of hits on the same channel. More... | |
template<class Collection > | |
void | mergeMultiHitCollections (Collection *bkgCollection, Collection *signalCollection, Collection *outputCollection) |
template<> | |
void | mergeChannelData (sTgcDigit &signalDigit, const sTgcDigit &bkgDigit, const IDC_MuonOverlayBase *algorithm) |
template specialization function to add 2 sTGC Digits - basically the operator+= A declaration of the specialization must happen before the template is used from the overlayContainer() method. More... | |
template<class Collection > | |
std::unique_ptr< Collection > | copyCollection (const IdentifierHash &hashId, const Collection *collection) |
template<typename Collection , typename Type > | |
std::unique_ptr< Collection > | copyCollection (const IdentifierHash &hashId, const Collection *collection, DataPool< Type > &dataItems) |
template<typename Collection , typename Alg > | |
void | mergeCollections (Collection *bkgCollection, Collection *signalCollection, Collection *outputCollection, const Alg *algorithm) |
template<typename Type , typename Collection , typename Alg > | |
void | mergeCollections (Collection *bkgCollection, Collection *signalCollection, Collection *outputCollection, const Alg *algorithm, DataPool< Type > &dataItems) |
template<class Datum , class Alg > | |
void | mergeChannelData (Datum &baseDatum, const Datum &additionalDatum, const Alg *algorithm) |
template<class IDC_Container > | |
std::string | debugPrint (const IDC_Container *container, unsigned numprint=25) |
Diagnostic output of Identifiable Containers. More... | |
Helpers for overlaying Identifiable Containers.
std::unique_ptr<Collection> Overlay::copyCollection | ( | const IdentifierHash & | hashId, |
const Collection * | collection | ||
) |
std::unique_ptr<Collection> Overlay::copyCollection | ( | const IdentifierHash & | hashId, |
const Collection * | collection, | ||
DataPool< Type > & | dataItems | ||
) |
std::unique_ptr<HGTD_RDO_Collection> Overlay::copyCollection | ( | const IdentifierHash & | hashId, |
const HGTD_RDO_Collection * | collection | ||
) |
Definition at line 24 of file HGTD_Overlay.cxx.
std::unique_ptr<PixelRDO_Collection> Overlay::copyCollection | ( | const IdentifierHash & | hashId, |
const PixelRDO_Collection * | collection, | ||
DataPool< Pixel1RawData > & | dataItems | ||
) |
Definition at line 30 of file PixelOverlay.cxx.
std::unique_ptr<SCT_RDO_Collection> Overlay::copyCollection | ( | const IdentifierHash & | hashId, |
const SCT_RDO_Collection * | collection, | ||
DataPool< SCT3_RawData > & | dataItems | ||
) |
Definition at line 19 of file SCTOverlay.cxx.
std::string Overlay::debugPrint | ( | const IDC_Container * | container, |
unsigned | numprint = 25 |
||
) |
Diagnostic output of Identifiable Containers.
void Overlay::mergeChannelData | ( | Datum & | baseDatum, |
const Datum & | additionalDatum, | ||
const Alg * | algorithm | ||
) |
void Overlay::mergeChannelData | ( | HGTD_RDO & | , |
const HGTD_RDO & | , | ||
const IDC_OverlayBase * | algorithm | ||
) |
Definition at line 14 of file HGTD_Overlay.cxx.
void Overlay::mergeChannelData | ( | MdtDigit & | signalDigit, |
const MdtDigit & | bkgDigit, | ||
const IDC_MuonOverlayBase * | algorithm | ||
) |
template specialization function to add 2 MDT Digits - basically the operator+= A declaration of the specialization must happen before the template is used from the overlayContainer() method.
So we just put this implementation at the beginning of this file.
signal masks the background - no correction to the ADC FIXME: Probably should return the masked hit as well
Physics hit masks the background hit - no correct to the AOD FIXME: Probably should return the masked hit as well
the 2 hits overlap withing the ADC integration window the ADC will add partially the TDC is from the first hit that crosses the threshold FIXME: how to add partially for correct - for now just add the ADD total
Definition at line 26 of file MdtOverlay.cxx.
void Overlay::mergeChannelData | ( | MmDigit & | signalDigit, |
const MmDigit & | bkgDigit, | ||
const IDC_MuonOverlayBase * | algorithm | ||
) |
template specialization function to add 2 MM Digits - basically the operator+= A declaration of the specialization must happen before the template is used from the overlayContainer() method.
So we just put this implementation at the beginning of this file.
signal masks the background
Background hit masks the signal hit
the 2 hits overlap withing the time integration window For now, just add total charge
Definition at line 27 of file MM_Overlay.cxx.
void Overlay::mergeChannelData | ( | PixelRDORawData & | , |
const PixelRDORawData & | , | ||
const IDC_OverlayBase * | algorithm | ||
) |
Definition at line 19 of file PixelOverlay.cxx.
void Overlay::mergeChannelData | ( | sTgcDigit & | signalDigit, |
const sTgcDigit & | bkgDigit, | ||
const IDC_MuonOverlayBase * | algorithm | ||
) |
template specialization function to add 2 sTGC Digits - basically the operator+= A declaration of the specialization must happen before the template is used from the overlayContainer() method.
So we just put this implementation at the beginning of this file.
signal masks the background
Background hit masks the signal hit
the 2 hits overlap withing the time integration window For now, just add total charge
Definition at line 27 of file STGC_Overlay.cxx.
void Overlay::mergeCollections | ( | Collection * | bkgCollection, |
Collection * | signalCollection, | ||
Collection * | outputCollection, | ||
const Alg * | algorithm | ||
) |
void Overlay::mergeCollections | ( | Collection * | bkgCollection, |
Collection * | signalCollection, | ||
Collection * | outputCollection, | ||
const Alg * | algorithm, | ||
DataPool< Type > & | dataItems | ||
) |
void Overlay::mergeCollections | ( | SCT_RDO_Collection * | bkgCollection, |
SCT_RDO_Collection * | signalCollection, | ||
SCT_RDO_Collection * | outputCollection, | ||
const IDC_OverlayBase * | algorithm, | ||
DataPool< SCT3_RawData > & | dataItems | ||
) |
Definition at line 48 of file SCTOverlay.cxx.
void Overlay::mergeMultiHitCollections | ( | Collection * | bkgCollection, |
Collection * | signalCollection, | ||
Collection * | outputCollection | ||
) |
void Overlay::mergeMultiHits | ( | const std::vector< Datum * > & | bkgHits, |
const std::vector< Datum * > & | signalHits, | ||
std::vector< Datum * > & | outputHits | ||
) |
Merging of hits on the same channel.
Modifies the first argument by adding data from the second.. Implementations can assume that the arguments have the same Id. (That is, correspond to the same readout channel.)
A generic implementation of this template is provided in this package, but subdetectors can provide specializations suitable for their RDO type.
As a Collection is usually based on the DataVector elements are not const.