Go to the documentation of this file. 1 #ifndef Validation_MuonGEMDigis_GEMDigiMatcher_h
2 #define Validation_MuonGEMDigis_GEMDigiMatcher_h
23 #include <unordered_set>
184 std::set<unsigned int>
result;
185 for (
const auto&
p : digis) {
186 const auto&
id =
p.first;
GEMDigiMatcher(edm::ParameterSet const &iPS, edm::ConsumesCollector &&iC)
void match(const SimTrack &t, const SimVertex &v)
do the matching
edm::Handle< GEMCoPadDigiCollection > gemCoPadsH_
edm::Handle< GEMPadDigiClusterCollection > gemClustersH_
constexpr int ring() const
std::set< unsigned int > superChamberIdsCoPad(int gem_type=MuonHitHelper::GEM_ALL) const
static int toGEMType(int st, int ri)
std::shared_ptr< GEMSimHitMatcher > muonSimHitMatcher()
std::set< unsigned int > chamberIdsDigi(int gem_type=MuonHitHelper::GEM_ALL) const
void init(const edm::Event &e, const edm::EventSetup &eventSetup)
int nCoPads() const
How many coincidence pads in GEM did this simtrack get in total?
std::set< unsigned int > detIdsSimLink(int gem_type=MuonHitHelper::GEM_ALL) const
int extrapolateHsfromGEMPad(unsigned int, int) const
edm::EDGetTokenT< GEMDigiCollection > gemDigiToken_
const GEMDigiContainer & digisInChamber(unsigned int) const
void matchDigisToSimTrack(const GEMDigiCollection &)
const GEMDigiContainer & digisInSuperChamber(unsigned int) const
std::vector< GEMCoPadDigi > GEMCoPadDigiContainer
const GEMDigiSimLinkContainer & simLinksInDetId(unsigned int) const
std::vector< GEMPadDigiCluster > GEMPadDigiClusterContainer
const GEMGeometry * gemGeometry_
const GEMPadDigiContainer & padsInChamber(unsigned int) const
std::map< unsigned int, GEMDigiContainer > chamber_to_digis_
std::vector< GEMDigi > GEMDigiContainer
std::map< unsigned int, GEMPadDigiClusterContainer > chamber_to_clusters_
std::set< int > partitionNumbers() const
edm::EDGetTokenT< edm::DetSetVector< GEMDigiSimLink > > gemSimLinkToken_
void matchCoPadsToSimTrack(const GEMCoPadDigiCollection &)
void matchPadsToSimTrack(const GEMPadDigiCollection &)
GEMDigiSimLinkContainer no_gem_simLinks_
std::map< unsigned int, GEMPadDigiClusterContainer > superchamber_to_clusters_
edm::Handle< edm::DetSetVector< GEMDigiSimLink > > gemDigisSLH_
GEMCoPadDigiContainer no_gem_copads_
std::map< unsigned int, GEMPadDigiContainer > superchamber_to_pads_
std::map< unsigned int, GEMPadDigiClusterContainer > detid_to_clusters_
int extrapolateHsfromGEMStrip(unsigned int, int) const
const std::map< unsigned int, GEMPadDigiContainer > allPads() const
std::set< unsigned int > selectDetIds(const T &, int) const
const GEMPadDigiClusterContainer & clustersInChamber(unsigned int) const
const GEMDigiContainer & digisInDetId(unsigned int) const
GEMPadDigiContainer no_gem_pads_
edm::Handle< GEMDigiCollection > gemDigisH_
std::vector< GEMPadDigi > GEMPadDigiContainer
void matchDigisSLToSimTrack(const edm::DetSetVector< GEMDigiSimLink > &)
std::set< int > padNumbersInDetId(unsigned int) const
std::set< unsigned int > detIdsCluster(int gem_type=MuonHitHelper::GEM_ALL) const
std::set< int > partitionNumbersWithCoPads() const
void matchClustersToSimTrack(const GEMPadDigiClusterCollection &)
edm::EDGetTokenT< GEMPadDigiClusterCollection > gemClusterToken_
edm::EDGetTokenT< GEMCoPadDigiCollection > gemCoPadToken_
std::set< unsigned int > superChamberIdsPad(int gem_type=MuonHitHelper::GEM_ALL) const
edm::Handle< GEMPadDigiCollection > gemPadsH_
GEMPadDigiClusterContainer no_gem_clusters_
int nLayersWithClustersInSuperChamber(unsigned int) const
std::set< unsigned int > chamberIdsCluster(int gem_type=MuonHitHelper::GEM_ALL) const
int nLayersWithDigisInSuperChamber(unsigned int) const
std::set< unsigned int > detIdsPad(int gem_type=MuonHitHelper::GEM_ALL) const
std::map< unsigned int, GEMPadDigiContainer > chamber_to_pads_
std::set< unsigned int > chamberIdsPad(int gem_type=MuonHitHelper::GEM_ALL) const
const GEMCoPadDigiContainer & coPadsInSuperChamber(unsigned int) const
std::map< unsigned int, GEMDigiSimLinkContainer > detid_to_simLinks_
std::set< unsigned int > detIdsDigi(int gem_type=MuonHitHelper::GEM_ALL) const
int nLayersWithPadsInSuperChamber(unsigned int) const
std::map< unsigned int, GEMDigiContainer > detid_to_digis_
const GEMPadDigiClusterContainer & clustersInSuperChamber(unsigned int) const
std::map< unsigned int, GEMPadDigiContainer > detid_to_pads_
std::set< int > stripNumbersInDetId(unsigned int) const
edm::EDGetTokenT< GEMPadDigiCollection > gemPadToken_
GlobalPoint getGlobalPointPad(unsigned int rawId, const GEMPadDigi &tp) const
std::shared_ptr< GEMSimHitMatcher > muonSimHitMatcher_
constexpr int station() const
GlobalPoint getGlobalPointDigi(unsigned int rawId, const GEMDigi &d) const
int nPads() const
How many pads in GEM did this simtrack get in total?
std::set< unsigned int > superChamberIdsDigi(int gem_type=MuonHitHelper::GEM_ALL) const
edm::ESGetToken< GEMGeometry, MuonGeometryRecord > geomToken_
std::set< unsigned int > superChamberIdsCluster(int gem_type=MuonHitHelper::GEM_ALL) const
std::map< unsigned int, GEMCoPadDigiContainer > superchamber_to_copads_
const GEMPadDigiContainer & padsInSuperChamber(unsigned int) const
std::vector< GEMDigiSimLink > GEMDigiSimLinkContainer
const GEMPadDigiClusterContainer & clustersInDetId(unsigned int) const
GEMDigiContainer no_gem_digis_
std::map< unsigned int, GEMDigiContainer > superchamber_to_digis_
const GEMPadDigiContainer & padsInDetId(unsigned int) const