CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Protected Member Functions | Private Attributes
EELaserTask Class Reference

#include <EELaserTask.h>

Inheritance diagram for EELaserTask:
edm::EDAnalyzer

Public Member Functions

 EELaserTask (const edm::ParameterSet &ps)
 Constructor. More...
 
virtual ~EELaserTask ()
 Destructor. More...
 
- Public Member Functions inherited from edm::EDAnalyzer
 EDAnalyzer ()
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c)
 Analyze. More...
 
void beginJob (void)
 BeginJob. More...
 
void beginRun (const edm::Run &r, const edm::EventSetup &c)
 BeginRun. More...
 
void cleanup (void)
 Cleanup. More...
 
void endJob (void)
 EndJob. More...
 
void endRun (const edm::Run &r, const edm::EventSetup &c)
 EndRun. More...
 
void reset (void)
 Reset. More...
 
void setup (void)
 Setup. More...
 
- Protected Member Functions inherited from edm::EDAnalyzer
CurrentProcessingContext const * currentContext () const
 

Private Attributes

DQMStoredqmStore_
 
edm::InputTag EcalPnDiodeDigiCollection_
 
edm::InputTag EcalRawDataCollection_
 
edm::InputTag EcalUncalibratedRecHitCollection_
 
edm::InputTag EEDigiCollection_
 
bool enableCleanup_
 
int ievt_
 
bool init_
 
std::vector< int > laserWavelengths_
 
MonitorElementmeAmplMapL1_ [18]
 
MonitorElementmeAmplMapL2_ [18]
 
MonitorElementmeAmplMapL3_ [18]
 
MonitorElementmeAmplMapL4_ [18]
 
MonitorElementmeAmplPNMapL1_ [18]
 
MonitorElementmeAmplPNMapL2_ [18]
 
MonitorElementmeAmplPNMapL3_ [18]
 
MonitorElementmeAmplPNMapL4_ [18]
 
MonitorElementmePnAmplMapG01L1_ [18]
 
MonitorElementmePnAmplMapG01L2_ [18]
 
MonitorElementmePnAmplMapG01L3_ [18]
 
MonitorElementmePnAmplMapG01L4_ [18]
 
MonitorElementmePnAmplMapG16L1_ [18]
 
MonitorElementmePnAmplMapG16L2_ [18]
 
MonitorElementmePnAmplMapG16L3_ [18]
 
MonitorElementmePnAmplMapG16L4_ [18]
 
MonitorElementmePnPedMapG01L1_ [18]
 
MonitorElementmePnPedMapG01L2_ [18]
 
MonitorElementmePnPedMapG01L3_ [18]
 
MonitorElementmePnPedMapG01L4_ [18]
 
MonitorElementmePnPedMapG16L1_ [18]
 
MonitorElementmePnPedMapG16L2_ [18]
 
MonitorElementmePnPedMapG16L3_ [18]
 
MonitorElementmePnPedMapG16L4_ [18]
 
bool mergeRuns_
 
MonitorElementmeShapeMapL1_ [18]
 
MonitorElementmeShapeMapL2_ [18]
 
MonitorElementmeShapeMapL3_ [18]
 
MonitorElementmeShapeMapL4_ [18]
 
MonitorElementmeTimeMapL1_ [18]
 
MonitorElementmeTimeMapL2_ [18]
 
MonitorElementmeTimeMapL3_ [18]
 
MonitorElementmeTimeMapL4_ [18]
 
std::string prefixME_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
typedef WorkerT< EDAnalyzerWorkerType
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 

Detailed Description

Definition at line 20 of file EELaserTask.h.

Constructor & Destructor Documentation

EELaserTask::EELaserTask ( const edm::ParameterSet ps)

Constructor.

Definition at line 33 of file EELaserTask.cc.

References dqmStore_, EcalPnDiodeDigiCollection_, EcalRawDataCollection_, EcalUncalibratedRecHitCollection_, EEDigiCollection_, enableCleanup_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), i, init_, laserWavelengths_, meAmplMapL1_, meAmplMapL2_, meAmplMapL3_, meAmplMapL4_, meAmplPNMapL1_, meAmplPNMapL2_, meAmplPNMapL3_, meAmplPNMapL4_, mePnAmplMapG01L1_, mePnAmplMapG01L2_, mePnAmplMapG01L3_, mePnAmplMapG01L4_, mePnAmplMapG16L1_, mePnAmplMapG16L2_, mePnAmplMapG16L3_, mePnAmplMapG16L4_, mePnPedMapG01L1_, mePnPedMapG01L2_, mePnPedMapG01L3_, mePnPedMapG01L4_, mePnPedMapG16L1_, mePnPedMapG16L2_, mePnPedMapG16L3_, mePnPedMapG16L4_, mergeRuns_, meShapeMapL1_, meShapeMapL2_, meShapeMapL3_, meShapeMapL4_, meTimeMapL1_, meTimeMapL2_, meTimeMapL3_, meTimeMapL4_, cmsCodeRules.cppFunctionSkipper::operator, and prefixME_.

33  {
34 
35  init_ = false;
36 
38 
39  prefixME_ = ps.getUntrackedParameter<std::string>("prefixME", "");
40 
41  enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false);
42 
43  mergeRuns_ = ps.getUntrackedParameter<bool>("mergeRuns", false);
44 
45  EcalRawDataCollection_ = ps.getParameter<edm::InputTag>("EcalRawDataCollection");
46  EEDigiCollection_ = ps.getParameter<edm::InputTag>("EEDigiCollection");
47  EcalPnDiodeDigiCollection_ = ps.getParameter<edm::InputTag>("EcalPnDiodeDigiCollection");
48  EcalUncalibratedRecHitCollection_ = ps.getParameter<edm::InputTag>("EcalUncalibratedRecHitCollection");
49 
50  // vector of enabled wavelengths (Default to all 4)
51  laserWavelengths_.reserve(4);
52  for ( unsigned int i = 1; i <= 4; i++ ) laserWavelengths_.push_back(i);
53  laserWavelengths_ = ps.getUntrackedParameter<std::vector<int> >("laserWavelengths", laserWavelengths_);
54 
55  for (int i = 0; i < 18; i++) {
56  meShapeMapL1_[i] = 0;
57  meAmplMapL1_[i] = 0;
58  meTimeMapL1_[i] = 0;
59  meAmplPNMapL1_[i] = 0;
60  mePnAmplMapG01L1_[i] = 0;
61  mePnPedMapG01L1_[i] = 0;
62  mePnAmplMapG16L1_[i] = 0;
63  mePnPedMapG16L1_[i] = 0;
64 
65  meShapeMapL2_[i] = 0;
66  meAmplMapL2_[i] = 0;
67  meTimeMapL2_[i] = 0;
68  meAmplPNMapL2_[i] = 0;
69  mePnAmplMapG01L2_[i] = 0;
70  mePnPedMapG01L2_[i] = 0;
71  mePnAmplMapG16L2_[i] = 0;
72  mePnPedMapG16L2_[i] = 0;
73 
74  meShapeMapL3_[i] = 0;
75  meAmplMapL3_[i] = 0;
76  meTimeMapL3_[i] = 0;
77  meAmplPNMapL3_[i] = 0;
78  mePnAmplMapG01L3_[i] = 0;
79  mePnPedMapG01L3_[i] = 0;
80  mePnAmplMapG16L3_[i] = 0;
81  mePnPedMapG16L3_[i] = 0;
82 
83  meShapeMapL4_[i] = 0;
84  meAmplMapL4_[i] = 0;
85  meTimeMapL4_[i] = 0;
86  meAmplPNMapL4_[i] = 0;
87  mePnAmplMapG01L4_[i] = 0;
88  mePnPedMapG01L4_[i] = 0;
89  mePnAmplMapG16L4_[i] = 0;
90  mePnPedMapG16L4_[i] = 0;
91  }
92 
93 }
MonitorElement * mePnAmplMapG01L2_[18]
Definition: EELaserTask.h:87
edm::InputTag EcalUncalibratedRecHitCollection_
Definition: EELaserTask.h:71
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
MonitorElement * meTimeMapL4_[18]
Definition: EELaserTask.h:103
int i
Definition: DBlmapReader.cc:9
MonitorElement * mePnAmplMapG16L2_[18]
Definition: EELaserTask.h:89
MonitorElement * meTimeMapL3_[18]
Definition: EELaserTask.h:94
MonitorElement * mePnAmplMapG16L1_[18]
Definition: EELaserTask.h:80
std::string prefixME_
Definition: EELaserTask.h:62
MonitorElement * mePnPedMapG01L4_[18]
Definition: EELaserTask.h:106
MonitorElement * mePnPedMapG01L2_[18]
Definition: EELaserTask.h:88
MonitorElement * meAmplMapL2_[18]
Definition: EELaserTask.h:84
MonitorElement * mePnAmplMapG01L1_[18]
Definition: EELaserTask.h:78
MonitorElement * mePnPedMapG01L3_[18]
Definition: EELaserTask.h:97
edm::InputTag EcalPnDiodeDigiCollection_
Definition: EELaserTask.h:70
MonitorElement * mePnPedMapG16L2_[18]
Definition: EELaserTask.h:90
MonitorElement * mePnAmplMapG01L4_[18]
Definition: EELaserTask.h:105
MonitorElement * meTimeMapL2_[18]
Definition: EELaserTask.h:85
MonitorElement * mePnPedMapG16L4_[18]
Definition: EELaserTask.h:108
MonitorElement * meShapeMapL3_[18]
Definition: EELaserTask.h:92
MonitorElement * meAmplMapL4_[18]
Definition: EELaserTask.h:102
MonitorElement * mePnPedMapG16L1_[18]
Definition: EELaserTask.h:81
MonitorElement * meTimeMapL1_[18]
Definition: EELaserTask.h:76
MonitorElement * meAmplMapL3_[18]
Definition: EELaserTask.h:93
DQMStore * dqmStore_
Definition: EELaserTask.h:60
MonitorElement * meAmplPNMapL3_[18]
Definition: EELaserTask.h:95
std::vector< int > laserWavelengths_
Definition: EELaserTask.h:72
MonitorElement * mePnPedMapG01L1_[18]
Definition: EELaserTask.h:79
MonitorElement * meAmplMapL1_[18]
Definition: EELaserTask.h:75
edm::InputTag EcalRawDataCollection_
Definition: EELaserTask.h:68
MonitorElement * mePnAmplMapG16L3_[18]
Definition: EELaserTask.h:98
edm::InputTag EEDigiCollection_
Definition: EELaserTask.h:69
MonitorElement * mePnAmplMapG16L4_[18]
Definition: EELaserTask.h:107
MonitorElement * mePnAmplMapG01L3_[18]
Definition: EELaserTask.h:96
MonitorElement * mePnPedMapG16L3_[18]
Definition: EELaserTask.h:99
MonitorElement * meAmplPNMapL4_[18]
Definition: EELaserTask.h:104
MonitorElement * meAmplPNMapL1_[18]
Definition: EELaserTask.h:77
bool mergeRuns_
Definition: EELaserTask.h:66
bool enableCleanup_
Definition: EELaserTask.h:64
MonitorElement * meAmplPNMapL2_[18]
Definition: EELaserTask.h:86
MonitorElement * meShapeMapL1_[18]
Definition: EELaserTask.h:74
MonitorElement * meShapeMapL4_[18]
Definition: EELaserTask.h:101
MonitorElement * meShapeMapL2_[18]
Definition: EELaserTask.h:83
EELaserTask::~EELaserTask ( )
virtual

