CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

ClusterShapeTrackFilter Class Reference

#include <ClusterShapeTrackFilter.h>

Inheritance diagram for ClusterShapeTrackFilter:
PixelTrackFilter HIPixelTrackFilter

List of all members.

Public Member Functions

 ClusterShapeTrackFilter (const edm::ParameterSet &ps, const edm::EventSetup &es)
virtual bool operator() (const reco::Track *, const std::vector< const TrackingRecHit * > &hits) const
virtual ~ClusterShapeTrackFilter ()

Private Member Functions

float areaParallelogram (const Global2DVector &a, const Global2DVector &b) const
std::vector< GlobalVectorgetGlobalDirs (const std::vector< GlobalPoint > &globalPoss) const
std::vector< GlobalPointgetGlobalPoss (const std::vector< const TrackingRecHit * > &recHits) const

Private Attributes

double ptMax
double ptMin
const ClusterShapeHitFiltertheFilter
const TrackerGeometrytheTracker

Detailed Description

Definition at line 23 of file ClusterShapeTrackFilter.h.


Constructor & Destructor Documentation

ClusterShapeTrackFilter::ClusterShapeTrackFilter ( const edm::ParameterSet ps,
const edm::EventSetup es 
)

Definition at line 28 of file ClusterShapeTrackFilter.cc.

References edm::ParameterSet::exists(), edm::EventSetup::get(), edm::ParameterSet::getParameter(), edm::ESHandle< T >::product(), jptDQMConfig_cff::ptMax, PtMinSelector_cfg::ptMin, and patCandidatesForDimuonsSequences_cff::tracker.

{
  // Get tracker geometry
  edm::ESHandle<TrackerGeometry> tracker;
  es.get<TrackerDigiGeometryRecord>().get(tracker);
  theTracker = tracker.product();

  // Get cluster shape hit filter
  edm::ESHandle<ClusterShapeHitFilter> shape;
  es.get<CkfComponentsRecord>().get("ClusterShapeHitFilter",shape);
  theFilter = shape.product();

  // Get ptMin if available
  ptMin = (ps.exists("ptMin") ? ps.getParameter<double>("ptMin") : 0.);
  ptMax = (ps.exists("ptMax") ? ps.getParameter<double>("ptMax") : 999999.);
}
ClusterShapeTrackFilter::~ClusterShapeTrackFilter ( ) [virtual]

Definition at line 46 of file ClusterShapeTrackFilter.cc.

{
}

Member Function Documentation

float ClusterShapeTrackFilter::areaParallelogram ( const Global2DVector a,
const Global2DVector b 
) const [private]

Definition at line 52 of file ClusterShapeTrackFilter.cc.

References PV2DBase< T, PVType, FrameType >::x(), and PV2DBase< T, PVType, FrameType >::y().

{  
  return a.x() * b.y() - a.y() * b.x();
}
std::vector<GlobalVector> ClusterShapeTrackFilter::getGlobalDirs ( const std::vector< GlobalPoint > &  globalPoss) const [private]
std::vector<GlobalPoint> ClusterShapeTrackFilter::getGlobalPoss ( const std::vector< const TrackingRecHit * > &  recHits) const [private]
virtual bool ClusterShapeTrackFilter::operator() ( const reco::Track ,
const std::vector< const TrackingRecHit * > &  hits 
) const [virtual]

Member Data Documentation

Definition at line 44 of file ClusterShapeTrackFilter.h.

Definition at line 43 of file ClusterShapeTrackFilter.h.

Definition at line 41 of file ClusterShapeTrackFilter.h.

Definition at line 40 of file ClusterShapeTrackFilter.h.