ATLAS Offline Software
Loading...
Searching...
No Matches
CaloCellSelectorLayerdR.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
6// CaloCellSelectorLayerdR.h, (c) ATLAS Detector software
8#ifndef CALOCELLSELECTORLAYERDR_H
9#define CALOCELLSELECTORLAYERDR_H
10
16
17namespace Trk {
18
19 // Recode of original method by TrackInCaloTools to select calo cells around track
20 // get mid point for each calo layer from the entry & exit point
21 // for each layer's mid point select calo cell within dR in the SAME layer
22 // Fast (?) but
23 // 1. may miss calo cell at another layer which nevertheless is close to the crossing
24 // 2. current implementation will fail in case where there's multiple entry to a calo layer
25
27 public:
28 CaloCellSelectorLayerdR(double coneSize);
30
31 void setConeSize(double coneSize) { m_coneSize2 = coneSize * coneSize; }
32
33 bool preSelectAction(const Trk::CaloExtension& caloExtension);
34 bool preSelectAction(const xAOD::CaloCluster& caloCluster);
35 bool select(const CaloCell& cell) const; // select or reject the cell
36
37 private:
40 // TrackParametersIdHelper parsIdHelper;
41 };
42} // namespace Trk
43
44#endif
Data object for each calorimeter readout cell.
Definition CaloCell.h:57
bool preSelectAction(const Trk::CaloExtension &caloExtension)
Initialize selector wtih CaloExtension, returns false if the selection cannot be performed for the gi...
CaloExtensionHelpers::EtaPhiHashLookupVector m_midPoints
bool select(const CaloCell &cell) const
Method to determine if a cell is to be selected or not.
Tracking class to hold the extrapolation through calorimeter Layers Both the caloEntryLayerIntersecti...
abstract class that judge if a calo cell is to be included in a collection
std::vector< std::tuple< bool, double, double > > EtaPhiHashLookupVector
Ensure that the ATLAS eigen extensions are properly loaded.
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.