CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/DQMOffline/Alignment/interface/LaserAlignmentT0ProducerDQM.h

Go to the documentation of this file.
00001 
00002 #ifndef _LAST0PRODUCERDQM_H
00003 #define _LAST0PRODUCERDQM_H
00004 
00005 // -*- C++ -*-
00006 //
00007 // Package:    Alignment/LaserAlignment
00008 // Class:      LaserAlignmentT0ProducerDQM
00009 // 
00010 
00011 //
00012 // DQM module for the
00013 // Laser Alignment AlCaReco producer
00014 // (LaserAlignmentT0Producer from Alignment/LaserAlignment)
00015 //
00016 
00017 #include <string>
00018 #include <vector>
00019 #include <iostream>
00020 #include <sstream>
00021 
00022 #include "FWCore/Framework/interface/EDAnalyzer.h"
00023 #include "FWCore/Framework/interface/Event.h"
00024 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00025 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00026 #include "FWCore/ServiceRegistry/interface/Service.h"
00027 #include "FWCore/Framework/interface/Frameworkfwd.h"
00028 #include "FWCore/Framework/interface/MakerMacros.h"
00029 
00030 #include "DQMServices/Core/interface/MonitorElement.h"
00031 #include "DQMServices/Core/interface/DQMStore.h"
00032 
00033 #include "DataFormats/Common/interface/DetSetVector.h"
00034 #include "DataFormats/SiStripDigi/interface/SiStripDigi.h"
00035 #include "DataFormats/SiStripDigi/interface/SiStripRawDigi.h"
00036 
00037 #include "Alignment/LaserAlignment/interface/LASGlobalData.h"
00038 #include "Alignment/LaserAlignment/interface/LASGlobalLoop.h"
00039 
00040 
00041 
00042 class LaserAlignmentT0ProducerDQM : public edm::EDAnalyzer {
00043 
00044  public:
00045 
00046   explicit LaserAlignmentT0ProducerDQM( const edm::ParameterSet& );
00047   ~LaserAlignmentT0ProducerDQM();
00048   virtual void beginJob();
00049   virtual void endJob( void );
00050   virtual void analyze( const edm::Event&, const edm::EventSetup& );
00051   
00052  private:
00053 
00054   void FillFromRawDigis( const edm::DetSetVector<SiStripRawDigi>& );
00055   void FillFromProcessedDigis( const edm::DetSetVector<SiStripDigi>& );
00056   void FillDetectorId( void );
00057 
00058   DQMStore* theDqmStore;
00059   edm::ParameterSet theConfiguration;
00060   std::vector<edm::ParameterSet> theDigiProducerList;
00061 
00062   std::vector<int> tecDoubleHitDetId;
00063   LASGlobalData<int> detectorId;
00064 
00065   unsigned int theLowerAdcThreshold;
00066   unsigned int theUpperAdcThreshold;
00067 
00068   //2D
00069   MonitorElement* nSignalsAT;
00070   MonitorElement* nSignalsTECPlusR4;
00071   MonitorElement* nSignalsTECPlusR6;
00072   MonitorElement* nSignalsTECMinusR4;
00073   MonitorElement* nSignalsTECMinusR6;
00074 
00075 };
00076 
00077 #endif