CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Functions
PFDisplacedVertexCandidateFinder.cc File Reference
#include "RecoParticleFlow/PFTracking/interface/PFDisplacedVertexCandidateFinder.h"
#include "DataFormats/GeometryVector/interface/GlobalVector.h"
#include "DataFormats/TrackReco/interface/Track.h"
#include "MagneticField/Engine/interface/MagneticField.h"

Go to the source code of this file.

Functions

ostream & operator<< (std::ostream &out, const PFDisplacedVertexCandidateFinder &a)
 

Function Documentation

ostream& operator<< ( std::ostream &  out,
const PFDisplacedVertexCandidateFinder a 
)

Definition at line 372 of file PFDisplacedVertexCandidateFinder.cc.

References PFDisplacedVertexCandidateFinder::eventTracks_, dbtoconf::out, Pi, mathSSE::sqrt(), and PFDisplacedVertexCandidateFinder::vertexCandidates().

372  {
373  if(! out) return out;
374 
375  out<<"====== Particle Flow Block Algorithm ======= ";
376  out<<endl;
377  out<<"number of unassociated elements : "<<a.eventTracks_.size()<<endl;
378  out<<endl;
379 
381  ie != a.eventTracks_.end(); ie++) {
382 
383  double pt = (*ie).get()->pt();
384 
385  math::XYZPoint Pi = (*ie).get()->innerPosition();
386  math::XYZPoint Po = (*ie).get()->outerPosition();
387 
388  double innermost_radius = sqrt(Pi.x()*Pi.x() + Pi.y()*Pi.y() + Pi.z()*Pi.z());
389  double outermost_radius = sqrt(Po.x()*Po.x() + Po.y()*Po.y() + Po.z()*Po.z());
390  double innermost_rho = sqrt(Pi.x()*Pi.x() + Pi.y()*Pi.y());
391  double outermost_rho = sqrt(Po.x()*Po.x() + Po.y()*Po.y());
392 
393  out<<"ie = " << (*ie).key()
394  <<" pt = " << pt
395  <<" innermost hit radius = " << innermost_radius << " rho = " << innermost_rho
396  <<" outermost hit radius = " << outermost_radius << " rho = " << outermost_rho
397  <<endl;
398  }
399 
400 
401  const std::auto_ptr< reco::PFDisplacedVertexCandidateCollection >& vertexCandidates
402  = a.vertexCandidates();
403 
404  if(!vertexCandidates.get() ) {
405  out<<"vertexCandidates already transfered"<<endl;
406  }
407  else {
408  out<<"number of vertexCandidates : "<<vertexCandidates->size()<<endl;
409  out<<endl;
410 
411 
412  for(PFDisplacedVertexCandidateFinder::IBC ib=vertexCandidates->begin();
413  ib != vertexCandidates->end(); ib++)
414  ib->Dump();
415 
416 
417 
418  }
419 
420  return out;
421 }
const double Pi
std::list< reco::TrackBaseRef >::const_iterator IEC
T sqrt(T t)
Definition: SSEVec.h:28
tuple out
Definition: dbtoconf.py:99
reco::PFDisplacedVertexCandidateCollection::const_iterator IBC
const std::auto_ptr< reco::PFDisplacedVertexCandidateCollection > & vertexCandidates() const
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:13
std::list< reco::TrackBaseRef > eventTracks_
The track refs.