Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-05-25 06:38:16

0001 #ifndef DQM_HcalTasks_UMNioTask_h
0002 #define DQM_HcalTasks_UMNioTask_h
0003 
0004 /*
0005  *  file:           LaserTask.h
0006  *  Author:         Viktor Khristenko
0007  *  Date:           16.10.2015
0008  */
0009 
0010 #include "DQM/HcalCommon/interface/DQTask.h"
0011 #include "DQM/HcalCommon/interface/Utilities.h"
0012 #include "DQM/HcalCommon/interface/ElectronicsMap.h"
0013 #include "DQM/HcalCommon/interface/ContainerXXX.h"
0014 #include "DQM/HcalCommon/interface/Container1D.h"
0015 #include "DQM/HcalCommon/interface/Container2D.h"
0016 #include "DQM/HcalCommon/interface/ContainerSingle1D.h"
0017 #include "DQM/HcalCommon/interface/ContainerSingle2D.h"
0018 #include "DQM/HcalCommon/interface/ContainerSingleProf2D.h"
0019 #include "DQM/HcalCommon/interface/ContainerProf1D.h"
0020 #include "DQM/HcalCommon/interface/ContainerProf2D.h"
0021 #include "FWCore/Framework/interface/Run.h"
0022 
0023 class UMNioTask : public hcaldqm::DQTask {
0024 public:
0025   UMNioTask(edm::ParameterSet const&);
0026   ~UMNioTask() override {}
0027 
0028   void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
0029   void dqmEndRun(edm::Run const& r, edm::EventSetup const&) override {
0030     if (_ptype == hcaldqm::fLocal) {
0031       if (r.runAuxiliary().run() == 1)
0032         return;
0033     }
0034   }
0035   void globalEndLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override;
0036 
0037 protected:
0038   //    funcs
0039   void _process(edm::Event const&, edm::EventSetup const&) override;
0040 
0041   // Get index of a particular OrbitGapType in the vector, which is used as the value for filling the histogram
0042   int getOrbitGapIndex(uint8_t eventType, uint32_t laserType);
0043 
0044   std::vector<uint32_t> _eventtypes;
0045 
0046   //    tags and tokens
0047   edm::InputTag _taguMN;
0048   edm::InputTag _tagHBHE;
0049   edm::InputTag _tagHO;
0050   edm::InputTag _tagHF;
0051   edm::EDGetTokenT<HBHEDigiCollection> _tokHBHE;
0052   edm::EDGetTokenT<HODigiCollection> _tokHO;
0053   edm::EDGetTokenT<HFDigiCollection> _tokHF;
0054   edm::EDGetTokenT<HcalUMNioDigi> _tokuMN;
0055   edm::ESGetToken<HcalDbService, HcalDbRecord> hcalDbServiceToken_;
0056 
0057   //    cuts
0058   double _lowHBHE, _lowHO, _lowHF;
0059 
0060   //    emap
0061   hcaldqm::electronicsmap::ElectronicsMap _ehashmap;
0062   hcaldqm::filter::HashFilter _filter_uTCA;
0063   hcaldqm::filter::HashFilter _filter_VME;
0064 
0065   //    1D
0066   hcaldqm::ContainerSingle2D _cEventType;
0067   hcaldqm::ContainerSingle2D _cTotalCharge;
0068   hcaldqm::ContainerSingleProf2D _cTotalChargeProfile;
0069 };
0070 #endif