CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
GEMCoPadDigiValidation Class Reference

#include <GEMCoPadDigiValidation.h>

Inheritance diagram for GEMCoPadDigiValidation:
GEMBaseValidation DQMEDAnalyzer edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
 GEMCoPadDigiValidation (const edm::ParameterSet &)
 
 ~GEMCoPadDigiValidation () override
 
- Public Member Functions inherited from GEMBaseValidation
 GEMBaseValidation (const edm::ParameterSet &, std::string)
 
 ~GEMBaseValidation () override=0
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &event, edm::EventSetup const &setup) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
void beginStream (edm::StreamID id) final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer ()
 
void endLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Private Attributes

edm::EDGetTokenT< GEMCoPadDigiCollectioncopad_token_
 
int gem_bx_max_
 
int gem_bx_min_
 
MEMap2Ids me_detail_bx_
 
MEMap2Ids me_detail_occ_pad_
 
MEMap2Ids me_detail_occ_phi_pad_
 
MEMap2Ids me_detail_occ_xy_
 
MEMap2Ids me_occ_det_
 
MEMap1Ids me_occ_zr_
 

Additional Inherited Members

- Public Types inherited from DQMEDAnalyzer
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static void globalEndJob (DQMEDAnalyzerGlobalCache const *)
 
static void globalEndLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup, LuminosityBlockContext const *context)
 
static void globalEndRunProduce (edm::Run &run, edm::EventSetup const &setup, RunContext const *context)
 
static std::unique_ptr< DQMEDAnalyzerGlobalCacheinitializeGlobalCache (edm::ParameterSet const &)
 
- Protected Member Functions inherited from GEMBaseValidation
template<typename T >
dqm::impl::MonitorElementbookDetectorOccupancy (DQMStore::IBooker &booker, const T &key, const GEMStation *station, const char *name_prfix, const char *title_prefix)
 
template<typename T >
dqm::impl::MonitorElementbookHist1D (DQMStore::IBooker &booker, const T &key, const char *name, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup, const char *x_title="", const char *y_title="Entries")
 
template<typename T >
dqm::impl::MonitorElementbookHist2D (DQMStore::IBooker &booker, const T &key, const char *name, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup, Int_t nbinsy, Double_t ylow, Double_t yup, const char *x_title="", const char *y_title="")
 
template<typename T >
dqm::impl::MonitorElementbookPolarOccupancy (DQMStore::IBooker &booker, const T &key, const char *name_prefix, const char *title_prefix)
 
template<typename T >
dqm::impl::MonitorElementbookXYOccupancy (DQMStore::IBooker &booker, const T &key, const char *name_prefix, const char *title_prefix)
 
template<typename T >
dqm::impl::MonitorElementbookZROccupancy (DQMStore::IBooker &booker, const T &key, const char *name_prfix, const char *title_prefix)
 
dqm::impl::MonitorElementbookZROccupancy (DQMStore::IBooker &booker, Int_t region_id, const char *name_prfix, const char *title_prefix)
 
Int_t getDetOccBinX (Int_t chamber_id, Int_t layer_id)
 
const GEMGeometryinitGeometry (const edm::EventSetup &)
 
Bool_t isMuonSimHit (const PSimHit &)
 
- Protected Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 
- Protected Attributes inherited from GEMBaseValidation
Bool_t detail_plot_
 
std::vector< Double_t > eta_range_
 
const std::string kLogCategory_
 
const Int_t kMuonPDGId_ = 13
 
Int_t xy_occ_num_bins_
 
std::vector< Int_t > zr_occ_num_bins_
 
std::vector< Double_t > zr_occ_range_
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Definition at line 7 of file GEMCoPadDigiValidation.h.

Constructor & Destructor Documentation

◆ GEMCoPadDigiValidation()

GEMCoPadDigiValidation::GEMCoPadDigiValidation ( const edm::ParameterSet pset)
explicit

