CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/DQM/SiPixelMonitorRawData/interface/SiPixelRawDataErrorModule.h

Go to the documentation of this file.
00001 #ifndef SiPixelMonitorRawData_SiPixelRawDataErrorModule_h
00002 #define SiPixelMonitorRawData_SiPixelRawDataErrorModule_h
00003 // -*- C++ -*-
00004 //
00005 // Package:    SiPixelMonitorRawData
00006 // Class:      SiPixelRawDataErrorModule
00007 // 
00017 //
00018 // Original Author:  Andrew York
00019 //         Created:  
00020 //
00021 #include "DQMServices/Core/interface/MonitorElement.h"
00022 #include "DataFormats/SiPixelRawData/interface/SiPixelRawDataError.h"
00023 #include "DataFormats/Common/interface/DetSetVector.h"
00024 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00025 #include <boost/cstdint.hpp>
00026 
00027 class SiPixelRawDataErrorModule {        
00028 
00029  public:
00030 
00032   SiPixelRawDataErrorModule();
00034   SiPixelRawDataErrorModule(const uint32_t& id);
00036   SiPixelRawDataErrorModule(const uint32_t& id, const int& ncols, const int& nrows);
00038   ~SiPixelRawDataErrorModule();
00039 
00040   typedef edm::DetSet<SiPixelRawDataError>::const_iterator    ErrorIterator;
00041 
00043   void book(const edm::ParameterSet& iConfig, int type=0);
00045   void bookFED(const edm::ParameterSet& iConfig);
00047   int fill(const edm::DetSetVector<SiPixelRawDataError> & input, bool modon=true, bool ladon=false, bool bladeon=false);
00049   int fillFED(const edm::DetSetVector<SiPixelRawDataError> & input);
00050   
00051  private:
00052 
00053   uint32_t id_;
00054   int ncols_;
00055   int nrows_;
00056   bool _debug_;
00057 
00058 
00059   MonitorElement* meErrorType_;
00060   MonitorElement* meNErrors_;
00061   MonitorElement* meFullType_;
00062   MonitorElement* meTBMMessage_;
00063   MonitorElement* meTBMType_;
00064   MonitorElement* meEvtNbr_;
00065   MonitorElement* meEvtSize_;
00066   MonitorElement* meFedChNErrArray_[37];
00067   MonitorElement* meFedChLErrArray_[37];
00068   MonitorElement* meFedETypeNErrArray_[21];
00069   
00070   //barrel:
00071   MonitorElement* meErrorTypeLad_;
00072   MonitorElement* meNErrorsLad_;
00073   MonitorElement* meFullTypeLad_;
00074   MonitorElement* meTBMMessageLad_;
00075   MonitorElement* meTBMTypeLad_;
00076   MonitorElement* meEvtNbrLad_;
00077   MonitorElement* meEvtSizeLad_;
00078   
00079   //forward:
00080   MonitorElement* meErrorTypeBlade_;
00081   MonitorElement* meNErrorsBlade_;
00082   MonitorElement* meFullTypeBlade_;
00083   MonitorElement* meTBMMessageBlade_;
00084   MonitorElement* meTBMTypeBlade_;
00085   MonitorElement* meEvtNbrBlade_;
00086   MonitorElement* meEvtSizeBlade_;
00087 
00088   static const int LINK_bits,  ROC_bits,  DCOL_bits,  PXID_bits,  ADC_bits, DataBit_bits, TRLRBGN_bits, EVTLGT_bits, TRLREND_bits;
00089   static const int LINK_shift, ROC_shift, DCOL_shift, PXID_shift, ADC_shift, DB0_shift, DB1_shift, DB2_shift, DB3_shift, DB4_shift, DB5_shift, DB6_shift, DB7_shift, TRLRBGN_shift, EVTLGT_shift, TRLREND_shift;
00090   static const uint32_t LINK_mask, ROC_mask, DCOL_mask, PXID_mask, ADC_mask, DataBit_mask;
00091   static const long long TRLRBGN_mask, EVTLGT_mask, TRLREND_mask;
00092 };
00093 #endif