Destructor.

Definition at line 95 of file EELaserTask.cc.

95  {
96 
97 }

Member Function Documentation

void EELaserTask::analyze ( const edm::Event e,
const edm::EventSetup c 
)
protectedvirtual

Analyze.

Implements edm::EDAnalyzer.

Definition at line 641 of file EELaserTask.cc.

References ecalMGPA::adc(), EcalMGPASample::adc(), EcalEndcap, EcalPnDiodeDigiCollection_, EcalRawDataCollection_, EcalUncalibratedRecHitCollection_, EEDigiCollection_, MonitorElement::Fill(), EcalMGPASample::gainId(), edm::Event::getByLabel(), NumbersPn::getPNs(), i, Numbers::icEE(), ievt_, init_, NumbersPn::ipnEE(), ecalpyutils::ism(), Numbers::iSM(), EEDetId::ix(), EcalDCCHeaderBlock::LASER_GAP, EcalDCCHeaderBlock::LASER_STD, LogDebug, meAmplMapL1_, meAmplMapL2_, meAmplMapL3_, meAmplMapL4_, meAmplPNMapL1_, meAmplPNMapL2_, meAmplPNMapL3_, meAmplPNMapL4_, mePnAmplMapG01L1_, mePnAmplMapG01L2_, mePnAmplMapG01L3_, mePnAmplMapG01L4_, mePnAmplMapG16L1_, mePnAmplMapG16L2_, mePnAmplMapG16L3_, mePnAmplMapG16L4_, mePnPedMapG01L1_, mePnPedMapG01L2_, mePnPedMapG01L3_, mePnPedMapG01L4_, mePnPedMapG16L1_, mePnPedMapG16L2_, mePnPedMapG16L3_, mePnPedMapG16L4_, meShapeMapL1_, meShapeMapL2_, meShapeMapL3_, meShapeMapL4_, meTimeMapL1_, meTimeMapL2_, meTimeMapL3_, meTimeMapL4_, Numbers::RtHalf(), ExpressReco_HICollisions_FallBack::runType, EcalDataFrame::sample(), setup(), and Numbers::subDet().

