|
| RPCEfficiencyPerRingLayer (const edm::ParameterSet &iConfig) |
| Constructor. More...
|
|
virtual | ~RPCEfficiencyPerRingLayer () |
| Destructor. More...
|
|
virtual void | beginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override final |
|
virtual void | beginRun (edm::Run const &, edm::EventSetup const &) override |
|
| DQMEDHarvester (void) |
|
virtual void | endJob () override final |
|
virtual void | endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override final |
|
virtual void | endRun (edm::Run const &, edm::EventSetup const &) override |
|
virtual void | produce (edm::Event &, edm::EventSetup const &) override final |
|
virtual | ~DQMEDHarvester ()=default |
|
| EDProducer ()=default |
|
| EDProducerBase () |
|
ModuleDescription const & | moduleDescription () const |
|
virtual | ~EDProducerBase () |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
|
| ProducerBase () |
|
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
|
std::function< void(BranchDescription const &)> | registrationCallback () const |
| used by the fwk to register list of products More...
|
|
void | resolvePutIndicies (BranchType iBranchType, std::unordered_multimap< std::string, edm::ProductResolverIndex > const &iIndicies, std::string const &moduleLabel) |
|
virtual | ~ProducerBase () noexcept(false) |
|
std::vector< ConsumesInfo > | consumesInfo () const |
|
void | convertCurrentProcessAlias (std::string const &processName) |
| Convert "@currentProcess" in InputTag process names to the actual current process name. More...
|
|
| EDConsumerBase () |
|
| EDConsumerBase (EDConsumerBase const &)=delete |
|
| EDConsumerBase (EDConsumerBase &&)=default |
|
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
|
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
|
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
|
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
|
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
|
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
|
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
|
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
|
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
|
virtual | ~EDConsumerBase () noexcept(false) |
|
|
void | beginJob () override |
|
void | dqmEndJob (DQMStore::IBooker &, DQMStore::IGetter &) override |
|
void | dqmEndLuminosityBlock (DQMStore::IBooker &, DQMStore::IGetter &, edm::LuminosityBlock const &, edm::EventSetup const &) override |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
|
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
|
ConsumesCollector | consumesCollector () |
| Use a ConsumesCollector to gather consumes information from helper functions. More...
|
|
template<typename ProductType , BranchType B = InEvent> |
void | consumesMany () |
|
void | consumesMany (const TypeToGet &id) |
|
template<BranchType B> |
void | consumesMany (const TypeToGet &id) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
|
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
Definition at line 10 of file RPCEfficiencyPerRingLayer.h.
Implements DQMEDHarvester.
Definition at line 28 of file RPCEfficiencyPerRingLayer.cc.
References funct::abs(), DQMStore::IBooker::book1D(), EfficiencyPerLayer, EfficiencyPerRing, DQMStore::IGetter::get(), MonitorElement::getBinContent(), MonitorElement::getTH1(), globalFolder_, mps_fire::i, innermostRings_, gen::k, NULL, numberOfDisks_, MonitorElement::setBinContent(), MonitorElement::setBinError(), MonitorElement::setBinLabel(), DQMStore::IBooker::setCurrentFolder(), and mathSSE::sqrt().
37 std::stringstream meName1;
40 std::stringstream meName2;
43 std::stringstream binName;
62 meName1<<globalFolder_<<
"Azimutal/ExGregDistroDm"<<
abs(
i)<<
"R"<<j;
63 meName2<<globalFolder_<<
"Azimutal/OcGregDistroDm"<<
abs(
i)<<
"R"<<j;
67 binName<<
"RE-"<<
i<<
"/"<<j;
70 meName1<<globalFolder_<<
"Azimutal/ExGregDistroD"<<
abs(
i)<<
"R"<<j;
71 meName2<<globalFolder_<<
"Azimutal/OcGregDistroD"<<
abs(
i)<<
"R"<<j;
75 binName<<
"RE+"<<
abs(
i)<<
"/"<<j;
79 myMe1 = igetter.
get(meName1.str());
80 myMe2 = igetter.
get(meName2.str());
83 TH1 * histo1 = myMe1->
getTH1();
84 TH1 * histo2 = myMe2->
getTH1();
86 int exg = histo1->Integral();
87 int obg = histo2->Integral();
91 eff = (double)obg/(
double)exg;
92 err =
sqrt(eff*(1-eff)/(
double)exg);}
94 if(k%2 != 0 && k < 7){
98 else if(k%2 == 0 && k < 7){
112 for(
int i=1;
i<=6;
i++){
119 for(
int j=-2; j<=2; j++){
123 meName1<<globalFolder_<<
"BarrelPerLayer/ExpLayerWm"<<
abs(j);
124 meName2<<globalFolder_<<
"BarrelPerLayer/ObsLayerWm"<<
abs(j);}
126 meName1<<globalFolder_<<
"BarrelPerLayer/ExpLayerW"<<j;
127 meName2<<globalFolder_<<
"BarrelPerLayer/ObsLayerW"<<j;}
129 myMe1 = igetter.
get(meName1.str());
130 myMe2 = igetter.
get(meName2.str());
138 eff = (double)Obs/(
double)Exp;
139 err =
sqrt(eff*(1-eff)/(
double)Exp);}
143 binName<<
"Layer "<<
i;
void setBinContent(int binx, double content)
set content of bin (1-D)
MonitorElement * get(const std::string &path)
void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
MonitorElement * EfficiencyPerLayer
MonitorElement * book1D(Args &&...args)
Abs< T >::type abs(const T &t)
void setBinError(int binx, double error)
set uncertainty on content of bin (1-D)
MonitorElement * EfficiencyPerRing
void setCurrentFolder(const std::string &fullpath)
double getBinContent(int binx) const
get content of bin (1-D)
std::string globalFolder_