Definition at line 3 of file GEMCoPadDigiValidation.cc.

4  : GEMBaseValidation(pset, "GEMCoPadDigiValidation") {
5  const auto& copad_pset = pset.getParameterSet("gemCoPadDigi");
6 
7  const auto& copad_tag = copad_pset.getParameter<edm::InputTag>("inputTag");
8  copad_token_ = consumes<GEMCoPadDigiCollection>(copad_tag);
9 
10  gem_bx_min_ = copad_pset.getParameter<int>("minBX");
11  gem_bx_max_ = copad_pset.getParameter<int>("maxBX");
12 }

References copad_token_, gem_bx_max_, gem_bx_min_, and muonDTDigis_cfi::pset.

◆ ~GEMCoPadDigiValidation()

GEMCoPadDigiValidation::~GEMCoPadDigiValidation ( )
override

Definition at line 92 of file GEMCoPadDigiValidation.cc.

92 {}

Member Function Documentation

◆ analyze()

void GEMCoPadDigiValidation::analyze ( const edm::Event event,
const edm::EventSetup setup 
)
overridevirtual

Implements GEMBaseValidation.

Definition at line 94 of file GEMCoPadDigiValidation.cc.

94  {
96 
97  edm::Handle<GEMCoPadDigiCollection> copad_collection;
98  event.getByToken(copad_token_, copad_collection);
99  if (not copad_collection.isValid()) {
100  edm::LogError(kLogCategory_) << "Cannot get pads by token." << std::endl;
101  return;
102  }
103 
104  // GEMCoPadDigiCollection::DigiRangeIterator
105  for (auto range_iter = copad_collection->begin(); range_iter != copad_collection->end(); range_iter++) {
106  GEMDetId gemid = (*range_iter).first;
107  const GEMCoPadDigiCollection::Range& range = (*range_iter).second;
108 
109  Int_t region_id = gemid.region();
110  Int_t station_id = gemid.station();
111  Int_t ring_id = gemid.ring();
112  Int_t layer_id = gemid.layer();
113  Int_t chamber_id = gemid.chamber();
114 
115  ME2IdsKey key2{region_id, station_id};
116 
117  for (auto digi = range.first; digi != range.second; ++digi) {
118  // GEM copads are stored per super chamber!
119  // layer_id = 0, roll_id = 0
120  GEMDetId super_chamber_id{region_id, ring_id, station_id, 0, chamber_id, 0};
121  Int_t roll_id = (*digi).roll();
122 
123  const GeomDet* geom_det = gem->idToDet(super_chamber_id);
124  if (geom_det == nullptr) {
125  edm::LogError(kLogCategory_) << super_chamber_id << " : This detId cannot be "
126  << "loaded from GEMGeometry // Original" << gemid << " station : " << station_id
127  << std::endl
128  << "Getting DetId failed. Discard this gem copad hit." << std::endl;
129  continue;
130  }
131 
132  const BoundPlane& surface = geom_det->surface();
133  const GEMSuperChamber* super_chamber = gem->superChamber(super_chamber_id);
134  if (super_chamber == nullptr) {
135  edm::LogError(kLogCategory_) << "Super chamber is null for super chamber ID = " << super_chamber_id;
136  continue;
137  }
138  Int_t pad1 = digi->pad(1);
139  Int_t pad2 = digi->pad(2);
140  Int_t bx1 = digi->bx(1);
141  Int_t bx2 = digi->bx(2);
142 
143  // Filtered using BX
144  if (bx1 < gem_bx_min_ or bx1 > gem_bx_max_)
145  continue;
146  if (bx2 < gem_bx_min_ or bx2 > gem_bx_max_)
147  continue;
148 
149  const Int_t padArray[] = {pad1, pad2};
150  LocalPoint lpArray[2];
151  int ptCounter = 0;
152  for (; ptCounter < 2; ++ptCounter) {
153  const GEMChamber* const chamber = super_chamber->chamber(ptCounter + 1); // Fetch chambers 1 and 2
154  if (chamber == nullptr) {
155  edm::LogError(kLogCategory_) << "Chamber " << (ptCounter + 1)
156  << " is null for super chamber = " << super_chamber_id;
157  break;
158  }
159  const GEMEtaPartition* const etaPartition = chamber->etaPartition(roll_id);
160  if (etaPartition == nullptr) {
161  edm::LogError(kLogCategory_) << "Eta partition " << roll_id << " is null for chamber, super chamber = ("
162  << (ptCounter + 1) << ", " << super_chamber_id << ")";
163  break;
164  }
165  lpArray[ptCounter] = etaPartition->centreOfPad(padArray[ptCounter]);
166  } // end for
167  if (ptCounter < 2) { // Broke out of "for" loop
168  edm::LogError(kLogCategory_) << "Skipping a digi due to bad chamber " << (ptCounter + 1);
169  continue;
170  }
171  const GlobalPoint& gp1 = surface.toGlobal(lpArray[0]);
172  const GlobalPoint& gp2 = surface.toGlobal(lpArray[1]);
173 
174  Float_t g_r1 = gp1.perp();
175  Float_t g_r2 = gp2.perp();
176 
177  Float_t g_z1 = gp1.z();
178  Float_t g_z2 = gp2.z();
179 
180  Float_t g_phi = gp1.phi();
181  Float_t g_x = gp1.x();
182  Float_t g_y = gp1.y();
183 
184  // Fill normal plots.
185  me_occ_zr_[region_id]->Fill(std::fabs(g_z1), g_r1);
186  me_occ_zr_[region_id]->Fill(std::fabs(g_z2), g_r2);
187 
188  Int_t bin_x = getDetOccBinX(chamber_id, layer_id);
189  me_occ_det_[key2]->Fill(bin_x, roll_id);
190  me_occ_det_[key2]->Fill(bin_x + 1, roll_id);
191 
192  // Fill detail plots.
193  if (detail_plot_) {
194  me_detail_occ_xy_[key2]->Fill(g_x, g_y);
195  me_detail_occ_phi_pad_[key2]->Fill(g_phi, pad1);
196  me_detail_occ_pad_[key2]->Fill(pad1);
197  me_detail_bx_[key2]->Fill(bx1);
198  me_detail_bx_[key2]->Fill(bx2);
199  } // detail_plot_
200  } // loop over digis
201  } // loop over range iters
202 }

