|
|
Go to the documentation of this file.
39 theTrackerRecHitBuilderName(
parameterSet.getParameter<
string>(
"TrackerRecHitBuilder")),
141 if ((*hit)->isValid()) {
143 result.emplace_back((**hit).cloneForFit(*tkbuilder->geometry()->idToDet((**hit).geographicalId())));
144 }
else if ((*hit)->geographicalId().det() ==
DetId::Muon) {
145 if ((*hit)->geographicalId().subdetId() == 3 && !
theRPCInTheFit) {
146 LogTrace(
"Reco|TrackingTools|TrackTransformer") <<
"RPC Rec Hit discarged";
150 }
else if ((*hit)->geographicalId().det() ==
DetId::Forward && (*hit)->geographicalId().subdetId() ==
FastTime) {
154 throw cms::Exception(
"TrackTransformer") <<
"MTD hit encountered but MTD not available!";
170 auto rFirst =
first.mag2();
171 auto rLast =
last.mag2();
177 LogDebug(
"Reco|TrackingTools|TrackTransformer") <<
"Impossible to determine the rechits order" << endl;
196 if (recHitsForReFit.size() < 2)
197 return vector<Trajectory>();
232 LogTrace(
metname) <<
"RH order (0-insideOut, 1-outsideIn): " << recHitsOrder;
246 LogTrace(
metname) <<
"FD (0-OM, 1-AM, 2-ANY): " << propagationDirection;
254 reverse(recHitsForReFit.begin(), recHitsForReFit.end());
261 reverse(recHitsForReFit.begin(), recHitsForReFit.end());
267 unsigned int innerId =
track.track().innerDetId();
270 innerId =
track.track().outerDetId();
271 firstTSOS =
track.outermostMeasurementState();
276 innerId =
track.track().outerDetId();
277 firstTSOS =
track.outermostMeasurementState();
285 return vector<Trajectory>();
290 if (recHitsForReFit.front()->geographicalId() !=
DetId(innerId)) {
295 return vector<Trajectory>();
302 for (
auto const&
hit : recHitsForReFit) {
307 return vector<Trajectory>(1, aTraj);
319 auto const& trajectoriesSM =
theSmoother->trajectories(trajectoryBW);
321 if (trajectoriesSM.empty()) {
325 return trajectoriesSM;
virtual TrajectorySmoother * clone() const =0
T const * product() const
virtual RecHitPointer build(const TrackingRecHit *p) const =0
build a tracking rechit from an existing rechit
constexpr bool isInitialized() const noexcept
virtual std::unique_ptr< TrajectoryFitter > clone() const =0
Global3DPoint GlobalPoint
PropagationDirection propagationDirection() const
std::vector< ConstRecHitPointer > ConstRecHitContainer
static int position[264][3]
TrajectoryStateOnSurface propagate(STA const &state, SUR const &surface) const
void push(const TrajectoryMeasurement &tm)
const GeomDet * idToDet(DetId) const override
ParameterSet const & parameterSet(Provenance const &provenance, ProcessHistory const &history)
const SurfaceType & surface() const
GeometricalDirection geometricalDirection() const
const std::string metname