![]() |
![]() |
00001 #ifndef RPCOccupancyTest_H 00002 #define RPCOccupancyTest_H 00003 00004 #include "DQM/RPCMonitorClient/interface/RPCClient.h" 00005 #include "DQMServices/Core/interface/DQMStore.h" 00006 00007 #include <map> 00008 #include <memory> 00009 #include <string> 00010 #include <vector> 00011 00012 00013 00014 00015 class RPCOccupancyTest:public RPCClient { 00016 public: 00017 00018 RPCOccupancyTest(const edm::ParameterSet& ps); 00019 virtual ~RPCOccupancyTest(); 00020 00021 void beginJob(DQMStore *); 00022 void endRun(const edm::Run& , const edm::EventSetup& , std::vector<MonitorElement *> , std::vector<RPCDetId>); 00023 void beginLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& context) ; 00024 void analyze(const edm::Event& iEvent, const edm::EventSetup& c); 00025 void endLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& c); 00026 void beginRun(const edm::Run& , const edm::EventSetup& ); 00027 void endJob(); 00028 virtual void clientOperation(edm::EventSetup const& c); 00029 00030 protected: 00031 // void OccupancyDist(); 00032 void fillGlobalME(RPCDetId & , MonitorElement *); 00033 00034 private: 00035 00036 std::string globalFolder_; 00037 00038 00039 std::vector<MonitorElement *> myOccupancyMe_; 00040 std::vector<RPCDetId> myDetIds_; 00041 int prescaleFactor_; 00042 00043 DQMStore* dbe_; 00044 int numberOfDisks_, numberOfRings_; 00045 00046 float rpcevents_; 00047 00048 MonitorElement * AsyMeWheel[5]; //Left Right Asymetry 00049 MonitorElement * NormOccupWheel[5]; 00050 00051 MonitorElement * AsyMeDWheel[5]; //Left Right Asymetry 00052 MonitorElement * NormOccupDWheel[5]; 00053 00054 MonitorElement * AsyMeDisk[10]; //Left Right Asymetry 00055 MonitorElement * NormOccupDisk[10]; 00056 00057 MonitorElement * AsyMeDDisk[10]; //Left Right Asymetry 00058 MonitorElement * NormOccupDDisk[10]; 00059 MonitorElement * Barrel_OccBySt; 00060 MonitorElement * EndCap_OccByRng; 00061 MonitorElement * EndCap_OccByDisk ; 00062 00063 }; 00064 00065 #endif