207 file <<
", If[rt, {AbsolutePointSize[6]";
216 const std::vector<Trajectory>* trajectories = trajectoryHandle.
product();
220 << recTracks->size();
224 file <<
", RGBColor[0,0,0.4]";
225 reco::TrackCollection::const_iterator recTrack = recTracks->begin();
228 for(std::vector<Trajectory>::const_iterator it = trajectories->begin();
229 it!= trajectories->end();
230 it++, i++, recTrack++)
239 switch(recTrack->algo())
247 ostringstream
o; o <<
i;
249 ostringstream d; d << fixed << std::setprecision(2)
250 <<
" | d0=" << recTrack->d0() <<
" cm"
251 <<
" | z0=" << recTrack->dz() <<
" cm"
252 <<
" | pt=" << recTrack->pt() <<
" GeV/c";
256 for(std::vector<TrajectoryMeasurement>::const_reverse_iterator
279 theRecHits.printPixelRecHit(pixelRecHit);
293 if(stripMatchedRecHit != 0)
295 theRecHits.printStripRecHit(stripMatchedRecHit->
monoHit());
296 theRecHits.printStripRecHit(stripMatchedRecHit->
stereoHit());
302 file <<
", Point[{"<< p.
x()<<
","<<p.
y()<<
",("<<p.
z()<<
"-zs)*mz}]" << std::endl;
305 if(stripProjectedRecHit != 0)
306 theRecHits.printStripRecHit(&(stripProjectedRecHit->
originalHit()));
309 theRecHits.printStripRecHit(stripRecHit);
311 if(stripMatchedRecHit != 0 ||
312 stripProjectedRecHit != 0 ||
323 recTrack = recTracks->begin();
325 for(std::vector<Trajectory>::const_iterator it = trajectories->begin();
326 it!= trajectories->end();
330 switch(recTrack->algo())
338 if(algo == 0)
file <<
", RGBColor[1,0,0]";
339 if(algo == 1)
file <<
", RGBColor[0.2,0.6,0.2]";
340 if(algo == 2)
file <<
", RGBColor[0.2,0.2,0.6]";
342 std::vector<TrajectoryMeasurement> meas = it->measurements();
344 for(std::vector<TrajectoryMeasurement>::reverse_iterator im = meas.rbegin();
345 im!= meas.rend(); im++)
347 if(im == meas.rbegin())
350 GlobalVector v2 = (*(im )).updatedState().globalDirection();
352 recTrack->vertex().y(),
353 recTrack->vertex().z());
358 if(im+1 != meas.rend())
360 GlobalPoint p1 = (*(im )).updatedState().globalPosition();
361 GlobalPoint p2 = (*(im+1)).updatedState().globalPosition();
362 GlobalVector v2 = (*(im+1)).updatedState().globalDirection();
369 GlobalPoint p1 = (*(meas.rend()-1)).forwardPredictedState().globalPosition();
void printHelix(const GlobalPoint &p1, const GlobalPoint &p2, const GlobalVector &n2, std::ofstream &outFile, int charge)
std::string getPixelInfo(const TrackingRecHit *recHit, const std::ostringstream &o, const std::ostringstream &d)
const SiStripRecHit2D * stereoHit() const
GlobalPoint toGlobal(const Local2DPoint &lp) const
Conversion to the global R.F. from the R.F. of the GeomDet.
Global3DPoint GlobalPoint
std::vector< Track > TrackCollection
collection of Tracks
virtual SubDetector subDetector() const =0
Which subdetector.
GlobalPoint globalPosition() const
static PlanePointer build(const PositionType &pos, const RotationType &rot, MediumProperties *mp=0)
TrackerHitAssociator * theHitAssociator
virtual LocalPoint localPosition() const
const TrackerGeometry * theTracker
DataContainer const & measurements() const
const Propagator * thePropagator
const edm::EventSetup & es
virtual const GeomDet * idToDet(DetId) const
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
virtual TrajectoryStateOnSurface propagate(const FreeTrajectoryState &, const Surface &) const
static CylinderPointer build(const PositionType &pos, const RotationType &rot, Scalar radius, MediumProperties *mp=0)
T const * product() const
std::string getStripInfo(const TrackingRecHit *recHit, const std::ostringstream &o, const std::ostringstream &d)
FreeTrajectoryState getTrajectoryAtOuterPoint(const reco::Track &track)
DetId geographicalId() const
const SiStripRecHit2D * monoHit() const
virtual LocalPoint localPosition() const =0
const SiStripRecHit2D & originalHit() const
std::string trackProducer
GlobalVector globalDirection() const