641  {
642 
643  bool enable = false;
644  int runType[18];
645  for (int i=0; i<18; i++) runType[i] = -1;
646  int rtHalf[18];
647  for (int i=0; i<18; i++) rtHalf[i] = -1;
648  int waveLength[18];
649  for (int i=0; i<18; i++) waveLength[i] = -1;
650 
652 
653  if ( e.getByLabel(EcalRawDataCollection_, dcchs) ) {
654 
655  for ( EcalRawDataCollection::const_iterator dcchItr = dcchs->begin(); dcchItr != dcchs->end(); ++dcchItr ) {
656 
657  if ( Numbers::subDet( *dcchItr ) != EcalEndcap ) continue;
658 
659  int ism = Numbers::iSM( *dcchItr, EcalEndcap );
660 
661  runType[ism-1] = dcchItr->getRunType();
662  rtHalf[ism-1] = dcchItr->getRtHalf();
663  waveLength[ism-1] = dcchItr->getEventSettings().wavelength;
664 
665  if ( dcchItr->getRunType() == EcalDCCHeaderBlock::LASER_STD ||
666  dcchItr->getRunType() == EcalDCCHeaderBlock::LASER_GAP ) enable = true;
667 
668  }
669 
670  } else {
671 
672  edm::LogWarning("EELaserTask") << EcalRawDataCollection_ << " not available";
673 
674  }
675 
676  if ( ! enable ) return;
677 
678  if ( ! init_ ) this->setup();
679 
680  ievt_++;
681 
682  bool numPN[80];
683  float adcPN[80];
684  for ( int i = 0; i < 80; i++ ) {
685  numPN[i] = false;
686  adcPN[i] = 0.;
687  }
688 
689  std::vector<int> PNs;
690  PNs.reserve(12);
691 
693 
694  if ( e.getByLabel(EEDigiCollection_, digis) ) {
695 
696  int need = digis->size();
697  LogDebug("EELaserTask") << "event " << ievt_ << " digi collection size " << need;
698 
699  for ( EEDigiCollection::const_iterator digiItr = digis->begin(); digiItr != digis->end(); ++digiItr ) {
700 
701  EEDetId id = digiItr->id();
702 
703  int ix = id.ix();
704  int iy = id.iy();
705 
706  int ism = Numbers::iSM( id );
707 
708  if ( ! ( runType[ism-1] == EcalDCCHeaderBlock::LASER_STD ||
709  runType[ism-1] == EcalDCCHeaderBlock::LASER_GAP ) ) continue;
710 
711  if ( rtHalf[ism-1] != Numbers::RtHalf(id) ) continue;
712 
713  int ic = Numbers::icEE(ism, ix, iy);
714 
715  EEDataFrame dataframe = (*digiItr);
716 
717  for (int i = 0; i < 10; i++) {
718 
719  int adc = dataframe.sample(i).adc();
720  float gain = 1.;
721 
722  MonitorElement* meShapeMap = 0;
723 
724  if ( dataframe.sample(i).gainId() == 1 ) gain = 1./12.;
725  if ( dataframe.sample(i).gainId() == 2 ) gain = 1./ 6.;
726  if ( dataframe.sample(i).gainId() == 3 ) gain = 1./ 1.;
727 
728  if ( rtHalf[ism-1] == 0 || rtHalf[ism-1] == 1 ) {
729 
730  if ( waveLength[ism-1] == 0 ) meShapeMap = meShapeMapL1_[ism-1];
731  if ( waveLength[ism-1] == 1 ) meShapeMap = meShapeMapL2_[ism-1];
732  if ( waveLength[ism-1] == 2 ) meShapeMap = meShapeMapL3_[ism-1];
733  if ( waveLength[ism-1] == 3 ) meShapeMap = meShapeMapL4_[ism-1];
734 
735  } else {
736 
737  edm::LogWarning("EELaserTask") << " RtHalf = " << rtHalf[ism-1];
738 
739  }
740 
741 // float xval = float(adc) * gain;
742  float xval = float(adc);
743 
744  if ( meShapeMap ) meShapeMap->Fill(ic - 0.5, i + 0.5, xval);
745 
746  }
747 
748  NumbersPn::getPNs( ism, ix, iy, PNs );
749 
750  for (unsigned int i=0; i<PNs.size(); i++) {
751  int ipn = PNs[i];
752  if ( ipn >= 0 && ipn < 80 ) numPN[ipn] = true;
753  }
754 
755  }
756 
757  } else {
758 
759  edm::LogWarning("EELaserTask") << EEDigiCollection_ << " not available";
760 
761  }
762 
764 
765  if ( e.getByLabel(EcalPnDiodeDigiCollection_, pns) ) {
766 
767  int nep = pns->size();
768  LogDebug("EELaserTask") << "event " << ievt_ << " pns collection size " << nep;
769 
770  for ( EcalPnDiodeDigiCollection::const_iterator pnItr = pns->begin(); pnItr != pns->end(); ++pnItr ) {
771 
772  if ( Numbers::subDet( pnItr->id() ) != EcalEndcap ) continue;
773 
774  int ism = Numbers::iSM( pnItr->id() );
775 
776  int num = pnItr->id().iPnId();
777 
778  if ( ! ( runType[ism-1] == EcalDCCHeaderBlock::LASER_STD ||
779  runType[ism-1] == EcalDCCHeaderBlock::LASER_GAP ) ) continue;
780 
781  int ipn = NumbersPn::ipnEE( ism, num );
782 
783  if ( ipn >= 0 && ipn < 80 && numPN[ipn] == false ) continue;
784 
785  float xvalped = 0.;
786 
787  for (int i = 0; i < 4; i++) {
788 
789  int adc = pnItr->sample(i).adc();
790 
791  MonitorElement* mePNPed = 0;
792 
793  if ( pnItr->sample(i).gainId() == 0 ) {
794  if ( waveLength[ism-1] == 0 ) mePNPed = mePnPedMapG01L1_[ism-1];
795  if ( waveLength[ism-1] == 1 ) mePNPed = mePnPedMapG01L2_[ism-1];
796  if ( waveLength[ism-1] == 2 ) mePNPed = mePnPedMapG01L3_[ism-1];
797  if ( waveLength[ism-1] == 3 ) mePNPed = mePnPedMapG01L4_[ism-1];
798  }
799  if ( pnItr->sample(i).gainId() == 1 ) {
800  if ( waveLength[ism-1] == 0 ) mePNPed = mePnPedMapG16L1_[ism-1];
801  if ( waveLength[ism-1] == 1 ) mePNPed = mePnPedMapG16L2_[ism-1];
802  if ( waveLength[ism-1] == 2 ) mePNPed = mePnPedMapG16L3_[ism-1];
803  if ( waveLength[ism-1] == 3 ) mePNPed = mePnPedMapG16L4_[ism-1];
804  }
805 
806  float xval = float(adc);
807 
808  if ( mePNPed ) mePNPed->Fill(num - 0.5, xval);
809 
810  xvalped = xvalped + xval;
811 
812  }
813 
814  xvalped = xvalped / 4;
815 
816  float xvalmax = 0.;
817 
818  MonitorElement* mePN = 0;
819 
820  for (int i = 0; i < 50; i++) {
821 
822  int adc = pnItr->sample(i).adc();
823 
824  float xval = float(adc);
825 
826  if ( xval >= xvalmax ) xvalmax = xval;
827 
828  }
829 
830  xvalmax = xvalmax - xvalped;
831 
832  if ( pnItr->sample(0).gainId() == 0 ) {
833  if ( waveLength[ism-1] == 0 ) mePN = mePnAmplMapG01L1_[ism-1];
834  if ( waveLength[ism-1] == 1 ) mePN = mePnAmplMapG01L2_[ism-1];
835  if ( waveLength[ism-1] == 2 ) mePN = mePnAmplMapG01L3_[ism-1];
836  if ( waveLength[ism-1] == 3 ) mePN = mePnAmplMapG01L4_[ism-1];
837  }
838  if ( pnItr->sample(0).gainId() == 1 ) {
839  if ( waveLength[ism-1] == 0 ) mePN = mePnAmplMapG16L1_[ism-1];
840  if ( waveLength[ism-1] == 1 ) mePN = mePnAmplMapG16L2_[ism-1];
841  if ( waveLength[ism-1] == 2 ) mePN = mePnAmplMapG16L3_[ism-1];
842  if ( waveLength[ism-1] == 3 ) mePN = mePnAmplMapG16L4_[ism-1];
843  }
844 
845  if ( mePN ) mePN->Fill(num - 0.5, xvalmax);
846 
847  if ( ipn >= 0 && ipn < 80 ) adcPN[ipn] = xvalmax;
848 
849  }
850 
851  } else {
852 
853  edm::LogWarning("EELaserTask") << EcalPnDiodeDigiCollection_ << " not available";
854 
855  }
856 
858 
860 
861  int neh = hits->size();
862  LogDebug("EELaserTask") << "event " << ievt_ << " hits collection size " << neh;
863 
864  for ( EcalUncalibratedRecHitCollection::const_iterator hitItr = hits->begin(); hitItr != hits->end(); ++hitItr ) {
865 
866  EEDetId id = hitItr->id();
867 
868  int ix = id.ix();
869  int iy = id.iy();
870 
871  int ism = Numbers::iSM( id );
872 
873  if ( ism >= 1 && ism <= 9 ) ix = 101 - ix;
874 
875  float xix = ix - 0.5;
876  float xiy = iy - 0.5;
877 
878  if ( ! ( runType[ism-1] == EcalDCCHeaderBlock::LASER_STD ||
879  runType[ism-1] == EcalDCCHeaderBlock::LASER_GAP ) ) continue;
880 
881  if ( rtHalf[ism-1] != Numbers::RtHalf(id) ) continue;
882 
883  MonitorElement* meAmplMap = 0;
884  MonitorElement* meTimeMap = 0;
885  MonitorElement* meAmplPNMap = 0;
886 
887  if ( rtHalf[ism-1] == 0 || rtHalf[ism-1] == 1 ) {
888 
889  if ( waveLength[ism-1] == 0 ) {
890  meAmplMap = meAmplMapL1_[ism-1];
891  meTimeMap = meTimeMapL1_[ism-1];
892  meAmplPNMap = meAmplPNMapL1_[ism-1];
893  }
894  if ( waveLength[ism-1] == 1 ) {
895  meAmplMap = meAmplMapL2_[ism-1];
896  meTimeMap = meTimeMapL2_[ism-1];
897  meAmplPNMap = meAmplPNMapL2_[ism-1];
898  }
899  if ( waveLength[ism-1] == 2 ) {
900  meAmplMap = meAmplMapL3_[ism-1];
901  meTimeMap = meTimeMapL3_[ism-1];
902  meAmplPNMap = meAmplPNMapL3_[ism-1];
903  }
904  if ( waveLength[ism-1] == 3 ) {
905  meAmplMap = meAmplMapL4_[ism-1];
906  meTimeMap = meTimeMapL4_[ism-1];
907  meAmplPNMap = meAmplPNMapL4_[ism-1];
908  }
909 
910  } else {
911 
912  edm::LogWarning("EELaserTask") << " RtHalf = " << rtHalf[ism-1];
913 
914  }
915 
916  float xval = hitItr->amplitude();
917  if ( xval <= 0. ) xval = 0.0;
918  float yval = hitItr->jitter() + 5.0;
919  if ( yval <= 0. ) yval = 0.0;
920  float zval = hitItr->pedestal();
921  if ( zval <= 0. ) zval = 0.0;
922 
923  if ( meAmplMap ) meAmplMap->Fill(xix, xiy, xval);
924 
925  if ( xval > 16. ) {
926  if ( meTimeMap ) meTimeMap->Fill(xix, xiy, yval);
927  }
928 
929  float wval = 0.;
930 
931  NumbersPn::getPNs( ism, ix, iy, PNs );
932 
933  if ( PNs.size() > 0 ) {
934  int ipn = PNs[0];
935  if ( ipn >= 0 && ipn < 80 ) {
936  if ( adcPN[ipn] != 0. ) wval = xval / adcPN[ipn];
937  }
938  }
939 
940  if ( meAmplPNMap ) meAmplPNMap->Fill(xix, xiy, wval);
941 
942  }
943 
944  } else {
945 
946  edm::LogWarning("EELaserTask") << EcalUncalibratedRecHitCollection_ << " not available";
947 
948  }
949 
950 }
int adc(sample_type sample)
get the ADC sample (12 bits)
#define LogDebug(id)
MonitorElement * mePnAmplMapG01L2_[18]
Definition: EELaserTask.h:87
edm::InputTag EcalUncalibratedRecHitCollection_
Definition: EELaserTask.h:71
MonitorElement * meTimeMapL4_[18]
Definition: EELaserTask.h:103
int i
Definition: DBlmapReader.cc:9
static int ipnEE(const int ism, const int ipnid)
Definition: NumbersPn.cc:21
MonitorElement * mePnAmplMapG16L2_[18]
Definition: EELaserTask.h:89
int ix() const
Definition: EEDetId.h:71
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
MonitorElement * meTimeMapL3_[18]
Definition: EELaserTask.h:94
MonitorElement * mePnAmplMapG16L1_[18]
Definition: EELaserTask.h:80
static int RtHalf(const EBDetId &id)
Definition: Numbers.cc:761
MonitorElement * mePnPedMapG01L4_[18]
Definition: EELaserTask.h:106
MonitorElement * mePnPedMapG01L2_[18]
Definition: EELaserTask.h:88
std::vector< T >::const_iterator const_iterator
MonitorElement * meAmplMapL2_[18]
Definition: EELaserTask.h:84
EcalMGPASample sample(int i) const
Definition: EcalDataFrame.h:28
MonitorElement * mePnAmplMapG01L1_[18]
Definition: EELaserTask.h:78
MonitorElement * mePnPedMapG01L3_[18]
Definition: EELaserTask.h:97
int gainId() const
get the gainId (2 bits)
void Fill(long long x)
edm::InputTag EcalPnDiodeDigiCollection_
Definition: EELaserTask.h:70
MonitorElement * mePnPedMapG16L2_[18]
Definition: EELaserTask.h:90
MonitorElement * mePnAmplMapG01L4_[18]
Definition: EELaserTask.h:105
MonitorElement * meTimeMapL2_[18]
Definition: EELaserTask.h:85
MonitorElement * mePnPedMapG16L4_[18]
Definition: EELaserTask.h:108
MonitorElement * meShapeMapL3_[18]
Definition: EELaserTask.h:92
static int iSM(const int ism, const EcalSubdetector subdet)
Definition: Numbers.cc:216
static int icEE(const int ism, const int ix, const int iy)
Definition: Numbers.cc:900
MonitorElement * meAmplMapL4_[18]
Definition: EELaserTask.h:102
MonitorElement * mePnPedMapG16L1_[18]
Definition: EELaserTask.h:81
MonitorElement * meTimeMapL1_[18]
Definition: EELaserTask.h:76
MonitorElement * meAmplMapL3_[18]
Definition: EELaserTask.h:93
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:359
MonitorElement * meAmplPNMapL3_[18]
Definition: EELaserTask.h:95
MonitorElement * mePnPedMapG01L1_[18]
Definition: EELaserTask.h:79
MonitorElement * meAmplMapL1_[18]
Definition: EELaserTask.h:75
edm::InputTag EcalRawDataCollection_
Definition: EELaserTask.h:68
MonitorElement * mePnAmplMapG16L3_[18]
Definition: EELaserTask.h:98
edm::InputTag EEDigiCollection_
Definition: EELaserTask.h:69
MonitorElement * mePnAmplMapG16L4_[18]
Definition: EELaserTask.h:107
long long int num
Definition: procUtils.cc:71
void setup(void)
Setup.
Definition: EELaserTask.cc:190
MonitorElement * mePnAmplMapG01L3_[18]
Definition: EELaserTask.h:96
MonitorElement * mePnPedMapG16L3_[18]
Definition: EELaserTask.h:99
MonitorElement * meAmplPNMapL4_[18]
Definition: EELaserTask.h:104
MonitorElement * meAmplPNMapL1_[18]
Definition: EELaserTask.h:77
static void getPNs(const int ism, const int ix, const int iy, std::vector< int > &PNsInLM)
Definition: NumbersPn.cc:51
static EcalSubdetector subDet(const EBDetId &id)
Definition: Numbers.cc:130
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:47
MonitorElement * meAmplPNMapL2_[18]
Definition: EELaserTask.h:86
MonitorElement * meShapeMapL1_[18]
Definition: EELaserTask.h:74
MonitorElement * meShapeMapL4_[18]
Definition: EELaserTask.h:101
MonitorElement * meShapeMapL2_[18]
Definition: EELaserTask.h:83
int adc() const
get the ADC sample (12 bits)
void EELaserTask::beginJob ( void  )
protectedvirtual

