CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
TripletFilter Class Reference

#include <TripletFilter.h>

Public Member Functions

bool checkTrack (const std::vector< const TrackingRecHit * > &recHits, const std::vector< LocalVector > &localDirs, const TrackerTopology *tTopo, const SiPixelClusterShapeCache &clusterShapeCache)
 
bool checkTrack (const std::vector< const TrackingRecHit * > &recHits, const std::vector< GlobalVector > &globalDirs, const TrackerTopology *tTopo, const SiPixelClusterShapeCache &clusterShapeCache)
 
 TripletFilter (const edm::EventSetup &es)
 
 ~TripletFilter ()
 

Private Attributes

const ClusterShapeHitFiltertheFilter
 

Detailed Description

Definition at line 15 of file TripletFilter.h.

Constructor & Destructor Documentation

TripletFilter::TripletFilter ( const edm::EventSetup es)

Definition at line 22 of file TripletFilter.cc.

References edm::EventSetup::get(), and edm::ESHandle< class >::product().

23 {
24  // Get cluster shape hit filter
26  es.get<CkfComponentsRecord>().get("ClusterShapeHitFilter",shape);
27  theFilter = shape.product();
28 }
const ClusterShapeHitFilter * theFilter
Definition: TripletFilter.h:26
const T & get() const
Definition: EventSetup.h:56
T const * product() const
Definition: ESHandle.h:86
TripletFilter::~TripletFilter ( )

Definition at line 31 of file TripletFilter.cc.

32 {
33 }

Member Function Documentation

bool TripletFilter::checkTrack ( const std::vector< const TrackingRecHit * > &  recHits,
const std::vector< LocalVector > &  localDirs,
const TrackerTopology tTopo,
const SiPixelClusterShapeCache clusterShapeCache 
)

Definition at line 37 of file TripletFilter.cc.

References HitInfo::getInfo(), TrackingRecHit::isValid(), LogTrace, and convertSQLiteXML::ok.

38 {
39  bool ok = true;
40 
41  vector<LocalVector>::const_iterator localDir = localDirs.begin();
42  for(vector<const TrackingRecHit*>::const_iterator recHit = recHits.begin();
43  recHit!= recHits.end();
44  recHit++)
45  {
46  const SiPixelRecHit* pixelRecHit =
47  dynamic_cast<const SiPixelRecHit *>(*recHit);
48 
49  if(! pixelRecHit->isValid())
50  { ok = false; break; }
51 
52  if(! theFilter->isCompatible(*pixelRecHit, *localDir, clusterShapeCache))
53  {
54  LogTrace("MinBiasTracking")
55  << " [TripletFilter] clusShape problem"
56  << HitInfo::getInfo(**recHit,tTopo);
57 
58  ok = false; break;
59  }
60 
61  localDir++;
62  }
63 
64  return ok;
65 }
const ClusterShapeHitFilter * theFilter
Definition: TripletFilter.h:26
#define LogTrace(id)
bool isCompatible(const SiPixelRecHit &recHit, const LocalVector &ldir, const SiPixelClusterShapeCache &clusterShapeCache, PixelData const *pd=0) const
bool isValid() const
static std::string getInfo(const DetId &id, const TrackerTopology *tTopo)
Definition: HitInfo.cc:23
Our base class.
Definition: SiPixelRecHit.h:23
bool TripletFilter::checkTrack ( const std::vector< const TrackingRecHit * > &  recHits,
const std::vector< GlobalVector > &  globalDirs,
const TrackerTopology tTopo,
const SiPixelClusterShapeCache clusterShapeCache 
)

Definition at line 69 of file TripletFilter.cc.

References HitInfo::getInfo(), TrackingRecHit::isValid(), LogTrace, and convertSQLiteXML::ok.

70 {
71  bool ok = true;
72 
73  vector<GlobalVector>::const_iterator globalDir = globalDirs.begin();
74  for(vector<const TrackingRecHit*>::const_iterator recHit = recHits.begin();
75  recHit!= recHits.end();
76  recHit++)
77  {
78  const SiPixelRecHit* pixelRecHit =
79  dynamic_cast<const SiPixelRecHit *>(*recHit);
80 
81  if(! pixelRecHit->isValid())
82  { ok = false; break; }
83 
84  if(! theFilter->isCompatible(*pixelRecHit, *globalDir, clusterShapeCache))
85  {
86  LogTrace("MinBiasTracking")
87  << " [TripletFilter] clusShape problem"
88  << HitInfo::getInfo(**recHit,tTopo);
89 
90  ok = false; break;
91  }
92 
93  globalDir++;
94  }
95 
96  return ok;
97 }
const ClusterShapeHitFilter * theFilter
Definition: TripletFilter.h:26
#define LogTrace(id)
bool isCompatible(const SiPixelRecHit &recHit, const LocalVector &ldir, const SiPixelClusterShapeCache &clusterShapeCache, PixelData const *pd=0) const
bool isValid() const
static std::string getInfo(const DetId &id, const TrackerTopology *tTopo)
Definition: HitInfo.cc:23
Our base class.
Definition: SiPixelRecHit.h:23

Member Data Documentation

const ClusterShapeHitFilter* TripletFilter::theFilter
private

Definition at line 26 of file TripletFilter.h.