References GEMEtaPartition::centreOfPad(), GEMSuperChamber::chamber(), relativeConstraints::chamber, GEMDetId::chamber(), copad_token_, GEMBaseValidation::detail_plot_, gem_bx_max_, GEMBaseValidation::getDetOccBinX(), GEMBaseValidation::initGeometry(), edm::HandleBase::isValid(), GEMBaseValidation::kLogCategory_, GEMDetId::layer(), me_detail_bx_, me_detail_occ_pad_, me_detail_occ_phi_pad_, me_detail_occ_xy_, me_occ_det_, me_occ_zr_, PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), FastTimerService_cff::range, GEMDetId::region(), GEMDetId::ring(), alignCSCRings::ring_id, singleTopDQM_cfi::setup, GEMDetId::station(), GeomDet::surface(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

◆ bookHistograms()

void GEMCoPadDigiValidation::bookHistograms ( DQMStore::IBooker booker,
edm::Run const &  run,
edm::EventSetup const &  setup 
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 14 of file GEMCoPadDigiValidation.cc.

16  {
18 
19  // NOTE Occupancy
20  booker.setCurrentFolder("MuonGEMDigisV/GEMDigisTask/CoPad/Occupancy");
21 
22  for (const auto& region : gem->regions()) {
23  Int_t region_id = region->region();
24 
25  me_occ_zr_[region_id] = bookZROccupancy(booker, region_id, "copad", "CoPad");
26 
27  for (const auto& station : region->stations()) {
28  Int_t station_id = station->station();
29  const auto& superChamberVec = station->superChambers();
30  if (superChamberVec.empty() || superChamberVec[0] == nullptr) {
31  edm::LogError(kLogCategory_) << "Super chambers missing or null for region = " << region_id
32  << " and station = " << station_id;
33  continue;
34  }
35  const auto& chamberVec = superChamberVec[0]->chambers();
36  if (chamberVec.empty() || chamberVec[0] == nullptr) {
37  edm::LogError(kLogCategory_) << "Chambers missing or null for region, station, super chamber = (" << region_id
38  << ", " << station_id << ", " << superChamberVec[0]->id() << ")";
39  continue;
40  }
41  const auto& etaPartitionVec = chamberVec[0]->etaPartitions();
42  if (etaPartitionVec.empty() || etaPartitionVec[0] == nullptr) {
43  edm::LogError(kLogCategory_) << "Eta partition missing or null for region, station, super chamber, chamber = ("
44  << region_id << ", " << station_id << ", " << superChamberVec[0]->id() << ", "
45  << chamberVec[0]->id() << ")";
46  continue;
47  }
48  Int_t num_pads = etaPartitionVec[0]->npads();
49  ME2IdsKey key2{region_id, station_id};
50 
51  me_occ_det_[key2] = bookDetectorOccupancy(booker, key2, station, "copad", "CoPad");
52 
53  if (detail_plot_) {
54  me_detail_occ_xy_[key2] = bookXYOccupancy(booker, key2, "copad", "CoPad");
55 
56  me_detail_occ_phi_pad_[key2] = bookHist2D(booker,
57  key2,
58  "copad_occ_phi_pad",
59  "CoPad Occupancy",
60  280,
61  -M_PI,
62  M_PI,
63  num_pads / 2,
64  0,
65  num_pads,
66  "#phi [rad]",
67  "Pad number");
68 
70  booker, key2, "copad_occ_pad", "CoPad Ocupancy per pad number", num_pads, 0.5, num_pads + 0.5, "Pad number");
71  }
72  } // station loop
73  } // region loop
74 
75  // NOTE Bunch Crossing
76  if (detail_plot_) {
77  booker.setCurrentFolder("MuonGEMDigisV/GEMDigisTask/CoPad/BunchCrossing");
78 
79  for (const auto& region : gem->regions()) {
80  Int_t region_id = region->region();
81  for (const auto& station : region->stations()) {
82  Int_t station_id = station->station();
83  ME2IdsKey key2{region_id, station_id};
84 
85  me_detail_bx_[key2] =
86  bookHist1D(booker, key2, "copad_bx", "CoPad Bunch Crossing", 5, -2.5, 2.5, "Bunch crossing");
87  } // station loop
88  } // region loop
89  } // detail plot
90 }

References GEMBaseValidation::bookDetectorOccupancy(), GEMBaseValidation::bookHist1D(), GEMBaseValidation::bookHist2D(), GEMBaseValidation::bookXYOccupancy(), GEMBaseValidation::bookZROccupancy(), GEMBaseValidation::detail_plot_, GEMBaseValidation::initGeometry(), GEMBaseValidation::kLogCategory_, M_PI, me_detail_bx_, me_detail_occ_pad_, me_detail_occ_phi_pad_, me_detail_occ_xy_, me_occ_det_, me_occ_zr_, HLT_2018_cff::region, dqm::implementation::NavigatorBase::setCurrentFolder(), singleTopDQM_cfi::setup, and relativeConstraints::station.

Member Data Documentation

◆ copad_token_

edm::EDGetTokenT<GEMCoPadDigiCollection> GEMCoPadDigiValidation::copad_token_
private

Definition at line 25 of file GEMCoPadDigiValidation.h.

Referenced by analyze(), and GEMCoPadDigiValidation().

◆ gem_bx_max_

int GEMCoPadDigiValidation::gem_bx_max_
private

Definition at line 28 of file GEMCoPadDigiValidation.h.

Referenced by analyze(), and GEMCoPadDigiValidation().

◆ gem_bx_min_

int GEMCoPadDigiValidation::gem_bx_min_
private

Definition at line 28 of file GEMCoPadDigiValidation.h.

Referenced by GEMCoPadDigiValidation().

◆ me_detail_bx_

MEMap2Ids GEMCoPadDigiValidation::me_detail_bx_
private

Definition at line 22 of file GEMCoPadDigiValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me_detail_occ_pad_

MEMap2Ids GEMCoPadDigiValidation::me_detail_occ_pad_
private

Definition at line 20 of file GEMCoPadDigiValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me_detail_occ_phi_pad_

MEMap2Ids GEMCoPadDigiValidation::me_detail_occ_phi_pad_
private

Definition at line 19 of file GEMCoPadDigiValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me_detail_occ_xy_

MEMap2Ids GEMCoPadDigiValidation::me_detail_occ_xy_
private

Definition at line 18 of file GEMCoPadDigiValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me_occ_det_

MEMap2Ids GEMCoPadDigiValidation::me_occ_det_
private

Definition at line 17 of file GEMCoPadDigiValidation.h.

Referenced by analyze(), and bookHistograms().

◆ me_occ_zr_

MEMap1Ids GEMCoPadDigiValidation::me_occ_zr_
private

Definition at line 16 of file GEMCoPadDigiValidation.h.

Referenced by analyze(), and bookHistograms().

ME2IdsKey
std::tuple< Int_t, Int_t > ME2IdsKey
Definition: GEMValidationUtils.h:16
FastTimerService_cff.range
range
Definition: FastTimerService_cff.py:34
GEMBaseValidation::bookHist1D
dqm::impl::MonitorElement * bookHist1D(DQMStore::IBooker &booker, const T &key, const char *name, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup, const char *x_title="", const char *y_title="Entries")
Definition: GEMBaseValidation.h:210
GEMDetId::ring
constexpr int ring() const
Definition: GEMDetId.h:170
GeomDet
Definition: GeomDet.h:27
GEMBaseValidation::detail_plot_
Bool_t detail_plot_
Definition: GEMBaseValidation.h:90
GEMSuperChamber
Definition: GEMSuperChamber.h:19
GEMCoPadDigiValidation::me_detail_occ_phi_pad_
MEMap2Ids me_detail_occ_phi_pad_
Definition: GEMCoPadDigiValidation.h:19
GEMDetId::layer
constexpr int layer() const
Definition: GEMDetId.h:184
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
GEMDetId::region
constexpr int region() const
Definition: GEMDetId.h:165
GEMBaseValidation::bookDetectorOccupancy
dqm::impl::MonitorElement * bookDetectorOccupancy(DQMStore::IBooker &booker, const T &key, const GEMStation *station, const char *name_prfix, const char *title_prefix)
Definition: GEMBaseValidation.h:161
relativeConstraints.station
station
Definition: relativeConstraints.py:67
GEMEtaPartition
Definition: GEMEtaPartition.h:12
GEMSuperChamber::chamber
const GEMChamber * chamber(GEMDetId id) const
Return the chamber corresponding to the given id.
Definition: GEMSuperChamber.cc:27
GEMCoPadDigiValidation::gem_bx_min_
int gem_bx_min_
Definition: GEMCoPadDigiValidation.h:28
GEMCoPadDigiValidation::gem_bx_max_
int gem_bx_max_
Definition: GEMCoPadDigiValidation.h:28
edm::Handle< GEMCoPadDigiCollection >
GEMCoPadDigiValidation::me_occ_zr_
MEMap1Ids me_occ_zr_
Definition: GEMCoPadDigiValidation.h:16
GEMCoPadDigiValidation::copad_token_
edm::EDGetTokenT< GEMCoPadDigiCollection > copad_token_
Definition: GEMCoPadDigiValidation.h:25
singleTopDQM_cfi.setup
setup
Definition: singleTopDQM_cfi.py:37
PV3DBase::z
T z() const
Definition: PV3DBase.h:61
GEMBaseValidation::bookZROccupancy
dqm::impl::MonitorElement * bookZROccupancy(DQMStore::IBooker &booker, Int_t region_id, const char *name_prfix, const char *title_prefix)
Definition: GEMBaseValidation.cc:34
GeomDet::surface
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
alignCSCRings.ring_id
string ring_id
Definition: alignCSCRings.py:79
GEMBaseValidation::initGeometry
const GEMGeometry * initGeometry(const edm::EventSetup &)
Definition: GEMBaseValidation.cc:23
GEMCoPadDigiValidation::me_detail_occ_xy_
MEMap2Ids me_detail_occ_xy_
Definition: GEMCoPadDigiValidation.h:18
GEMBaseValidation::bookXYOccupancy
dqm::impl::MonitorElement * bookXYOccupancy(DQMStore::IBooker &booker, const T &key, const char *name_prefix, const char *title_prefix)
Definition: GEMBaseValidation.h:134
Point3DBase< float, LocalTag >
GEMCoPadDigiValidation::me_occ_det_
MEMap2Ids me_occ_det_
Definition: GEMCoPadDigiValidation.h:17
GEMCoPadDigiValidation::me_detail_bx_
MEMap2Ids me_detail_bx_
Definition: GEMCoPadDigiValidation.h:22
GEMBaseValidation::bookHist2D
dqm::impl::MonitorElement * bookHist2D(DQMStore::IBooker &booker, const T &key, const char *name, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup, Int_t nbinsy, Double_t ylow, Double_t yup, const char *x_title="", const char *y_title="")
Definition: GEMBaseValidation.h:227
GEMDetId::chamber
constexpr int chamber() const
Definition: GEMDetId.h:177
edm::LogError
Definition: MessageLogger.h:183
GEMBaseValidation::GEMBaseValidation
GEMBaseValidation(const edm::ParameterSet &, std::string)
Definition: GEMBaseValidation.cc:10
GEMDetId
Definition: GEMDetId.h:17
PV3DBase::y
T y() const
Definition: PV3DBase.h:60
M_PI
#define M_PI
Definition: BXVectorInputProducer.cc:50
gem
Definition: AMC13Event.h:6
GEMEtaPartition::centreOfPad
LocalPoint centreOfPad(int pad) const
Definition: GEMEtaPartition.cc:45
GEMChamber
Definition: GEMChamber.h:19
BoundPlane
HLT_2018_cff.region
region
Definition: HLT_2018_cff.py:81479
relativeConstraints.chamber
chamber
Definition: relativeConstraints.py:53
MuonDigiCollection::Range
std::pair< const_iterator, const_iterator > Range
Definition: MuonDigiCollection.h:95
GEMDetId::station
constexpr int station() const
Definition: GEMDetId.h:173
GEMGeometry
Definition: GEMGeometry.h:24
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
PV3DBase::perp
T perp() const
Definition: PV3DBase.h:69
edm::InputTag
Definition: InputTag.h:15
PV3DBase::phi
Geom::Phi< T > phi() const
Definition: PV3DBase.h:66
GEMCoPadDigiValidation::me_detail_occ_pad_
MEMap2Ids me_detail_occ_pad_
Definition: GEMCoPadDigiValidation.h:20
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
GEMBaseValidation::getDetOccBinX
Int_t getDetOccBinX(Int_t chamber_id, Int_t layer_id)
Definition: GEMBaseValidation.cc:30
GEMBaseValidation::kLogCategory_
const std::string kLogCategory_
Definition: GEMBaseValidation.h:94