BeginJob.

Reimplemented from edm::EDAnalyzer.

Definition at line 99 of file EELaserTask.cc.

References dqmStore_, ievt_, prefixME_, DQMStore::rmdir(), and DQMStore::setCurrentFolder().

99  {
100 
101  ievt_ = 0;
102 
103  if ( dqmStore_ ) {
104  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask");
105  dqmStore_->rmdir(prefixME_ + "/EELaserTask");
106  }
107 
108 }
void rmdir(const std::string &fullpath)
Definition: DQMStore.cc:2296
std::string prefixME_
Definition: EELaserTask.h:62
DQMStore * dqmStore_
Definition: EELaserTask.h:60
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:237
void EELaserTask::beginRun ( const edm::Run r,
const edm::EventSetup c 
)
protectedvirtual

BeginRun.

Reimplemented from edm::EDAnalyzer.

Definition at line 110 of file EELaserTask.cc.

References Numbers::initGeometry(), mergeRuns_, and reset().

110  {
111 
112  Numbers::initGeometry(c, false);
113 
114  if ( ! mergeRuns_ ) this->reset();
115 
116 }
void reset(void)
Reset.
Definition: EELaserTask.cc:122
static void initGeometry(const edm::EventSetup &setup, bool verbose=false)
Definition: Numbers.cc:43
bool mergeRuns_
Definition: EELaserTask.h:66
void EELaserTask::cleanup ( void  )
protected

Cleanup.

Definition at line 468 of file EELaserTask.cc.

References dqmStore_, spr::find(), edm::getName(), i, init_, laserWavelengths_, meAmplMapL1_, meAmplMapL2_, meAmplMapL3_, meAmplMapL4_, meAmplPNMapL1_, meAmplPNMapL2_, meAmplPNMapL3_, meAmplPNMapL4_, mePnAmplMapG01L1_, mePnAmplMapG01L2_, mePnAmplMapG01L3_, mePnAmplMapG01L4_, mePnAmplMapG16L1_, mePnAmplMapG16L2_, mePnAmplMapG16L3_, mePnAmplMapG16L4_, mePnPedMapG01L1_, mePnPedMapG01L2_, mePnPedMapG01L3_, mePnPedMapG01L4_, mePnPedMapG16L1_, mePnPedMapG16L2_, mePnPedMapG16L3_, mePnPedMapG16L4_, meShapeMapL1_, meShapeMapL2_, meShapeMapL3_, meShapeMapL4_, meTimeMapL1_, meTimeMapL2_, meTimeMapL3_, meTimeMapL4_, prefixME_, DQMStore::removeElement(), and DQMStore::setCurrentFolder().

Referenced by endJob().

468  {
469 
470  if ( ! init_ ) return;
471 
472  if ( dqmStore_ ) {
473  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask");
474 
475  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
476 
477  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser1");
478  for (int i = 0; i < 18; i++) {
480  meShapeMapL1_[i] = 0;
482  meAmplMapL1_[i] = 0;
484  meTimeMapL1_[i] = 0;
486  meAmplPNMapL1_[i] = 0;
487  }
488 
489  }
490 
491  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
492 
493  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser2");
494  for (int i = 0; i < 18; i++) {
496  meShapeMapL2_[i] = 0;
498  meAmplMapL2_[i] = 0;
500  meTimeMapL2_[i] = 0;
502  meAmplPNMapL2_[i] = 0;
503  }
504 
505  }
506 
507  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
508 
509  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser3");
510  for (int i = 0; i < 18; i++) {
512  meShapeMapL3_[i] = 0;
514  meAmplMapL3_[i] = 0;
516  meTimeMapL3_[i] = 0;
518  meAmplPNMapL3_[i] = 0;
519  }
520 
521  }
522 
523  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
524 
525  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser4");
526  for (int i = 0; i < 18; i++) {
528  meShapeMapL4_[i] = 0;
530  meAmplMapL4_[i] = 0;
532  meTimeMapL4_[i] = 0;
534  meAmplPNMapL4_[i] = 0;
535  }
536 
537  }
538 
539  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
540 
541  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser1/PN");
542 
543  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser1/PN/Gain01");
544  for (int i = 0; i < 18; i++) {
546  mePnAmplMapG01L1_[i] = 0;
548  mePnPedMapG01L1_[i] = 0;
549  }
550 
551  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser1/PN/Gain16");
552  for (int i = 0; i < 18; i++) {
554  mePnAmplMapG16L1_[i] = 0;
556  mePnPedMapG16L1_[i] = 0;
557  }
558 
559  }
560 
561  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
562 
563  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser2/PN");
564 
565  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser2/PN/Gain01");
566  for (int i = 0; i < 18; i++) {
568  mePnAmplMapG01L2_[i] = 0;
570  mePnPedMapG01L2_[i] = 0;
571  }
572 
573  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser2/PN/Gain16");
574  for (int i = 0; i < 18; i++) {
576  mePnAmplMapG16L2_[i] = 0;
578  mePnPedMapG16L2_[i] = 0;
579  }
580 
581  }
582 
583  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
584 
585  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser3/PN");
586 
587  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser3/PN/Gain01");
588  for (int i = 0; i < 18; i++) {
590  mePnAmplMapG01L3_[i] = 0;
592  mePnPedMapG01L3_[i] = 0;
593  }
594 
595  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser3/PN/Gain16");
596  for (int i = 0; i < 18; i++) {
598  mePnAmplMapG16L3_[i] = 0;
600  mePnPedMapG16L3_[i] = 0;
601  }
602 
603  }
604 
605  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
606 
607  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser4/PN");
608 
609  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser4/PN/Gain01");
610  for (int i = 0; i < 18; i++) {
612  mePnAmplMapG01L4_[i] = 0;
614  mePnPedMapG01L4_[i] = 0;
615  }
616 
617  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser4/PN/Gain16");
618  for (int i = 0; i < 18; i++) {
620  mePnAmplMapG16L4_[i] = 0;
622  mePnPedMapG16L4_[i] = 0;
623  }
624 
625  }
626 
627  }
628 
629  init_ = false;
630 
631 }
MonitorElement * mePnAmplMapG01L2_[18]
Definition: EELaserTask.h:87
MonitorElement * meTimeMapL4_[18]
Definition: EELaserTask.h:103
int i
Definition: DBlmapReader.cc:9
MonitorElement * mePnAmplMapG16L2_[18]
Definition: EELaserTask.h:89
MonitorElement * meTimeMapL3_[18]
Definition: EELaserTask.h:94
MonitorElement * mePnAmplMapG16L1_[18]
Definition: EELaserTask.h:80
std::string prefixME_
Definition: EELaserTask.h:62
MonitorElement * mePnPedMapG01L4_[18]
Definition: EELaserTask.h:106
MonitorElement * mePnPedMapG01L2_[18]
Definition: EELaserTask.h:88
MonitorElement * meAmplMapL2_[18]
Definition: EELaserTask.h:84
MonitorElement * mePnAmplMapG01L1_[18]
Definition: EELaserTask.h:78
MonitorElement * mePnPedMapG01L3_[18]
Definition: EELaserTask.h:97
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
MonitorElement * mePnPedMapG16L2_[18]
Definition: EELaserTask.h:90
MonitorElement * mePnAmplMapG01L4_[18]
Definition: EELaserTask.h:105
MonitorElement * meTimeMapL2_[18]
Definition: EELaserTask.h:85
MonitorElement * mePnPedMapG16L4_[18]
Definition: EELaserTask.h:108
MonitorElement * meShapeMapL3_[18]
Definition: EELaserTask.h:92
MonitorElement * meAmplMapL4_[18]
Definition: EELaserTask.h:102
MonitorElement * mePnPedMapG16L1_[18]
Definition: EELaserTask.h:81
MonitorElement * meTimeMapL1_[18]
Definition: EELaserTask.h:76
void removeElement(const std::string &name)
Definition: DQMStore.cc:2338
MonitorElement * meAmplMapL3_[18]
Definition: EELaserTask.h:93
std::string getName(Reflex::Type &cc)
Definition: ClassFiller.cc:18
DQMStore * dqmStore_
Definition: EELaserTask.h:60
MonitorElement * meAmplPNMapL3_[18]
Definition: EELaserTask.h:95
std::vector< int > laserWavelengths_
Definition: EELaserTask.h:72
MonitorElement * mePnPedMapG01L1_[18]
Definition: EELaserTask.h:79
MonitorElement * meAmplMapL1_[18]
Definition: EELaserTask.h:75
MonitorElement * mePnAmplMapG16L3_[18]
Definition: EELaserTask.h:98
MonitorElement * mePnAmplMapG16L4_[18]
Definition: EELaserTask.h:107
MonitorElement * mePnAmplMapG01L3_[18]
Definition: EELaserTask.h:96
MonitorElement * mePnPedMapG16L3_[18]
Definition: EELaserTask.h:99
MonitorElement * meAmplPNMapL4_[18]
Definition: EELaserTask.h:104
MonitorElement * meAmplPNMapL1_[18]
Definition: EELaserTask.h:77
MonitorElement * meAmplPNMapL2_[18]
Definition: EELaserTask.h:86
MonitorElement * meShapeMapL1_[18]
Definition: EELaserTask.h:74
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:237
MonitorElement * meShapeMapL4_[18]
Definition: EELaserTask.h:101
MonitorElement * meShapeMapL2_[18]
Definition: EELaserTask.h:83
void EELaserTask::endJob ( void  )
protectedvirtual

