1 #ifndef GroupedCkfTrajectoryBuilder_H
2 #define GroupedCkfTrajectoryBuilder_H
109 inline bool tkxor(
bool a,
bool b)
const {
return (a||b) && !(a&&
b);}
141 std::vector<const TrackingRecHit*>& remainingHits)
const;
146 const std::vector<const TrackingRecHit*>& hits)
const;
154 std::vector<const DetLayer*> &fillme)
const;
virtual void analyseMeasurements(const std::vector< TM > &meas, const Trajectory &traj) const
virtual void setEvent(const edm::Event &event) const
set Event for the internal MeasurementTracker data member
TempTrajectoryContainer work_
TrajectoryContainer trajectories(const TrajectorySeed &) const
trajectories building starting from a seed
PropagationDirection oppositeDirection(PropagationDirection dir) const
change of propagation direction
GroupedCkfTrajectoryBuilder(const edm::ParameterSet &conf, const TrajectoryStateUpdator *updator, const Propagator *propagatorAlong, const Propagator *propagatorOpposite, const Chi2MeasurementEstimatorBase *estimator, const TransientTrackingRecHitBuilder *RecHitBuilder, const MeasurementTracker *measurementTracker, const TrajectoryFilter *filter, const TrajectoryFilter *inOutFilter)
constructor from ParameterSet
const TrajectoryStateUpdator * theUpdator
virtual void analyseSeed(const TrajectorySeed &seed) const
double mass()
Mass hypothesis used for propagation.
unsigned int theMinNrOf2dHitsForRebuild
virtual void analyseResult(const TrajectoryContainer &result) const
void groupedLimitedCandidates(TempTrajectory &startingTraj, const TrajectoryFilter *regionalCondition, const Propagator *propagator, bool inOut, TempTrajectoryContainer &result) const
bool verifyHits(TempTrajectory::DataContainer::const_iterator rbegin, size_t maxDepth, const std::vector< const TrackingRecHit * > &hits) const
Verifies presence of a RecHits in a range of TrajectoryMeasurements.
void groupedIntermediaryClean(TempTrajectoryContainer &theTrajectories) const
intermediate cleaning in the case of grouped measurements
void backwardFit(TempTrajectory &candidate, unsigned int nSeed, const TrajectoryFitter &fitter, TempTrajectoryContainer &fittedTracks, std::vector< const TrackingRecHit * > &remainingHits) const
const Chi2MeasurementEstimatorBase & estimator() const
void rebuildSeedingRegion(const TrajectorySeed &, TrajectoryContainer &result) const
void buildTrajectories(const TrajectorySeed &, TrajectoryContainer &ret, const TrajectoryFilter *) const
common part of both public trajectory building methods
bool advanceOneLayer(TempTrajectory &traj, const TrajectoryFilter *regionalCondition, const Propagator *propagator, bool inOut, TempTrajectoryContainer &newCand, TempTrajectoryContainer &result) const
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger but the state exists so we define the behavior If all triggers are the negative crieriion will lead to accepting the event(this again matches the behavior of"!*"before the partial wildcard feature was incorporated).The per-event"cost"of each negative criterion with multiple relevant triggers is about the same as!*was in the past
tuple filter
USE THIS FOR SKIMMED TRACKS process.p = cms.Path(process.hltLevel1GTSeed*process.skimming*process.offlineBeamSpot*process.TrackRefitter2) OTHERWISE USE THIS.
unsigned int theMinNrOfHitsForRebuild
virtual ~GroupedCkfTrajectoryBuilder()
destructor
std::vector< TempTrajectory > TempTrajectoryContainer
const TrajectoryStateUpdator & updator() const
TrajectoryFilter * theConfigurableCondition
bool tkxor(bool a, bool b) const
bool theIntermediateCleaning
bool theRequireSeedHitsInRebuild
GroupedCkfTrajectoryBuilder & operator=(const GroupedCkfTrajectoryBuilder &)
no assignment operator
std::vector< Trajectory > TrajectoryContainer
void layers(const TempTrajectory::DataContainer &measurements, std::vector< const DetLayer * > &fillme) const
const Chi2MeasurementEstimatorBase * theEstimator