27 "thresh_EtMsmRate_high", 0.2);
29 "thresh_EtMsmRate_low", 0.05);
31 "thresh_FGMsmRate", 0.2);
33 "thresh_FGMsmRate_low", 0.05);
60 std::vector<uint32_t> vVME;
61 std::vector<uint32_t> vuTCA;
62 std::vector<uint32_t> depth0;
276 "OccupancyCutDatavsLS",
285 "OccupancyCutDatavsBX",
294 "OccupancyCutEmulvsLS",
303 "OccupancyCutEmulvsBX",
331 for (std::vector<int>::const_iterator it=vFEDsVME.begin();
332 it!=vFEDsVME.end(); ++it)
337 for (std::vector<int>::const_iterator it=vFEDsuTCA.begin();
338 it!=vFEDsuTCA.end(); ++it)
485 sprintf(aux,
"BIT%d", iii);
604 DQTask::_resetMonitors(uf);
623 _logger.
dqmthrow(
"Collection HcalTrigPrimDigiCollection isn't available: " 627 _logger.
dqmthrow(
"Collection HcalTrigPrimDigiCollection isn't available: " 631 _logger.
dqmthrow(
"Collection HcalTrigPrimDigiCollection isn't available: " 635 _logger.
dqmthrow(
"Collection HcalTrigPrimDigiCollection isn't available: " 644 int numHBHE(0), numHF(0), numCutHBHE(0), numCutHF(0);
645 int numCorrHBHE(0), numCorrHF(0);
646 int numMsmHBHE(0), numMsmHF(0);
647 int numMsnHBHE(0), numMsnHF(0), numMsnCutHBHE(0), numMsnCutHF(0);
650 uint32_t rawidHBHEValid = 0;
651 uint32_t rawidHFValid = 0;
663 it!=cdata->
end(); ++it)
675 rawidHFValid = tid.
rawId();
677 rawidHBHEValid = tid.
rawId();
689 if (jt!=cemul->
end())
691 jt->SOI_compressedEt());
699 int soiEt_d = it->t0().compressedEt();
702 soiFG_d[ibit] = it->t0().fineGrain(ibit)?1:0;
703 tid.
ietaAbs()>=29?numHF++:numHBHE++;
734 tid.
ietaAbs()>=29?numCutHF++:numCutHBHE++;
756 if (jt!=cemul->
end())
759 int soiEt_e = jt->SOI_compressedEt();
762 soiFG_e[ibit] = jt->t0().fineGrain(ibit)?1:0;
764 double rEt = soiEt_d==0 && soiEt_e==0?1:
772 tid.
ietaAbs()>=29?numCorrHF++:numCorrHBHE++;
796 if (soiEt_d!=soiEt_e)
798 tid.
ietaAbs()>=29?numMsmHF++:numMsmHBHE++;
831 tid.
ietaAbs()>=29?numMsnHF++:numMsnHBHE++;
841 tid.
ietaAbs()>=29?numMsnCutHF++:numMsnCutHBHE++;
860 int soiEt_e = it->SOI_compressedEt();
870 if (rawidHFValid!=0 && rawidHBHEValid!=0)
903 double(numMsmHBHE)/
double(numCorrHBHE));
906 double(numMsmHF)/
double(numCorrHF));
908 double(numMsmHBHE)/
double(numCorrHBHE));
910 double(numMsmHF)/
double(numCorrHF));
932 numHBHE=0; numHF=0; numCutHBHE=0; numCutHF=0;
933 numMsnHBHE=0; numMsnHF=0; numCutHBHE=0; numCutHF=0;
948 it!=cemul->
end(); ++it)
957 rawidHFValid = tid.
rawId();
959 rawidHBHEValid = tid.
rawId();
969 int soiEt = it->SOI_compressedEt();
972 tid.
ietaAbs()>=29?numHF++:numHBHE++;
992 tid.
ietaAbs()>=29?numCutHF++:numCutHBHE++;
1014 if(!(it->zsMarkAndPass())) {
1016 if (jt==cdata->
end())
1018 tid.
ietaAbs()>=29?numMsnHF++:numMsnHBHE++;
1029 tid.
ietaAbs()>=29?numMsnCutHF++:numMsnCutHBHE++;
1039 if (rawidHBHEValid != 0) {
1058 if (rawidHFValid!=0) {
1085 cdataL1Rec->
begin(), cdataL1Rec->
end(),
1091 const auto& sentTp = tpPair.first;
1092 const auto& recdTp = tpPair.second;
1093 const int ieta = sentTp.id().ieta();
1094 if (
abs(ieta) > 28 && sentTp.id().version() != 1 )
continue;
1096 const bool towerMasked = recdTp.sample(0).raw() & (1<<13);
1098 const bool linkError = recdTp.sample(0).raw() & (1<<15);
1100 if ( towerMasked || linkError ) {
1104 const bool HetAgreement = sentTp.SOI_compressedEt() == recdTp.SOI_compressedEt();
1105 const bool Hfb1Agreement = sentTp.SOI_fineGrain() == recdTp.SOI_fineGrain();
1107 const bool Hfb2Agreement = (
abs(ieta) < 29 ) ?
true : (recdTp.SOI_compressedEt()==0 || (sentTp.SOI_fineGrain(1) == recdTp.SOI_fineGrain(1)));
1108 if (!(HetAgreement && Hfb1Agreement && Hfb2Agreement)) {
1127 DQTask::beginLuminosityBlock(lb, es);
1139 for (std::vector<uint32_t>::const_iterator it=
_vhashFEDs.begin();
1145 std::vector<uint32_t>::const_iterator cit=
std::find(
1150 for (uint32_t iflag=0; iflag<
_vflags.size(); iflag++)
1206 for (std::vector<flag::Flag>::iterator ft=
_vflags.begin();
1227 DQTask::endLuminosityBlock(lb, es);
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, int debug=0) override
hcaldqm::ContainerProf1D _cEtCorrRatiovsBX_TTSubdet
constexpr uint32_t rawId() const
hcaldqm::ContainerXXX< uint32_t > _xDataTotal
T getUntrackedParameter(std::string const &, T const &) const
hcaldqm::ContainerProf1D _cMsnCutEmulvsBX_TTSubdet
hcaldqm::Container2D _cMsnData_ElectronicsVME
hcaldqm::Container1D _cEtEmul_TTSubdet
virtual void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *qy=new quantity::ValueQuantity(quantity::fN), int debug=0)
hcaldqm::ContainerSingleProf2D _cEtData_depthlike
hcaldqm::ContainerProf1D _cMsnDatavsBX_TTSubdet
double _thresh_FGMsmRate_high
hcaldqm::ContainerSingle2D _cOccupancyCutEmul_depthlike
hcaldqm::ContainerProf1D _cMsnDatavsLS_TTSubdet
virtual void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="")
edm::InputTag _tagDataL1Rec
void fill(HcalDetId const &) override
std::pair< uint16_t, uint16_t > fed2crate(int fed)
std::vector< uint32_t > _vhashFEDs
hcaldqm::ContainerProf1D _cEtMsmvsLS_TTSubdet
hcaldqm::Container2D _cOccupancyData_ElectronicsVME
bool getByToken(EDGetToken token, Handle< PROD > &result) const
void initialize(HcalElectronicsMap const *, ElectronicsMapType etype=fHcalElectronicsMap)
hcaldqm::ContainerProf1D _cEtCutEmulvsLS_TTSubdet
hcaldqm::electronicsmap::ElectronicsMap _ehashmap
void fill(int, int) override
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokData
#define DEFINE_FWK_MODULE(type)
std::vector< std::pair< HcalTriggerPrimitiveDigi, HcalTriggerPrimitiveDigi > > _vTPDigis_SentRec
MonitorElement * meUnknownIds1LS
constexpr uint32_t rawId() const
get the raw id
std::vector< HcalTriggerPrimitiveDigi >::const_iterator const_iterator
hcaldqm::ContainerSingleProf2D _cEtCorrRatio_depthlike
hcaldqm::ContainerProf1D _cMsnCutDatavsBX_TTSubdet
int bunchCrossing() const
virtual void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0)
virtual example_stream void bookHistograms(DQMStore::IBooker &,@example_stream edm::Run const &,@example_stream edm::EventSetup const &) override
hcaldqm::ContainerProf1D _cMsnCutDatavsLS_TTSubdet
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
hcaldqm::ContainerSingle2D _cOccupancyCutData_depthlike
double _thresh_FGMsmRate_low
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
hcaldqm::ContainerProf1D _cOccupancyDatavsLS_TTSubdet
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokEmulNoTDCCut
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokDataL1Rec
hcaldqm::Container2D _cOccupancyEmul_ElectronicsVME
hcaldqm::ContainerProf1D _cEtMsmRatiovsLS_TTSubdet
hcaldqm::ContainerSingle2D _cOccupancyEmul2x3_depthlike
hcaldqm::ContainerProf1D _cMsnEmulvsBX_TTSubdet
double _thresh_EtMsmRate_low
virtual void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="")
hcaldqm::ContainerProf2D _cEtCorrRatio_ElectronicsuTCA
std::vector< int > getFEDVMEList(HcalElectronicsMap const *)
hcaldqm::Container2D _cFGCorr_TTSubdet[hcaldqm::constants::NUM_FGBITS]
hcaldqm::ContainerXXX< uint32_t > _xDataMsn
uint32_t lookup(DetId const &)
hcaldqm::filter::HashFilter _filter_uTCA
hcaldqm::Container2D _cSummaryvsLS_FED
virtual void fill(uint32_t)
edm::InputTag _tagEmulNoTDCCut
hcaldqm::Container2D _cOccupancyCutData_ElectronicsVME
std::vector< hcaldqm::flag::Flag > _vflags
hcaldqm::ContainerSingle1D _cEtMsm_uHTR_L1T_LS
virtual void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *qy=new quantity::ValueQuantity(quantity::fN), int debug=0)
void setLumiFlag()
this ME is meant to be stored for each luminosity section
void setCurrentFolder(std::string const &fullpath)
virtual void setBinContent(int, int, int)
hcaldqm::ContainerXXX< uint32_t > _xEmulMsn
void _resetMonitors(hcaldqm::UpdateFreq) override
constexpr bool isVMEid() const
void dqmthrow(std::string const &msg) const
hcaldqm::ContainerProf2D _cEtData_ElectronicsVME
hcaldqm::ContainerProf1D _cEtMsmvsBX_TTSubdet
OutputIterator zip(InputIterator1 first1, InputIterator1 last1, InputIterator2 first2, InputIterator2 last2, OutputIterator result, Compare comp)
TPTask(edm::ParameterSet const &)
hcaldqm::ContainerProf1D _cOccupancyDatavsBX_TTSubdet
hcaldqm::ContainerProf2D _cEtEmul_ElectronicsuTCA
hcaldqm::ContainerProf1D _cEtCorrRatiovsLS_TTSubdet
hcaldqm::ContainerSingle2D _cOccupancyData2x3_depthlike
hcaldqm::ContainerSingle2D _cFGMsm_depthlike
hcaldqm::ContainerProf2D _cEtEmul_ElectronicsVME
MonitorElement * book1D(Args &&...args)
Abs< T >::type abs(const T &t)
hcaldqm::filter::HashFilter _filter_depth0
int const FIBER_uTCA_MIN1
hcaldqm::ContainerProf2D _cEtCorrRatio_ElectronicsVME
hcaldqm::ContainerXXX< uint32_t > _xEtMsm
hcaldqm::Container2D _cEtMsm_ElectronicsuTCA
hcaldqm::Container2D _cOccupancyCutEmul_ElectronicsuTCA
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
hcaldqm::ContainerSingle2D _cOccupancy_HF_depth
double _thresh_EtMsmRate_high
hcaldqm::ContainerProf1D _cOccupancyCutDatavsLS_TTSubdet
hcaldqm::Container2D _cOccupancyCutData_ElectronicsuTCA
HcalElectronicsMap const * _emap
hcaldqm::ContainerSingle2D _cSummaryvsLS
void initialize(std::string const &folder, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0) override
hcaldqm::ContainerSingle2D _cOccupancyData_depthlike
hcaldqm::Container2D _cOccupancyCutEmul_ElectronicsVME
const_iterator end() const
hcaldqm::ContainerSingle2D _cEtMsm_depthlike
hcaldqm::ContainerProf1D _cEtCutDatavsLS_TTSubdet
hcaldqm::Container2D _cMsnData_ElectronicsuTCA
hcaldqm::Container2D _cFGMsm_ElectronicsVME
hcaldqm::Container2D _cMsnEmul_ElectronicsuTCA
hcaldqm::ContainerProf1D _cOccupancyEmulvsBX_TTSubdet
hcaldqm::ContainerXXX< uint32_t > _xEmulTotal
hcaldqm::ContainerXXX< uint32_t > _xSentRecL1Msm
bool isFEDHBHE(HcalElectronicsId const &)
virtual void book(HcalElectronicsMap const *)
hcaldqm::Container2D _cFGMsm_ElectronicsuTCA
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
hcaldqm::ContainerProf1D _cEtCutDatavsBX_TTSubdet
virtual void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0)
int version() const
get the version code for the trigger tower
hcaldqm::ContainerSingle2D _cEtMsm_uHTR_L1T_depthlike
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
std::vector< bool > _vFGBitsReady
hcaldqm::ContainerProf1D _cOccupancyCutEmulvsBX_TTSubdet
hcaldqm::ContainerXXX< uint32_t > _xFGMsm
hcaldqm::Container2D _cOccupancyEmul_ElectronicsuTCA
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fEnergy), int debug=0) override
void setBinContent(HcalDetId const &, int) override
hcaldqm::ContainerProf1D _cOccupancyCutDatavsBX_TTSubdet
hcaldqm::ContainerSingle1D _cOccupancyNoTDC_HF_ieta
std::vector< std::vector< double > > tmp
iterator find(key_type k)
hcaldqm::ContainerSingle2D _cOccupancyEmul_depthlike
hcaldqm::Container2D _cOccupancyData_ElectronicsuTCA
virtual STDTYPE & get(HcalDetId const &)
edm::EDGetTokenT< HcalTrigPrimDigiCollection > _tokEmul
hcaldqm::ContainerProf1D _cEtCutEmulvsBX_TTSubdet
std::vector< int > getFEDList(HcalElectronicsMap const *)
hcaldqm::Container2D _cEtMsm_ElectronicsVME
hcaldqm::Container2D _cEtCorr2x3_TTSubdet
std::vector< int > getFEDuTCAList(HcalElectronicsMap const *)
void fill(HcalDetId const &) override
const HcalElectronicsMap * getHcalMapping() const
hcaldqm::Container2D _cEtCorr_TTSubdet
virtual void initialize(FilterType ftype, hashfunctions::HashType htype, std::vector< uint32_t > const &)
hcaldqm::ContainerSingle2D _cOccupancyNoTDC_HF_depth
hcaldqm::ContainerSingleProf2D _cEtEmul_depthlike
hcaldqm::ContainerXXX< uint32_t > _xNumCorr
hcaldqm::filter::HashFilter _filter_VME
std::vector< uint32_t > _vcdaqEids
void _process(edm::Event const &, edm::EventSetup const &) override
hcaldqm::ContainerProf1D _cOccupancyEmulvsLS_TTSubdet
hcaldqm::ContainerProf1D _cOccupancyCutEmulvsLS_TTSubdet
virtual void fill(int, int)
virtual void initialize(hashfunctions::HashType, int debug=0)
hcaldqm::ContainerProf1D _cEtMsmRatiovsBX_TTSubdet
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
hcaldqm::ContainerSingleProf2D _cEtCutEmul_depthlike
hcaldqm::ContainerProf2D _cEtData_ElectronicsuTCA
hcaldqm::ContainerProf1D _cMsnEmulvsLS_TTSubdet
void book(DQMStore::IBooker &, std::string subsystem="Hcal", std::string aux="") override
hcaldqm::ContainerSingle1D _cOccupancy_HF_ieta
Readout chain identification for Hcal.
void beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
hcaldqm::ContainerSingle2D _cMsnData_depthlike
bool isFEDHF(HcalElectronicsId const &)
int ietaAbs() const
get the absolute value of the tower ieta
hcaldqm::ContainerSingleProf2D _cEtCutData_depthlike
const_iterator begin() const
hcaldqm::Container1D _cEtData_TTSubdet
hcaldqm::ContainerSingle2D _cMsnEmul_depthlike
hcaldqm::ContainerProf1D _cMsnCutEmulvsLS_TTSubdet
hcaldqm::Container2D _cMsnEmul_ElectronicsVME