EndJob.

Reimplemented from edm::EDAnalyzer.

Definition at line 633 of file EELaserTask.cc.

References cleanup(), enableCleanup_, and ievt_.

633  {
634 
635  edm::LogInfo("EELaserTask") << "analyzed " << ievt_ << " events";
636 
637  if ( enableCleanup_ ) this->cleanup();
638 
639 }
void cleanup(void)
Cleanup.
Definition: EELaserTask.cc:468
bool enableCleanup_
Definition: EELaserTask.h:64
void EELaserTask::endRun ( const edm::Run r,
const edm::EventSetup c 
)
protectedvirtual

EndRun.

Reimplemented from edm::EDAnalyzer.

Definition at line 118 of file EELaserTask.cc.

118  {
119 
120 }
void EELaserTask::reset ( void  )
protected

Reset.

Definition at line 122 of file EELaserTask.cc.

References spr::find(), i, laserWavelengths_, meAmplMapL1_, meAmplMapL2_, meAmplMapL3_, meAmplMapL4_, meAmplPNMapL1_, meAmplPNMapL2_, meAmplPNMapL3_, meAmplPNMapL4_, mePnAmplMapG01L1_, mePnAmplMapG01L2_, mePnAmplMapG01L3_, mePnAmplMapG01L4_, mePnAmplMapG16L1_, mePnAmplMapG16L2_, mePnAmplMapG16L3_, mePnAmplMapG16L4_, mePnPedMapG01L1_, mePnPedMapG01L2_, mePnPedMapG01L3_, mePnPedMapG01L4_, mePnPedMapG16L1_, mePnPedMapG16L2_, mePnPedMapG16L3_, mePnPedMapG16L4_, meShapeMapL1_, meShapeMapL2_, meShapeMapL3_, meShapeMapL4_, meTimeMapL1_, meTimeMapL2_, meTimeMapL3_, meTimeMapL4_, and MonitorElement::Reset().

Referenced by beginRun().

122  {
123 
124  for (int i = 0; i < 18; i++) {
125  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
126  if ( meShapeMapL1_[i] ) meShapeMapL1_[i]->Reset();
127  if ( meAmplMapL1_[i] ) meAmplMapL1_[i]->Reset();
128  if ( meTimeMapL1_[i] ) meTimeMapL1_[i]->Reset();
129  if ( meAmplPNMapL1_[i] ) meAmplPNMapL1_[i]->Reset();
130  }
131 
132  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
133  if ( meShapeMapL2_[i] ) meShapeMapL2_[i]->Reset();
134  if ( meAmplMapL2_[i] ) meAmplMapL2_[i]->Reset();
135  if ( meTimeMapL2_[i] ) meTimeMapL2_[i]->Reset();
136  if ( meAmplPNMapL2_[i] ) meAmplPNMapL2_[i]->Reset();
137  }
138 
139  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
140  if ( meShapeMapL3_[i] ) meShapeMapL3_[i]->Reset();
141  if ( meAmplMapL3_[i] ) meAmplMapL3_[i]->Reset();
142  if ( meTimeMapL3_[i] ) meTimeMapL3_[i]->Reset();
143  if ( meAmplPNMapL3_[i] ) meAmplPNMapL3_[i]->Reset();
144  }
145 
146  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
147  if ( meShapeMapL4_[i] ) meShapeMapL4_[i]->Reset();
148  if ( meAmplMapL4_[i] ) meAmplMapL4_[i]->Reset();
149  if ( meTimeMapL4_[i] ) meTimeMapL4_[i]->Reset();
150  if ( meAmplPNMapL4_[i] ) meAmplPNMapL4_[i]->Reset();
151  }
152 
153  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
156 
159  }
160 
161 
162  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
165 
168  }
169 
170  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
173 
176  }
177 
178  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
181 
184  }
185 
186  }
187 
188 }
MonitorElement * mePnAmplMapG01L2_[18]
Definition: EELaserTask.h:87
MonitorElement * meTimeMapL4_[18]
Definition: EELaserTask.h:103
int i
Definition: DBlmapReader.cc:9
MonitorElement * mePnAmplMapG16L2_[18]
Definition: EELaserTask.h:89
MonitorElement * meTimeMapL3_[18]
Definition: EELaserTask.h:94
MonitorElement * mePnAmplMapG16L1_[18]
Definition: EELaserTask.h:80
MonitorElement * mePnPedMapG01L4_[18]
Definition: EELaserTask.h:106
MonitorElement * mePnPedMapG01L2_[18]
Definition: EELaserTask.h:88
MonitorElement * meAmplMapL2_[18]
Definition: EELaserTask.h:84
MonitorElement * mePnAmplMapG01L1_[18]
Definition: EELaserTask.h:78
MonitorElement * mePnPedMapG01L3_[18]
Definition: EELaserTask.h:97
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
MonitorElement * mePnPedMapG16L2_[18]
Definition: EELaserTask.h:90
MonitorElement * mePnAmplMapG01L4_[18]
Definition: EELaserTask.h:105
MonitorElement * meTimeMapL2_[18]
Definition: EELaserTask.h:85
MonitorElement * mePnPedMapG16L4_[18]
Definition: EELaserTask.h:108
MonitorElement * meShapeMapL3_[18]
Definition: EELaserTask.h:92
MonitorElement * meAmplMapL4_[18]
Definition: EELaserTask.h:102
MonitorElement * mePnPedMapG16L1_[18]
Definition: EELaserTask.h:81
MonitorElement * meTimeMapL1_[18]
Definition: EELaserTask.h:76
MonitorElement * meAmplMapL3_[18]
Definition: EELaserTask.h:93
MonitorElement * meAmplPNMapL3_[18]
Definition: EELaserTask.h:95
std::vector< int > laserWavelengths_
Definition: EELaserTask.h:72
MonitorElement * mePnPedMapG01L1_[18]
Definition: EELaserTask.h:79
MonitorElement * meAmplMapL1_[18]
Definition: EELaserTask.h:75
MonitorElement * mePnAmplMapG16L3_[18]
Definition: EELaserTask.h:98
MonitorElement * mePnAmplMapG16L4_[18]
Definition: EELaserTask.h:107
MonitorElement * mePnAmplMapG01L3_[18]
Definition: EELaserTask.h:96
MonitorElement * mePnPedMapG16L3_[18]
Definition: EELaserTask.h:99
MonitorElement * meAmplPNMapL4_[18]
Definition: EELaserTask.h:104
MonitorElement * meAmplPNMapL1_[18]
Definition: EELaserTask.h:77
MonitorElement * meAmplPNMapL2_[18]
Definition: EELaserTask.h:86
MonitorElement * meShapeMapL1_[18]
Definition: EELaserTask.h:74
void Reset(void)
reset ME (ie. contents, errors, etc)
MonitorElement * meShapeMapL4_[18]
Definition: EELaserTask.h:101
MonitorElement * meShapeMapL2_[18]
Definition: EELaserTask.h:83
void EELaserTask::setup ( void  )
protected

