19 desc.add<
int>(
"bxMin", -10);
20 desc.add<
int>(
"bxMax", 10);
21 descriptions.
add(
"GEMDigiSource",
desc);
34 float radS = -5.0 / 180 *
M_PI;
35 float radL = 355.0 / 180 *
M_PI;
37 mapTotalDigi_layer_ =
MEMap3Inf(
this,
"occ",
"Digi Occupancy", 36, 0.5, 36.5, 24, -0.5, 24 - 0.5,
"Chamber",
"VFAT");
39 this,
"occ_rphi",
"Digi R-Phi Occupancy", 360, radS, radL, 8,
fRadiusMin_,
fRadiusMax_,
"#phi (rad)",
"R [cm]");
42 MEMap3Inf(
this,
"occ_phi",
"Digi Phi Occupancy", 72, -5, 355,
"#phi (degree)",
"Number of fired digis");
45 "Total number of digis per event for each layers",
49 "Number of fired digis",
54 "Total number of digis per event for each eta partitions",
58 "Number of fired digis",
64 mapDigiOccPerCh_ =
MEMap4Inf(
this,
"occ",
"Digi Occupancy", 1, -0.5, 1.5, 1, 0.5, 1.5,
"Digi",
"iEta");
155 event.getByToken(this->
tagDigi_, gemDigis);
159 std::map<ME3IdsKey, Int_t> total_digi_layer;
160 std::map<ME3IdsKey, Int_t> total_digi_eta;
166 std::map<Int_t, bool> bTagVFAT;
170 if (total_digi_layer.find(key3) == total_digi_layer.end())
171 total_digi_layer[key3] = 0;
172 for (
auto iEta : ch.etaPartitions()) {
175 if (total_digi_eta.find(key3IEta) == total_digi_eta.end())
176 total_digi_eta[key3IEta] = 0;
177 const auto& digis_in_det = gemDigis->get(eId);
178 for (
auto d = digis_in_det.first;
d != digis_in_det.second; ++
d) {
186 GlobalPoint digi_global_pos = surface.toGlobal(
iEta->centreOfStrip(
d->strip()));
187 Float_t fPhi = (Float_t)digi_global_pos.
phi();
189 Float_t fPhiDeg = fPhiShift * 180.0 /
M_PI;
199 total_digi_layer[key3]++;
200 total_digi_eta[key3IEta]++;
204 if (bTagVFAT.find(nIdxVFAT) == bTagVFAT.end()) {
208 bTagVFAT[nIdxVFAT] =
true;
212 for (
auto [
key, num_total_digi] : total_digi_layer)
214 for (
auto [
key, num_total_digi] : total_digi_eta)
int ProcessWithMEMap2WithEta(BookingHelper &bh, ME3IdsKey key) override
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
constexpr int station() const
MEMapInfT< MEMap4Ids, ME4IdsKey > MEMap4Inf
constexpr int region() const
MEMap3Inf mapTotalDigiPerEvtLayer_
virtual void setCurrentFolder(std::string const &fullpath)
int getVFATNumberByDigi(const int, const int, const int)
MEMapInfT< MEMap3Ids, ME3IdsKey > MEMap3Inf
int ProcessWithMEMap2(BookingHelper &bh, ME2IdsKey key) override
#define DEFINE_FWK_MODULE(type)
int SetLabelForChambers(K key, Int_t nAxis, Int_t nNumBin=-1)
Geom::Phi< T > phi() const
int initGeometry(edm::EventSetup const &iSetup)
std::tuple< Int_t, Int_t, Int_t, Int_t > ME4IdsKey
const GeomDet * idToDet(DetId) const override
MEMap3Inf mapDigiOcc_ieta_
MEMap4Inf mapDigiOccPerCh_
MEMap3Inf mapDigiOcc_phi_
int SetLabelForVFATs(K key, Int_t nNumEtaPartitions, Int_t nAxis, Int_t nNumBin=-1)
std::map< ME3IdsKey, MEStationInfo > mapStationInfo_
edm::EDGetTokenT< LumiScalersCollection > lumiScalers_
void SetBinHighEdgeX(Double_t dXH)
std::string strFolderMain_
constexpr int layer() const
int Fill(K key, Double_t x)
MEMap3Inf mapTotalDigiPerEvtIEta_
constexpr int chamber() const
MEMap3Inf mapTotalDigi_layer_
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
void SetBinLowEdgeX(Double_t dXL)
int GenerateMEPerChamber(DQMStore::IBooker &ibooker)
Float_t restrictAngle(const Float_t fTheta, const Float_t fStart)
std::vector< GEMChamber > gemChambers_
MEMapInfT< MEMap2Ids, ME2IdsKey > MEMap2Inf
void SetNbinsY(Int_t nBinsY)
GEMDigiSource(const edm::ParameterSet &cfg)
constexpr int ieta() const
const GEMGeometry * GEMGeometry_
int ProcessWithMEMap3WithChamber(BookingHelper &bh, ME4IdsKey key) override
const Plane & surface() const
The nominal surface of the GeomDet.
void analyze(edm::Event const &e, edm::EventSetup const &eSetup) override
void SetNoUnderOverflowBin()
int SetLabelForIEta(K key, Int_t nAxis, Int_t nNumBin=-1)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
DQMStore::IBooker * getBooker()
std::string getNameDirLayer(ME3IdsKey key3)
int bookND(BookingHelper &bh, K key)
ME3IdsKey key4Tokey3(ME4IdsKey key)
void SetNbinsX(Int_t nBinsX)
std::tuple< Int_t, Int_t > ME2IdsKey
std::tuple< Int_t, Int_t, Int_t > ME3IdsKey
void SetBinConfX(Int_t nBins, Double_t dL=0.5, Double_t dH=-1048576.0)
void SetBinConfY(Int_t nBins, Double_t dL=0.5, Double_t dH=-1048576.0)
MEMap3Inf mapDigiWheel_layer_
int ProcessWithMEMap3(BookingHelper &bh, ME3IdsKey key) override