42 int qualityMask,
signed char nLoops)
45 std::vector<Trajectory> trajVec;
56 LogDebug(
"TrackProducer") <<
" FITTER FOUND "<< trajVec.size() <<
" TRAJECTORIES" <<
"\n";
59 if (trajVec.size() != 0){
72 for (TransientTrackingRecHit::RecHitContainer::iterator
h=validHits.begin();
h!=validHits.end();++
h)
73 ndof = ndof + ((*h)->dimension())*((*h)->weight());
80 if (!stateForProjectionToBeamLineOnSurface.
isValid()){
81 edm::LogError(
"CannotPropagateToBeamLine")<<
"the state on the closest measurement isnot valid. skipping track.";
87 LogDebug(
"TrackProducer") <<
"stateForProjectionToBeamLine=" << stateForProjectionToBeamLine;
101 LogDebug(
"TrackProducer") <<
"pos=" << v <<
" mom=" << p <<
" pt=" << p.
perp() <<
" mag=" << p.mag();
112 LogDebug(
"TrackProducer") <<
"theTrack->pt()=" << theTrack->
pt();
114 LogDebug(
"TrackProducer") <<
"track done\n";
116 AlgoProduct aProduct(theTraj,std::make_pair(theTrack,seedDir));
117 algoResults.push_back(aProduct);
134 int qualityMask,
signed char nLoops)
137 std::vector<Trajectory> trajVec;
150 LogDebug(
"GsfTrackProducer") <<
" FITTER FOUND "<< trajVec.size() <<
" TRAJECTORIES" <<
"\n";
155 if (trajVec.size() != 0){
186 for (TransientTrackingRecHit::RecHitContainer::iterator
h=validHits.begin();
h!=validHits.end();++
h)
187 ndof = ndof + ((*h)->dimension())*((*h)->weight());
189 else ndof = ndof - 5;
194 if (!stateForProjectionToBeamLineOnSurface.
isValid()){
195 edm::LogError(
"CannotPropagateToBeamLine")<<
"the state on the closest measurement isnot valid. skipping track.";
200 LogDebug(
"TrackProducer") <<
"stateForProjectionToBeamLine=" << stateForProjectionToBeamLine;
214 LogDebug(
"TrackProducer") <<
"pos=" << v <<
" mom=" << p <<
" pt=" << p.
perp() <<
" mag=" << p.mag();
224 LogDebug(
"GsfTrackProducer") <<
"track done\n";
226 AlgoProduct aProduct(theTraj,std::make_pair(theTrack,seedDir));
227 LogDebug(
"GsfTrackProducer") <<
"track done1\n";
228 algoResults.push_back(aProduct);
229 LogDebug(
"GsfTrackProducer") <<
"track done2\n";
PropagationDirection direction() const
void setQualityMask(int qualMask)
double z0() const
z coordinate
virtual GlobalVector inTesla(const GlobalPoint &gp) const =0
Field value ad specified global point, in Tesla.
Global3DPoint GlobalPoint
TrackCharge charge() const
std::vector< AlgoProduct > AlgoProductCollection
TrajectoryMeasurement const & closestMeasurement(GlobalPoint) const
const MagneticField * magneticField() const
const CurvilinearTrajectoryError & curvilinearError() const
std::vector< ConstRecHitPointer > RecHitContainer
bool buildTrack(const TrajectoryFitter *, const Propagator *, AlgoProductCollection &, TransientTrackingRecHit::RecHitContainer &, TrajectoryStateOnSurface &, const TrajectorySeed &, float, const reco::BeamSpot &, SeedRef seedRef=SeedRef(), int qualityMask=0, signed char nLoops=0)
Construct Tracks to be put in the event.
PropagationDirection const & direction() const
void setNLoops(signed char value)
std::pair< Trajectory *, std::pair< reco::Track *, PropagationDirection > > AlgoProduct
FreeTrajectoryState * freeState(bool withErrors=true) const
double pt() const
track transverse momentum
TrajectoryMeasurement const & lastMeasurement() const
void validRecHits(ConstRecHitContainer &cont) const
TrajectoryStateOnSurface updatedState() const
GlobalVector momentum() const
FTS const & trackStateAtPCA() const
GlobalPoint position() const
TrajectoryMeasurement const & firstMeasurement() const
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
XYZVectorD XYZVector
spatial vector with cartesian internal representation
XYZPointD XYZPoint
point in space with cartesian internal representation
reco::TrackBase::TrackAlgorithm algo_
void setSeedRef(const edm::RefToBase< TrajectorySeed > &seedRef)
virtual std::vector< Trajectory > fit(const Trajectory &) const =0
void setAlgorithm(const TrackAlgorithm a, bool set=true)
position index
double y0() const
y coordinate
double chiSquared() const
double x0() const
x coordinate