Setup.

Definition at line 190 of file EELaserTask.cc.

References DQMStore::bookProfile(), DQMStore::bookProfile2D(), dqmStore_, spr::find(), trackerHits::histo, i, init_, Numbers::ix0EE(), Numbers::iy0EE(), laserWavelengths_, meAmplMapL1_, meAmplMapL2_, meAmplMapL3_, meAmplMapL4_, meAmplPNMapL1_, meAmplPNMapL2_, meAmplPNMapL3_, meAmplPNMapL4_, mePnAmplMapG01L1_, mePnAmplMapG01L2_, mePnAmplMapG01L3_, mePnAmplMapG01L4_, mePnAmplMapG16L1_, mePnAmplMapG16L2_, mePnAmplMapG16L3_, mePnAmplMapG16L4_, mePnPedMapG01L1_, mePnPedMapG01L2_, mePnPedMapG01L3_, mePnPedMapG01L4_, mePnPedMapG16L1_, mePnPedMapG16L2_, mePnPedMapG16L3_, mePnPedMapG16L4_, meShapeMapL1_, meShapeMapL2_, meShapeMapL3_, meShapeMapL4_, meTimeMapL1_, meTimeMapL2_, meTimeMapL3_, meTimeMapL4_, prefixME_, Numbers::sEE(), MonitorElement::setAxisTitle(), DQMStore::setCurrentFolder(), and DQMStore::tag().

Referenced by analyze().

