![]() |
ATLAS Offline Software
|
This class deals with the removal of calorimeter cells from calorimeter clusters. More...
#include <eflowCellSubtractionFacilitator.h>
Public Member Functions | |
| eflowCellSubtractionFacilitator () | |
| double | subtractCells (eflowRingSubtractionManager &ringSubtractionManager, eflowRecTrack &theTrack, xAOD::CaloCluster *tracksClus, eflowCellList &orderedCells, bool &annFlag, bool addCPData) const |
| double | subtractCells (eflowRingSubtractionManager &ringSubtractionManager, eflowRecTrack &theTrack, std::vector< std::pair< xAOD::CaloCluster *, bool > > &tracksClus, eflowCellList &orderedCells, bool &annFlag, bool addCPData) const |
| void | setLevel (MSG::Level lvl) |
| Change the current logging level. | |
Functions providing the same interface as AthMessaging | |
| bool | msgLvl (const MSG::Level lvl) const |
| Test the output level of the object. | |
| MsgStream & | msg () const |
| The standard message stream. | |
| MsgStream & | msg (const MSG::Level lvl) const |
| The standard message stream. | |
Private Member Functions | |
| void | subtractPartialRings (std::vector< std::pair< xAOD::CaloCluster *, bool > > &tracksClusters, CellIt beginRing, CellIt endRing, double targetRingEnergy, double eRing, eflowRecTrack &theTrack, bool addCPData) const |
| void | subtractFullRings (std::vector< std::pair< xAOD::CaloCluster *, bool > > &tracksClusters, CellIt beginRing, CellIt endRing, eflowRecTrack &theTrack, bool addCPData) const |
| bool | subtractRings (eflowRingSubtractionManager &ringSubtractionManager, const std::pair< eflowCaloENUM, short > &ring, double &eSubtracted, const double eExpect, eflowCellList &orderedCells, std::vector< std::pair< xAOD::CaloCluster *, bool > > &tracksClusters, bool &annFlag, eflowRecTrack &theTrack, bool addCPData) const |
| void | initMessaging () const |
| Initialize our message level and MessageSvc. | |
Static Private Member Functions | |
| static CaloClusterCellLink::iterator | getCellIterator (xAOD::CaloCluster *thisCluster, const CaloCell *thisCell) |
| static void | updateClusterKinematics (std::vector< std::pair< xAOD::CaloCluster *, bool > > &tracksClusters) |
| static void | updateClusterKinematics (xAOD::CaloCluster *) |
| static double | getTotalEnergy (const std::vector< std::pair< xAOD::CaloCluster *, bool > > &tracksClusters) |
| static double | getRingsEnergy (std::vector< std::pair< xAOD::CaloCluster *, bool > > &tracksClusters, CellIt beginRing, CellIt endRing) |
| static bool | subtractCaloCell (double &eSubtracted, const double eExpect, xAOD::CaloCluster *cluster, const CaloCell *cell, eflowRecTrack &theTrack, bool addCPData) |
| static void | annihilateClusters (std::vector< std::pair< xAOD::CaloCluster *, bool > > &tracksClusters, bool &annFlag, eflowRecTrack &theTrack, bool addCPData) |
| static bool | subtractReorderedCells (std::vector< std::pair< xAOD::CaloCluster *, bool > > &tracksClusters, double eSubtracted, const double eExpect, eflowCellList &orderedCells, eflowRecTrack &theTrack, bool addCPData) |
Private Attributes | |
| std::string | m_nm |
| Message source name. | |
| boost::thread_specific_ptr< MsgStream > | m_msg_tls |
| MsgStream instance (a std::cout like with print-out levels). | |
| std::atomic< IMessageSvc * > | m_imsg { nullptr } |
| MessageSvc pointer. | |
| std::atomic< MSG::Level > | m_lvl { MSG::NIL } |
| Current logging level. | |
| std::atomic_flag m_initialized | ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
| Messaging initialized (initMessaging). | |
This class deals with the removal of calorimeter cells from calorimeter clusters.
The main entry points are the subtractCells methods which find out how much energy they should subtract from the eflowRingSubtractionManager. The eflowRingSubtractionManager also contains a list of calorimeter cell rings (a ring is a list of calorimeter cells, in a given calorimeter layer, between two radii r1 and r2). The cell information is stored in the eflowCellList. Rings are removed one by one in the order they are stored until the summed cell ring energy is >= to the expected energy deposit from the track in the calorimeter.
Definition at line 36 of file eflowCellSubtractionFacilitator.h.
| eflowCellSubtractionFacilitator::eflowCellSubtractionFacilitator | ( | ) |
Definition at line 19 of file eflowCellSubtractionFacilitator.cxx.
|
staticprivate |
Definition at line 95 of file eflowCellSubtractionFacilitator.cxx.
|
staticprivate |
Definition at line 397 of file eflowCellSubtractionFacilitator.cxx.
|
staticprivate |
Definition at line 71 of file eflowCellSubtractionFacilitator.cxx.
|
staticprivate |
Definition at line 60 of file eflowCellSubtractionFacilitator.cxx.
|
privateinherited |
Initialize our message level and MessageSvc.
This method should only be called once.
Definition at line 39 of file AthMessaging.cxx.
|
inherited |
The standard message stream.
Definition at line 49 of file AsgMessaging.cxx.
|
inherited |
The standard message stream.
| lvl | The message level to set the stream to |
Definition at line 57 of file AsgMessaging.cxx.
|
inherited |
Test the output level of the object.
| lvl | The message level to test against |
true If messages at level "lvl" will be printed Definition at line 41 of file AsgMessaging.cxx.
|
inherited |
Change the current logging level.
Use this rather than msg().setLevel() for proper operation with MT.
Definition at line 28 of file AthMessaging.cxx.
|
staticprivate |
Definition at line 254 of file eflowCellSubtractionFacilitator.cxx.
| double eflowCellSubtractionFacilitator::subtractCells | ( | eflowRingSubtractionManager & | ringSubtractionManager, |
| eflowRecTrack & | theTrack, | ||
| std::vector< std::pair< xAOD::CaloCluster *, bool > > & | tracksClus, | ||
| eflowCellList & | orderedCells, | ||
| bool & | annFlag, | ||
| bool | addCPData ) const |
Definition at line 331 of file eflowCellSubtractionFacilitator.cxx.
| double eflowCellSubtractionFacilitator::subtractCells | ( | eflowRingSubtractionManager & | ringSubtractionManager, |
| eflowRecTrack & | theTrack, | ||
| xAOD::CaloCluster * | tracksClus, | ||
| eflowCellList & | orderedCells, | ||
| bool & | annFlag, | ||
| bool | addCPData ) const |
Definition at line 24 of file eflowCellSubtractionFacilitator.cxx.
|
private |
Definition at line 155 of file eflowCellSubtractionFacilitator.cxx.
|
private |
Definition at line 123 of file eflowCellSubtractionFacilitator.cxx.
|
staticprivate |
Definition at line 296 of file eflowCellSubtractionFacilitator.cxx.
|
private |
Definition at line 181 of file eflowCellSubtractionFacilitator.cxx.
|
staticprivate |
Definition at line 38 of file eflowCellSubtractionFacilitator.cxx.
|
staticprivate |
Definition at line 46 of file eflowCellSubtractionFacilitator.cxx.
|
mutableprivateinherited |
Messaging initialized (initMessaging).
Definition at line 141 of file AthMessaging.h.
|
mutableprivateinherited |
|
mutableprivateinherited |
|
mutableprivateinherited |
MsgStream instance (a std::cout like with print-out levels).
Definition at line 132 of file AthMessaging.h.
|
privateinherited |
Message source name.
Definition at line 129 of file AthMessaging.h.