CMS 3D CMS Logo

TkTransientTrackingRecHitBuilder Class Reference

#include <RecoTracker/TransientTrackingRecHit/interface/TkTransientTrackingRecHitBuilder.h>

Inheritance diagram for TkTransientTrackingRecHitBuilder:

TransientTrackingRecHitBuilder

List of all members.

Public Member Functions

TransientTrackingRecHit::RecHitPointer build (const TrackingRecHit *p) const
const
PixelClusterParameterEstimator
pixelClusterParameterEstimator ()
const SiStripRecHitMatchersiStripRecHitMatcher ()
const
StripClusterParameterEstimator
stripClusterParameterEstimator ()
 TkTransientTrackingRecHitBuilder (const TrackingGeometry *trackingGeometry, const PixelClusterParameterEstimator *, const StripClusterParameterEstimator *, const SiStripRecHitMatcher *)

Private Attributes

const
PixelClusterParameterEstimator
pixelCPE
const
StripClusterParameterEstimator
stripCPE
const TrackingGeometrytGeometry_
const SiStripRecHitMatchertheMatcher


Detailed Description

Definition at line 11 of file TkTransientTrackingRecHitBuilder.h.


Constructor & Destructor Documentation

TkTransientTrackingRecHitBuilder::TkTransientTrackingRecHitBuilder ( const TrackingGeometry trackingGeometry,
const PixelClusterParameterEstimator pCPE,
const StripClusterParameterEstimator sCPE,
const SiStripRecHitMatcher matcher 
)

Definition at line 22 of file TkTransientTrackingRecHitBuilder.cc.

00025                                                                                                          :  
00026   tGeometry_(trackingGeometry),
00027   pixelCPE(pCPE),
00028   stripCPE(sCPE),
00029   theMatcher(matcher) {}


Member Function Documentation

TransientTrackingRecHit::RecHitPointer TkTransientTrackingRecHitBuilder::build ( const TrackingRecHit p  )  const [virtual]

Implements TransientTrackingRecHitBuilder.

Definition at line 32 of file TkTransientTrackingRecHitBuilder.cc.

References TSiStripRecHit2DLocalPos::build(), ProjectedRecHit2D::build(), InvalidTransientRecHit::build(), TSiPixelRecHit::build(), TSiStripMatchedRecHit::build(), GenericTransientTrackingRecHit::build(), Exception, TrackingRecHit::geographicalId(), TrackingRecHit::getType(), TrackingGeometry::idToDet(), pixelCPE, DetId::rawId(), sh, stripCPE, tGeometry_, and theMatcher.

Referenced by RoadSearchSeedFinderAlgorithm::run().

00033 {
00034   if ( const SiStripRecHit2D* sh = dynamic_cast<const SiStripRecHit2D*>(p)) { 
00035     return ( TSiStripRecHit2DLocalPos::build(tGeometry_->idToDet(p->geographicalId()), sh, stripCPE ) ); 
00036   } else if ( const SiStripMatchedRecHit2D* mh = dynamic_cast<const SiStripMatchedRecHit2D*>(p)) {
00037     return ( TSiStripMatchedRecHit::build(tGeometry_->idToDet(p->geographicalId()), mh, theMatcher, stripCPE)); 
00038   } else if ( const SiPixelRecHit* ph = dynamic_cast<const SiPixelRecHit*>(p)) {
00039     return ( TSiPixelRecHit::build( tGeometry_->idToDet(p->geographicalId()), ph, pixelCPE) ); 
00040   }else if (dynamic_cast<const InvalidTrackingRecHit*>(p)){
00041     return ( InvalidTransientRecHit::build((p->geographicalId().rawId() == 0 ? 0 : 
00042                                             tGeometry_->idToDet(p->geographicalId())),
00043                                            p->getType()
00044                                            ) );
00045     
00046   }else if (const ProjectedSiStripRecHit2D* ph = dynamic_cast<const ProjectedSiStripRecHit2D*>(p)) {
00047     return ProjectedRecHit2D::build(tGeometry_->idToDet(p->geographicalId()),
00048                                     tGeometry_->idToDet(ph->originalHit().geographicalId()),
00049                                                         ph,stripCPE);
00050   } else if ( const SiTrackerGSRecHit2D* gh = dynamic_cast<const SiTrackerGSRecHit2D*>(p)) {
00051     return ( GenericTransientTrackingRecHit::build(tGeometry_->idToDet(p->geographicalId()), gh )); 
00052 
00053   } else if ( const SiTrackerGSMatchedRecHit2D* gh = dynamic_cast<const SiTrackerGSMatchedRecHit2D*>(p)) {
00054     return ( GenericTransientTrackingRecHit::build(tGeometry_->idToDet(p->geographicalId()), gh )); 
00055   } 
00056   
00057   throw cms::Exception("LogicError") << "TrackingRecHit* cannot be casted to a known concrete type"; 
00058 }

const PixelClusterParameterEstimator* TkTransientTrackingRecHitBuilder::pixelClusterParameterEstimator (  )  [inline]

Definition at line 19 of file TkTransientTrackingRecHitBuilder.h.

References pixelCPE.

00019 {return pixelCPE;}

const SiStripRecHitMatcher* TkTransientTrackingRecHitBuilder::siStripRecHitMatcher (  )  [inline]

Definition at line 21 of file TkTransientTrackingRecHitBuilder.h.

References theMatcher.

00021 {return theMatcher;}

const StripClusterParameterEstimator* TkTransientTrackingRecHitBuilder::stripClusterParameterEstimator (  )  [inline]

Definition at line 20 of file TkTransientTrackingRecHitBuilder.h.

References stripCPE.

00020 {return stripCPE;}


Member Data Documentation

const PixelClusterParameterEstimator* TkTransientTrackingRecHitBuilder::pixelCPE [private]

Definition at line 27 of file TkTransientTrackingRecHitBuilder.h.

Referenced by build(), and pixelClusterParameterEstimator().

const StripClusterParameterEstimator* TkTransientTrackingRecHitBuilder::stripCPE [private]

Definition at line 28 of file TkTransientTrackingRecHitBuilder.h.

Referenced by build(), and stripClusterParameterEstimator().

const TrackingGeometry* TkTransientTrackingRecHitBuilder::tGeometry_ [private]

Definition at line 26 of file TkTransientTrackingRecHitBuilder.h.

Referenced by build().

const SiStripRecHitMatcher* TkTransientTrackingRecHitBuilder::theMatcher [private]

Definition at line 29 of file TkTransientTrackingRecHitBuilder.h.

Referenced by build(), and siStripRecHitMatcher().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:33:39 2009 for CMSSW by  doxygen 1.5.4