190  {
191 
192  init_ = true;
193 
194  char histo[200];
195 
196  if ( dqmStore_ ) {
197  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask");
198 
199  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
200 
201  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser1");
202  for (int i = 0; i < 18; i++) {
203  sprintf(histo, "EELT shape %s L1", Numbers::sEE(i+1).c_str());
204  meShapeMapL1_[i] = dqmStore_->bookProfile2D(histo, histo, 850, 0., 850., 10, 0., 10., 4096, 0., 4096., "s");
205  meShapeMapL1_[i]->setAxisTitle("channel", 1);
206  meShapeMapL1_[i]->setAxisTitle("sample", 2);
207  meShapeMapL1_[i]->setAxisTitle("amplitude", 3);
208  dqmStore_->tag(meShapeMapL1_[i], i+1);
209  sprintf(histo, "EELT amplitude %s L1", Numbers::sEE(i+1).c_str());
210  meAmplMapL1_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 4096, 0., 4096.*12., "s");
211  meAmplMapL1_[i]->setAxisTitle("ix", 1);
212  if ( i+1 >= 1 && i+1 <= 9 ) meAmplMapL1_[i]->setAxisTitle("101-ix", 1);
213  meAmplMapL1_[i]->setAxisTitle("iy", 2);
214  dqmStore_->tag(meAmplMapL1_[i], i+1);
215  sprintf(histo, "EELT timing %s L1", Numbers::sEE(i+1).c_str());
216  meTimeMapL1_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 250, 0., 10., "s");
217  meTimeMapL1_[i]->setAxisTitle("ix", 1);
218  if ( i+1 >= 1 && i+1 <= 9 ) meTimeMapL1_[i]->setAxisTitle("101-ix", 1);
219  meTimeMapL1_[i]->setAxisTitle("iy", 2);
220  dqmStore_->tag(meTimeMapL1_[i], i+1);
221  sprintf(histo, "EELT amplitude over PN %s L1", Numbers::sEE(i+1).c_str());
222  meAmplPNMapL1_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 4096, 0., 4096.*12., "s");
223  meAmplPNMapL1_[i]->setAxisTitle("ix", 1);
224  if ( i+1 >= 1 && i+1 <= 9 ) meAmplPNMapL1_[i]->setAxisTitle("101-ix", 1);
225  meAmplPNMapL1_[i]->setAxisTitle("iy", 2);
226  dqmStore_->tag(meAmplPNMapL1_[i], i+1);
227  }
228 
229  }
230 
231  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
232 
233  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser2");
234  for (int i = 0; i < 18; i++) {
235  sprintf(histo, "EELT shape %s L2", Numbers::sEE(i+1).c_str());
236  meShapeMapL2_[i] = dqmStore_->bookProfile2D(histo, histo, 850, 0., 850., 10, 0., 10., 4096, 0., 4096., "s");
237  meShapeMapL2_[i]->setAxisTitle("channel", 1);
238  meShapeMapL2_[i]->setAxisTitle("sample", 2);
239  meShapeMapL2_[i]->setAxisTitle("amplitude", 3);
240  dqmStore_->tag(meShapeMapL2_[i], i+1);
241  sprintf(histo, "EELT amplitude %s L2", Numbers::sEE(i+1).c_str());
242  meAmplMapL2_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 4096, 0., 4096.*12., "s");
243  meAmplMapL2_[i]->setAxisTitle("ix", 1);
244  if ( i+1 >= 1 && i+1 <= 9 ) meAmplMapL2_[i]->setAxisTitle("101-ix", 1);
245  meAmplMapL2_[i]->setAxisTitle("iy", 2);
246  dqmStore_->tag(meAmplMapL2_[i], i+1);
247  sprintf(histo, "EELT timing %s L2", Numbers::sEE(i+1).c_str());
248  meTimeMapL2_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 250, 0., 10., "s");
249  meTimeMapL2_[i]->setAxisTitle("ix", 1);
250  if ( i+1 >= 1 && i+1 <= 9 ) meTimeMapL2_[i]->setAxisTitle("101-ix", 1);
251  meTimeMapL2_[i]->setAxisTitle("iy", 2);
252  dqmStore_->tag(meTimeMapL2_[i], i+1);
253  sprintf(histo, "EELT amplitude over PN %s L2", Numbers::sEE(i+1).c_str());
254  meAmplPNMapL2_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 4096, 0., 4096.*12., "s");
255  meAmplPNMapL2_[i]->setAxisTitle("ix", 1);
256  if ( i+1 >= 1 && i+1 <= 9 ) meAmplPNMapL2_[i]->setAxisTitle("101-ix", 1);
257  meAmplPNMapL2_[i]->setAxisTitle("iy", 2);
258  dqmStore_->tag(meAmplPNMapL2_[i], i+1);
259  }
260 
261  }
262 
263 
264  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
265 
266  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser3");
267  for (int i = 0; i < 18; i++) {
268  sprintf(histo, "EELT shape %s L3", Numbers::sEE(i+1).c_str());
269  meShapeMapL3_[i] = dqmStore_->bookProfile2D(histo, histo, 850, 0., 850., 10, 0., 10., 4096, 0., 4096., "s");
270  meShapeMapL3_[i]->setAxisTitle("channel", 1);
271  meShapeMapL3_[i]->setAxisTitle("sample", 2);
272  meShapeMapL3_[i]->setAxisTitle("amplitude", 3);
273  dqmStore_->tag(meShapeMapL3_[i], i+1);
274  sprintf(histo, "EELT amplitude %s L3", Numbers::sEE(i+1).c_str());
275  meAmplMapL3_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 4096, 0., 4096.*12., "s");
276  meAmplMapL3_[i]->setAxisTitle("ix", 1);
277  if ( i+1 >= 1 && i+1 <= 9 ) meAmplMapL3_[i]->setAxisTitle("101-ix", 1);
278  meAmplMapL3_[i]->setAxisTitle("iy", 2);
279  dqmStore_->tag(meAmplMapL3_[i], i+1);
280  sprintf(histo, "EELT timing %s L3", Numbers::sEE(i+1).c_str());
281  meTimeMapL3_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 250, 0., 10., "s");
282  meTimeMapL3_[i]->setAxisTitle("ix", 1);
283  if ( i+1 >= 1 && i+1 <= 9 ) meTimeMapL3_[i]->setAxisTitle("101-ix", 1);
284  meTimeMapL3_[i]->setAxisTitle("iy", 2);
285  dqmStore_->tag(meTimeMapL3_[i], i+1);
286  sprintf(histo, "EELT amplitude over PN %s L3", Numbers::sEE(i+1).c_str());
287  meAmplPNMapL3_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 4096, 0., 4096.*12., "s");
288  meAmplPNMapL3_[i]->setAxisTitle("ix", 1);
289  if ( i+1 >= 1 && i+1 <= 9 ) meAmplPNMapL3_[i]->setAxisTitle("101-ix", 1);
290  meAmplPNMapL3_[i]->setAxisTitle("iy", 2);
291  dqmStore_->tag(meAmplPNMapL3_[i], i+1);
292  }
293 
294  }
295 
296  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
297 
298  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser4");
299  for (int i = 0; i < 18; i++) {
300  sprintf(histo, "EELT shape %s L4", Numbers::sEE(i+1).c_str());
301  meShapeMapL4_[i] = dqmStore_->bookProfile2D(histo, histo, 850, 0., 850., 10, 0., 10., 4096, 0., 4096., "s");
302  meShapeMapL4_[i]->setAxisTitle("channel", 1);
303  meShapeMapL4_[i]->setAxisTitle("sample", 2);
304  meShapeMapL4_[i]->setAxisTitle("amplitude", 3);
305  dqmStore_->tag(meShapeMapL4_[i], i+1);
306  sprintf(histo, "EELT amplitude %s L4", Numbers::sEE(i+1).c_str());
307  meAmplMapL4_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 4096, 0., 4096.*12., "s");
308  meAmplMapL4_[i]->setAxisTitle("ix", 1);
309  if ( i+1 >= 1 && i+1 <= 9 ) meAmplMapL4_[i]->setAxisTitle("101-ix", 1);
310  meAmplMapL4_[i]->setAxisTitle("iy", 2);
311  dqmStore_->tag(meAmplMapL4_[i], i+1);
312  sprintf(histo, "EELT timing %s L4", Numbers::sEE(i+1).c_str());
313  meTimeMapL4_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 250, 0., 10., "s");
314  meTimeMapL4_[i]->setAxisTitle("ix", 1);
315  if ( i+1 >= 1 && i+1 <= 9 ) meTimeMapL4_[i]->setAxisTitle("101-ix", 1);
316  meTimeMapL4_[i]->setAxisTitle("iy", 2);
317  dqmStore_->tag(meTimeMapL4_[i], i+1);
318  sprintf(histo, "EELT amplitude over PN %s L4", Numbers::sEE(i+1).c_str());
319  meAmplPNMapL4_[i] = dqmStore_->bookProfile2D(histo, histo, 50, Numbers::ix0EE(i+1)+0., Numbers::ix0EE(i+1)+50., 50, Numbers::iy0EE(i+1)+0., Numbers::iy0EE(i+1)+50., 4096, 0., 4096.*12., "s");
320  meAmplPNMapL4_[i]->setAxisTitle("ix", 1);
321  if ( i+1 >= 1 && i+1 <= 9 ) meAmplPNMapL4_[i]->setAxisTitle("101-ix", 1);
322  meAmplPNMapL4_[i]->setAxisTitle("iy", 2);
323  dqmStore_->tag(meAmplPNMapL4_[i], i+1);
324  }
325 
326  }
327 
328  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
329 
330  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser1/PN");
331 
332  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser1/PN/Gain01");
333  for (int i = 0; i < 18; i++) {
334  sprintf(histo, "EELT PNs amplitude %s G01 L1", Numbers::sEE(i+1).c_str());
335  mePnAmplMapG01L1_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
336  mePnAmplMapG01L1_[i]->setAxisTitle("channel", 1);
337  mePnAmplMapG01L1_[i]->setAxisTitle("amplitude", 2);
338  dqmStore_->tag(mePnAmplMapG01L1_[i], i+1);
339  sprintf(histo, "EELT PNs pedestal %s G01 L1", Numbers::sEE(i+1).c_str());
340  mePnPedMapG01L1_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
341  mePnPedMapG01L1_[i]->setAxisTitle("channel", 1);
342  mePnPedMapG01L1_[i]->setAxisTitle("pedestal", 2);
343  dqmStore_->tag(mePnPedMapG01L1_[i], i+1);
344  }
345 
346  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser1/PN/Gain16");
347  for (int i = 0; i < 18; i++) {
348  sprintf(histo, "EELT PNs amplitude %s G16 L1", Numbers::sEE(i+1).c_str());
349  mePnAmplMapG16L1_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
350  mePnAmplMapG16L1_[i]->setAxisTitle("channel", 1);
351  mePnAmplMapG16L1_[i]->setAxisTitle("amplitude", 2);
352  dqmStore_->tag(mePnAmplMapG16L1_[i], i+1);
353  sprintf(histo, "EELT PNs pedestal %s G16 L1", Numbers::sEE(i+1).c_str());
354  mePnPedMapG16L1_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
355  mePnPedMapG16L1_[i]->setAxisTitle("channel", 1);
356  mePnPedMapG16L1_[i]->setAxisTitle("pedestal", 2);
357  dqmStore_->tag(mePnPedMapG16L1_[i], i+1);
358  }
359 
360  }
361 
362  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
363 
364  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser2/PN");
365 
366  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser2/PN/Gain01");
367  for (int i = 0; i < 18; i++) {
368  sprintf(histo, "EELT PNs amplitude %s G01 L2", Numbers::sEE(i+1).c_str());
369  mePnAmplMapG01L2_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
370  mePnAmplMapG01L2_[i]->setAxisTitle("amplitude", 2);
371  mePnAmplMapG01L2_[i]->setAxisTitle("channel", 1);
372  dqmStore_->tag(mePnAmplMapG01L2_[i], i+1);
373  sprintf(histo, "EELT PNs pedestal %s G01 L2", Numbers::sEE(i+1).c_str());
374  mePnPedMapG01L2_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
375  mePnPedMapG01L2_[i]->setAxisTitle("channel", 1);
376  mePnPedMapG01L2_[i]->setAxisTitle("pedestal", 2);
377  dqmStore_->tag(mePnPedMapG01L2_[i], i+1);
378  }
379 
380  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser2/PN/Gain16");
381  for (int i = 0; i < 18; i++) {
382  sprintf(histo, "EELT PNs amplitude %s G16 L2", Numbers::sEE(i+1).c_str());
383  mePnAmplMapG16L2_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
384  mePnAmplMapG16L2_[i]->setAxisTitle("channel", 1);
385  mePnAmplMapG16L2_[i]->setAxisTitle("amplitude", 2);
386  dqmStore_->tag(mePnAmplMapG16L2_[i], i+1);
387  sprintf(histo, "EELT PNs pedestal %s G16 L2", Numbers::sEE(i+1).c_str());
388  mePnPedMapG16L2_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
389  mePnPedMapG16L2_[i]->setAxisTitle("channel", 1);
390  mePnPedMapG16L2_[i]->setAxisTitle("pedestal", 2);
391  dqmStore_->tag(mePnPedMapG16L2_[i], i+1);
392  }
393 
394  }
395 
396  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
397 
398  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser3/PN");
399 
400  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser3/PN/Gain01");
401  for (int i = 0; i < 18; i++) {
402  sprintf(histo, "EELT PNs amplitude %s G01 L3", Numbers::sEE(i+1).c_str());
403  mePnAmplMapG01L3_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
404  mePnAmplMapG01L3_[i]->setAxisTitle("channel", 1);
405  mePnAmplMapG01L3_[i]->setAxisTitle("amplitude", 2);
406  dqmStore_->tag(mePnAmplMapG01L3_[i], i+1);
407  sprintf(histo, "EELT PNs pedestal %s G01 L3", Numbers::sEE(i+1).c_str());
408  mePnPedMapG01L3_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
409  mePnPedMapG01L3_[i]->setAxisTitle("channel", 1);
410  mePnPedMapG01L3_[i]->setAxisTitle("pedestal", 2);
411  dqmStore_->tag(mePnPedMapG01L3_[i], i+1);
412  }
413 
414  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser3/PN/Gain16");
415  for (int i = 0; i < 18; i++) {
416  sprintf(histo, "EELT PNs amplitude %s G16 L3", Numbers::sEE(i+1).c_str());
417  mePnAmplMapG16L3_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
418  mePnAmplMapG16L3_[i]->setAxisTitle("channel", 1);
419  mePnAmplMapG16L3_[i]->setAxisTitle("amplitude", 2);
420  dqmStore_->tag(mePnAmplMapG16L3_[i], i+1);
421  sprintf(histo, "EELT PNs pedestal %s G16 L3", Numbers::sEE(i+1).c_str());
422  mePnPedMapG16L3_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
423  mePnPedMapG16L3_[i]->setAxisTitle("channel", 1);
424  mePnPedMapG16L3_[i]->setAxisTitle("pedestal", 2);
425  dqmStore_->tag(mePnPedMapG16L3_[i], i+1);
426  }
427 
428  }
429 
430  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
431 
432  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser4/PN");
433 
434  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser4/PN/Gain01");
435  for (int i = 0; i < 18; i++) {
436  sprintf(histo, "EELT PNs amplitude %s G01 L4", Numbers::sEE(i+1).c_str());
437  mePnAmplMapG01L4_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
438  mePnAmplMapG01L4_[i]->setAxisTitle("channel", 1);
439  mePnAmplMapG01L4_[i]->setAxisTitle("amplitude", 2);
440  dqmStore_->tag(mePnAmplMapG01L4_[i], i+1);
441  sprintf(histo, "EELT PNs pedestal %s G01 L4", Numbers::sEE(i+1).c_str());
442  mePnPedMapG01L4_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
443  mePnPedMapG01L4_[i]->setAxisTitle("channel", 1);
444  mePnPedMapG01L4_[i]->setAxisTitle("pedestal", 2);
445  dqmStore_->tag(mePnPedMapG01L4_[i], i+1);
446  }
447 
448  dqmStore_->setCurrentFolder(prefixME_ + "/EELaserTask/Laser4/PN/Gain16");
449  for (int i = 0; i < 18; i++) {
450  sprintf(histo, "EELT PNs amplitude %s G16 L4", Numbers::sEE(i+1).c_str());
451  mePnAmplMapG16L4_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
452  mePnAmplMapG16L4_[i]->setAxisTitle("channel", 1);
453  mePnAmplMapG16L4_[i]->setAxisTitle("amplitude", 2);
454  dqmStore_->tag(mePnAmplMapG16L4_[i], i+1);
455  sprintf(histo, "EELT PNs pedestal %s G16 L4", Numbers::sEE(i+1).c_str());
456  mePnPedMapG16L4_[i] = dqmStore_->bookProfile(histo, histo, 10, 0., 10., 4096, 0., 4096., "s");
457  mePnPedMapG16L4_[i]->setAxisTitle("channel", 1);
458  mePnPedMapG16L4_[i]->setAxisTitle("pedestal", 2);
459  dqmStore_->tag(mePnPedMapG16L4_[i], i+1);
460  }
461 
462  }
463 
464  }
465 
466 }
MonitorElement * mePnAmplMapG01L2_[18]
Definition: EELaserTask.h:87
MonitorElement * meTimeMapL4_[18]
Definition: EELaserTask.h:103
int i
Definition: DBlmapReader.cc:9
MonitorElement * mePnAmplMapG16L2_[18]
Definition: EELaserTask.h:89
MonitorElement * meTimeMapL3_[18]
Definition: EELaserTask.h:94
MonitorElement * mePnAmplMapG16L1_[18]
Definition: EELaserTask.h:80
static int iy0EE(const int ism)
Definition: Numbers.cc:964
std::string prefixME_
Definition: EELaserTask.h:62
MonitorElement * mePnPedMapG01L4_[18]
Definition: EELaserTask.h:106
static std::string sEE(const int ism)
Definition: Numbers.cc:199
MonitorElement * mePnPedMapG01L2_[18]
Definition: EELaserTask.h:88
MonitorElement * meAmplMapL2_[18]
Definition: EELaserTask.h:84
MonitorElement * mePnAmplMapG01L1_[18]
Definition: EELaserTask.h:78
tuple histo
Definition: trackerHits.py:12
MonitorElement * mePnPedMapG01L3_[18]
Definition: EELaserTask.h:97
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
void tag(MonitorElement *me, unsigned int myTag)
Definition: DQMStore.cc:1156
MonitorElement * mePnPedMapG16L2_[18]
Definition: EELaserTask.h:90
MonitorElement * mePnAmplMapG01L4_[18]
Definition: EELaserTask.h:105
MonitorElement * meTimeMapL2_[18]
Definition: EELaserTask.h:85
MonitorElement * mePnPedMapG16L4_[18]
Definition: EELaserTask.h:108
MonitorElement * meShapeMapL3_[18]
Definition: EELaserTask.h:92
MonitorElement * meAmplMapL4_[18]
Definition: EELaserTask.h:102
MonitorElement * mePnPedMapG16L1_[18]
Definition: EELaserTask.h:81
MonitorElement * meTimeMapL1_[18]
Definition: EELaserTask.h:76
MonitorElement * meAmplMapL3_[18]
Definition: EELaserTask.h:93
MonitorElement * bookProfile(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const char *option="s")
Definition: DQMStore.cc:833
DQMStore * dqmStore_
Definition: EELaserTask.h:60
MonitorElement * meAmplPNMapL3_[18]
Definition: EELaserTask.h:95
std::vector< int > laserWavelengths_
Definition: EELaserTask.h:72
MonitorElement * mePnPedMapG01L1_[18]
Definition: EELaserTask.h:79
MonitorElement * meAmplMapL1_[18]
Definition: EELaserTask.h:75
MonitorElement * mePnAmplMapG16L3_[18]
Definition: EELaserTask.h:98
MonitorElement * mePnAmplMapG16L4_[18]
Definition: EELaserTask.h:107
MonitorElement * mePnAmplMapG01L3_[18]
Definition: EELaserTask.h:96
MonitorElement * mePnPedMapG16L3_[18]
Definition: EELaserTask.h:99
MonitorElement * meAmplPNMapL4_[18]
Definition: EELaserTask.h:104
MonitorElement * meAmplPNMapL1_[18]
Definition: EELaserTask.h:77
static int ix0EE(const int ism)
Definition: Numbers.cc:946
MonitorElement * meAmplPNMapL2_[18]
Definition: EELaserTask.h:86
MonitorElement * meShapeMapL1_[18]
Definition: EELaserTask.h:74
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:237
MonitorElement * meShapeMapL4_[18]
Definition: EELaserTask.h:101
MonitorElement * meShapeMapL2_[18]
Definition: EELaserTask.h:83
MonitorElement * bookProfile2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, int nchZ, double lowZ, double highZ, const char *option="s")
Definition: DQMStore.cc:977

