Go to the documentation of this file.
58 std::vector<math::XYZPointF>
result;
62 std::vector<reco::CaloClusterPtr>
matchingBC(2);
76 if (
track.innermostMeasurementState().globalPosition().eta() > 0.) {
87 result.push_back(ecalImpactPosition);
91 float bcDistanceToTrack = 9999;
96 for (
auto const& bc : *bcHandle) {
97 float dEta = bc.position().eta() - ecalImpactPosition.eta();
98 float dPhi = bc.position().phi() - ecalImpactPosition.phi();
std::vector< math::XYZPointF > find(const std::vector< reco::TransientTrack > &tracks, const edm::Handle< edm::View< reco::CaloCluster > > &bcHandle)
static BoundCylinder * initBarrel()
TrajectoryStateOnSurface propagate(STA const &state, SUR const &surface) const
static BoundDisk * initNegative()
GlobalPoint globalPosition() const
std::vector< reco::CaloClusterPtr > matchingBC_
static const ReferenceCountingPointer< BoundDisk > theNegativeEtaEndcap_
constexpr float barrelHalfLength
static const BoundDisk & positiveEtaEndcap()
ConversionTrackEcalImpactPoint(const MagneticField *field)
static BoundDisk * initPositive()
PropagationDirection dir_
constexpr float endcapRadius
static const ReferenceCountingPointer< BoundDisk > thePositiveEtaEndcap_
const uint32_t *__restrict__ const HitContainer *__restrict__ TkSoA *__restrict__ tracks
static const BoundCylinder & barrel()
TrajectoryStateOnSurface stateAtECAL_
PropagatorWithMaterial * forwardPropagator_
const MagneticField * theMF_
static const ReferenceCountingPointer< BoundCylinder > theBarrel_
std::vector< reco::CaloClusterPtr > matchingBC() const
~ConversionTrackEcalImpactPoint()
constexpr float barrelRadius
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float > > XYZPointF
point in space with cartesian internal representation
static const BoundDisk & negativeEtaEndcap()