CMS 3D CMS Logo

ClusterRemovalInfo.h
Go to the documentation of this file.
1 #ifndef DataFormats_TrackerRecHit2D_ClusterRemovalInfo_h
2 #define DataFormats_TrackerRecHit2D_ClusterRemovalInfo_h
3 
10 
11 namespace reco {
12 
14  public:
21 
22  typedef std::vector<uint32_t> Indices;
23 
25 
28  pixelProd_(pixelClusters), stripProd_(stripClusters), phase2OTProd_() { }
29 
32  pixelProd_(pixelClusters), stripProd_(), phase2OTProd_(phase2OTClusters) { }
33 
35  pixelProd_(pixelClusters), stripProd_(), phase2OTProd_() { }
36 
38  pixelProd_(), stripProd_(stripClusters), phase2OTProd_() { }
39 
41  pixelProd_(), stripProd_(), phase2OTProd_(phase2OTClusters) { }
42 
44  stripProd_ = other.stripProd_;
45  pixelProd_ = other.pixelProd_;
47  }
48 
49  Indices & pixelIndices() { return pixelIndices_; }
50  Indices & stripIndices() { return stripIndices_; }
51  Indices & phase2OTIndices() { return phase2OTIndices_; }
52 
53  const Indices & pixelIndices() const { return pixelIndices_; }
54  const Indices & stripIndices() const { return stripIndices_; }
55  const Indices & phase2OTIndices() const { return phase2OTIndices_; }
56 
57  const SiPixelClusterRefProd & pixelRefProd() const { return pixelProd_; }
58  const SiStripClusterRefProd & stripRefProd() const { return stripProd_; }
59  const Phase2TrackerCluster1DRefProd & phase2OTRefProd() const { return phase2OTProd_; }
60  const SiPixelClusterRefProd & pixelNewRefProd() const { return pixelNewProd_; }
61  const SiStripClusterRefProd & stripNewRefProd() const { return stripNewProd_; }
62  const Phase2TrackerCluster1DRefProd & phase2OTNewRefProd() const { return phase2OTNewProd_; }
63 
67 
68  bool hasPixel() const { return pixelProd_.isNonnull(); }
69  bool hasStrip() const { return stripProd_.isNonnull(); }
70  bool hasPhase2OT() const { return phase2OTProd_.isNonnull(); }
71 
73  private:
74  SiPixelClusterRefProd pixelProd_;
75  SiStripClusterRefProd stripProd_;
76  Phase2TrackerCluster1DRefProd phase2OTProd_;
77  SiPixelClusterRefProd pixelNewProd_;
78  SiStripClusterRefProd stripNewProd_;
79  Phase2TrackerCluster1DRefProd phase2OTNewProd_;
81  };
82 
84 
85 }
86 
87 #endif
const SiPixelClusterRefProd & pixelRefProd() const
const SiStripClusterRefProd & stripRefProd() const
const Indices & pixelIndices() const
SiPixelRecHit::ClusterRef::product_type SiPixelClusters
void setNewPhase2OTClusters(const edm::OrphanHandle< Phase2TrackerCluster1Ds > &phase2OTs)
Phase2TrackerRecHit1D::CluRef::product_type Phase2TrackerCluster1Ds
SiPixelClusterRefProd pixelProd_
SiPixelClusterRefProd pixelNewProd_
SiStripRecHit2D::ClusterRef::product_type SiStripClusters
Phase2TrackerCluster1DRefProd phase2OTNewProd_
ClusterRemovalInfo(const edm::Handle< SiPixelClusters > &pixelClusters, const edm::Handle< SiStripClusters > &stripClusters)
ClusterRemovalInfo(const edm::Handle< Phase2TrackerCluster1Ds > &phase2OTClusters)
edm::RefProd< SiPixelClusters > SiPixelClusterRefProd
const SiPixelClusterRefProd & pixelNewRefProd() const
SiStripClusterRefProd stripNewProd_
edm::RefProd< Phase2TrackerCluster1Ds > Phase2TrackerCluster1DRefProd
const Indices & stripIndices() const
void setNewPixelClusters(const edm::OrphanHandle< SiPixelClusters > &pixels)
edm::RefProd< SiStripClusters > SiStripClusterRefProd
const Phase2TrackerCluster1DRefProd & phase2OTRefProd() const
std::vector< uint32_t > Indices
void getOldClustersFrom(const ClusterRemovalInfo &other)
ClusterRemovalInfo(const edm::Handle< SiPixelClusters > &pixelClusters, const edm::Handle< Phase2TrackerCluster1Ds > &phase2OTClusters)
ClusterRemovalInfo(const edm::Handle< SiPixelClusters > &pixelClusters)
Phase2TrackerCluster1DRefProd phase2OTProd_
const Indices & phase2OTIndices() const
const SiStripClusterRefProd & stripNewRefProd() const
C product_type
for export
Definition: Ref.h:162
void setNewStripClusters(const edm::OrphanHandle< SiStripClusters > &strips)
fixed size matrix
const Phase2TrackerCluster1DRefProd & phase2OTNewRefProd() const
SiStripClusterRefProd stripProd_
ClusterRemovalInfo(const edm::Handle< SiStripClusters > &stripClusters)
bool isNonnull() const
Checks for non-null.
Definition: RefProd.h:131
void swap(reco::ClusterRemovalInfo &other)