Member Data Documentation

DQMStore* EELaserTask::dqmStore_
private

Definition at line 60 of file EELaserTask.h.

Referenced by beginJob(), cleanup(), EELaserTask(), and setup().

edm::InputTag EELaserTask::EcalPnDiodeDigiCollection_
private

Definition at line 70 of file EELaserTask.h.

Referenced by analyze(), and EELaserTask().

edm::InputTag EELaserTask::EcalRawDataCollection_
private

Definition at line 68 of file EELaserTask.h.

Referenced by analyze(), and EELaserTask().

edm::InputTag EELaserTask::EcalUncalibratedRecHitCollection_
private

Definition at line 71 of file EELaserTask.h.

Referenced by analyze(), and EELaserTask().

edm::InputTag EELaserTask::EEDigiCollection_
private

Definition at line 69 of file EELaserTask.h.

Referenced by analyze(), and EELaserTask().

bool EELaserTask::enableCleanup_
private

Definition at line 64 of file EELaserTask.h.

Referenced by EELaserTask(), and endJob().

int EELaserTask::ievt_
private

Definition at line 58 of file EELaserTask.h.

Referenced by analyze(), beginJob(), and endJob().

bool EELaserTask::init_
private

Definition at line 110 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), and setup().

std::vector<int> EELaserTask::laserWavelengths_
private

Definition at line 72 of file EELaserTask.h.

Referenced by cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meAmplMapL1_[18]
private

Definition at line 75 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meAmplMapL2_[18]
private

Definition at line 84 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meAmplMapL3_[18]
private

Definition at line 93 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meAmplMapL4_[18]
private

Definition at line 102 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meAmplPNMapL1_[18]
private

Definition at line 77 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meAmplPNMapL2_[18]
private

Definition at line 86 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meAmplPNMapL3_[18]
private

Definition at line 95 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meAmplPNMapL4_[18]
private

Definition at line 104 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnAmplMapG01L1_[18]
private

Definition at line 78 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnAmplMapG01L2_[18]
private

Definition at line 87 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnAmplMapG01L3_[18]
private

Definition at line 96 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnAmplMapG01L4_[18]
private

Definition at line 105 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnAmplMapG16L1_[18]
private

Definition at line 80 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnAmplMapG16L2_[18]
private

Definition at line 89 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnAmplMapG16L3_[18]
private

Definition at line 98 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnAmplMapG16L4_[18]
private

Definition at line 107 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnPedMapG01L1_[18]
private

Definition at line 79 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnPedMapG01L2_[18]
private

Definition at line 88 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnPedMapG01L3_[18]
private

Definition at line 97 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnPedMapG01L4_[18]
private

Definition at line 106 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnPedMapG16L1_[18]
private

Definition at line 81 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnPedMapG16L2_[18]
private

Definition at line 90 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnPedMapG16L3_[18]
private

Definition at line 99 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::mePnPedMapG16L4_[18]
private

Definition at line 108 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

bool EELaserTask::mergeRuns_
private

Definition at line 66 of file EELaserTask.h.

Referenced by beginRun(), and EELaserTask().

MonitorElement* EELaserTask::meShapeMapL1_[18]
private

Definition at line 74 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meShapeMapL2_[18]
private

Definition at line 83 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meShapeMapL3_[18]
private

Definition at line 92 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meShapeMapL4_[18]
private

Definition at line 101 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meTimeMapL1_[18]
private

Definition at line 76 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meTimeMapL2_[18]
private

Definition at line 85 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meTimeMapL3_[18]
private

Definition at line 94 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

MonitorElement* EELaserTask::meTimeMapL4_[18]
private

Definition at line 103 of file EELaserTask.h.

Referenced by analyze(), cleanup(), EELaserTask(), reset(), and setup().

std::string EELaserTask::prefixME_
private

Definition at line 62 of file EELaserTask.h.

Referenced by beginJob(), cleanup(), EELaserTask(), and setup().