File indexing completed on 2024-04-06 12:08:12
0001 #ifndef RPCOccupancyTest_H
0002 #define RPCOccupancyTest_H
0003
0004 #include "DQM/RPCMonitorClient/interface/RPCClient.h"
0005 #include "DQMServices/Core/interface/DQMStore.h"
0006
0007 #include <map>
0008 #include <memory>
0009 #include <string>
0010 #include <vector>
0011
0012 class RPCOccupancyTest : public RPCClient {
0013 public:
0014 RPCOccupancyTest(const edm::ParameterSet &ps);
0015 ~RPCOccupancyTest() override = default;
0016
0017 void clientOperation() override;
0018 void getMonitorElements(std::vector<MonitorElement *> &, std::vector<RPCDetId> &, std::string &) override;
0019 void beginJob(std::string &) override;
0020 void myBooker(DQMStore::IBooker &) override;
0021
0022 protected:
0023
0024 void fillGlobalME(RPCDetId &, MonitorElement *);
0025
0026 private:
0027 std::string globalFolder_, prefixDir_;
0028 bool useNormalization_;
0029 bool useRollInfo_;
0030 std::vector<MonitorElement *> myOccupancyMe_;
0031 std::vector<RPCDetId> myDetIds_;
0032 int prescaleFactor_;
0033
0034 float totalActive_, totalStrips_;
0035
0036 int numberOfDisks_, numberOfRings_;
0037
0038 float rpcevents_;
0039
0040 MonitorElement *Active_Fraction;
0041 MonitorElement *Active_Dead;
0042
0043 MonitorElement *AsyMeWheel[5];
0044 MonitorElement *NormOccupWheel[5];
0045 MonitorElement *NormOccupDWheel[5];
0046
0047 MonitorElement *AsyMeDisk[10];
0048 MonitorElement *NormOccupDisk[10];
0049 MonitorElement *NormOccupDDisk[10];
0050
0051 MonitorElement *Barrel_OccBySt;
0052 MonitorElement *EndCap_OccByRng;
0053 MonitorElement *EndCap_OccByDisk;
0054 };
0055
0056 #endif