CMS 3D CMS Logo

ForwardDetRingOneZ.cc
Go to the documentation of this file.
4 //#include "TrackingTools/GeomPropagators/interface/Propagator.h"
5 
8 
9 #include <algorithm>
10 #include <cmath>
11 
12 using namespace std;
13 
15 
16 ForwardDetRingOneZ::ForwardDetRingOneZ(vector<const GeomDet*>::const_iterator first,
17  vector<const GeomDet*>::const_iterator last)
18  : ForwardDetRing(false), theDets(first, last) {
19  initialize();
20 }
21 
22 ForwardDetRingOneZ::ForwardDetRingOneZ(const vector<const GeomDet*>& dets) : ForwardDetRing(false), theDets(dets) {
23  initialize();
24 }
25 
27  // assume the dets ARE in a ring
28  // sort them in phi
31 }
32 
34  vector<DetWithState>& result,
35  const TrajectoryStateOnSurface& tsos,
36  const Propagator& prop,
37  const MeasurementEstimator& est) const {
38  pair<bool, TrajectoryStateOnSurface> compat = theCompatibilityChecker.isCompatible(theDets[idet], tsos, prop, est);
39 
40  if (compat.first) {
41  result.push_back(DetWithState(theDets[idet], compat.second));
42  }
43 
44  return compat.first;
45 }
MeasurementEstimator
Definition: MeasurementEstimator.h:19
TrajectoryStateOnSurface.h
ForwardDetRing::setDisk
void setDisk(BoundDisk *disk)
Set the rod's disk.
Definition: ForwardDetRing.h:31
funct::false
false
Definition: Factorize.h:29
GeometricSearchDet::theCompatibilityChecker
GeomDetCompatibilityChecker theCompatibilityChecker
Definition: GeometricSearchDet.h:102
ForwardRingDiskBuilderFromDet.h
precomputed_value_sort.h
Propagator
Definition: Propagator.h:44
DetSorting.h
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
geomsort::DetPhi
ExtractPhi< GeomDet, float > DetPhi
Definition: DetSorting.h:37
dqmdumpme.last
last
Definition: dqmdumpme.py:56
ForwardDetRingOneZ::add
bool add(int idet, std::vector< DetWithState > &result, const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est) const
Definition: ForwardDetRingOneZ.cc:33
first
auto first
Definition: CAHitNtupletGeneratorKernelsImpl.h:125
GeomDetCompatibilityChecker::isCompatible
static std::pair< bool, TrajectoryStateOnSurface > isCompatible(const GeomDet *theDet, const TrajectoryStateOnSurface &ts, const Propagator &prop, const MeasurementEstimator &est)
Definition: GeomDetCompatibilityChecker.cc:58
ForwardDetRingOneZ::ForwardDetRingOneZ
ForwardDetRingOneZ(std::vector< const GeomDet * >::const_iterator first, std::vector< const GeomDet * >::const_iterator last)
Construct from iterators on Det*.
Definition: ForwardDetRingOneZ.cc:16
ForwardDetRingOneZ::theDets
std::vector< const GeomDet * > theDets
Definition: ForwardDetRingOneZ.h:31
ForwardDetRingOneZ::~ForwardDetRingOneZ
~ForwardDetRingOneZ() override
Definition: ForwardDetRingOneZ.cc:14
ForwardDetRingOneZ.h
GeometricSearchDet::DetWithState
std::pair< const GeomDet *, TrajectoryStateOnSurface > DetWithState
Definition: GeometricSearchDet.h:19
std
Definition: JetResolutionObject.h:76
ForwardRingDiskBuilderFromDet
Definition: ForwardRingDiskBuilderFromDet.h:19
mps_fire.result
result
Definition: mps_fire.py:311
precomputed_value_sort
void precomputed_value_sort(RandomAccessIterator begin, RandomAccessIterator end, const Extractor &extr, const Compare &comp)
Definition: precomputed_value_sort.h:17
ForwardDetRingOneZ::initialize
void initialize()
Definition: ForwardDetRingOneZ.cc:26
ForwardDetRing
Definition: ForwardDetRing.h:11