CMS 3D CMS Logo

List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes
EcalDisplaysByEvent Class Reference

#include <EcalDisplaysByEvent.h>

Inheritance diagram for EcalDisplaysByEvent:
edm::EDAnalyzer edm::EDConsumerBase

Public Member Functions

 EcalDisplaysByEvent (const edm::ParameterSet &)
 
 ~EcalDisplaysByEvent () override
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
 ~EDAnalyzer () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Types

enum  Ecal2DHistSubDetType {
  EB_FINE = 0, EB_COARSE = 1, EEM_FINE = 2, EEM_COARSE = 3,
  EEP_FINE = 4, EEP_COARSE = 5
}
 

Private Member Functions

void analyze (edm::Event const &, edm::EventSetup const &) override
 
void beginRun (edm::Run const &, edm::EventSetup const &) override
 
void deleteEvtByEvtHists ()
 
void drawCanvas (TCanvas *canvas, TH1F *hist1, TH1F *hist2, TH1F *hist3)
 
void drawCanvas (TCanvas *canvas, TH2F *hist1, TH2F *hist2, TH2F *hist3)
 
void drawCanvas (TCanvas *canvas, TH3F *hist1, TH3F *hist2, TH3F *hist3)
 
void drawEELines ()
 
void drawHistos ()
 
void drawTimingErrors (TProfile2D *profile)
 
void endJob () override
 
std::string floatToString (float num)
 
int getEEIndex (EcalElectronicsId elecId)
 
TCanvas * init2DEcalCanvas (std::string canvasName)
 
TH2F * init2DEcalHist (std::string histTypeName, int subDet)
 
TH3F * init3DEcalHist (std::string histTypeName, int dubDet)
 
void initAllEventHistos ()
 
void initEvtByEvtHists (int naiveEvtNum_, int ievt)
 
void initHists (int)
 
std::string intToString (int num)
 
void makeHistos (edm::Handle< EBDigiCollection > ebDigis)
 
void makeHistos (edm::Handle< EEDigiCollection > eeDigis)
 
void makeHistos (edm::Handle< EcalRecHitCollection > hits)
 
TGraph * selectDigi (DetId det, int ievt)
 
void selectHits (edm::Handle< EcalRecHitCollection > hits, int ievt, edm::ESHandle< CaloTopology > caloTopo)
 

Private Attributes

int abscissa [10]
 
TH1F * allFedsTimingHist_
 
TTree * canvasNames_
 
std::map< int, float > crysAndAmplitudesMap_
 
TCanvas * digiOccupancyCanvas_
 
TCanvas * digiOccupancyCanvasAll_
 
TCanvas * digiOccupancyCoarseCanvas_
 
TCanvas * digiOccupancyCoarseCanvasAll_
 
TH2F * digiOccupancyEB_
 
TH2F * digiOccupancyEBAll_
 
TH2F * digiOccupancyEBcoarse_
 
TH2F * digiOccupancyEBcoarseAll_
 
TH2F * digiOccupancyEEM_
 
TH2F * digiOccupancyEEMAll_
 
TH2F * digiOccupancyEEMcoarse_
 
TH2F * digiOccupancyEEMcoarseAll_
 
TH2F * digiOccupancyEEP_
 
TH2F * digiOccupancyEEPAll_
 
TH2F * digiOccupancyEEPcoarse_
 
TH2F * digiOccupancyEEPcoarseAll_
 
edm::InputTag EBDigis_
 
edm::Handle< EBDigiCollectionEBdigisHandle
 
edm::InputTag EBRecHitCollection_
 
const EcalElectronicsMappingecalElectronicsMap_
 
edm::InputTag EEDigis_
 
edm::Handle< EEDigiCollectionEEdigisHandle
 
edm::InputTag EERecHitCollection_
 
TCanvas * energyCanvas_
 
TCanvas * energyCanvasAll_
 
TH1F * energyEB_
 
TH1F * energyEBAll_
 
TH1F * energyEEM_
 
TH1F * energyEEMAll_
 
TH1F * energyEEP_
 
TH1F * energyEEPAll_
 
TCanvas * energyMapCanvas_
 
TCanvas * energyMapCanvasAll_
 
TCanvas * energyMapCoarseCanvas_
 
TCanvas * energyMapCoarseCanvasAll_
 
TH2F * energyMapEB_
 
TH2F * energyMapEBAll_
 
TH2F * energyMapEBcoarse_
 
TH2F * energyMapEBcoarseAll_
 
TH2F * energyMapEEM_
 
TH2F * energyMapEEMAll_
 
TH2F * energyMapEEMcoarse_
 
TH2F * energyMapEEMcoarseAll_
 
TH2F * energyMapEEP_
 
TH2F * energyMapEEPAll_
 
TH2F * energyMapEEPcoarse_
 
TH2F * energyMapEEPcoarseAll_
 
EcalFedMapfedMap_
 
std::map< int, EcalDCCHeaderBlockFEDsAndDCCHeaders_
 
std::map< int, TH1F * > FEDsAndTimingHists_
 
edm::InputTag headerProducer_
 
TTree * histoCanvasNames_
 
std::vector< std::string > * histoCanvasNamesVector
 
double histRangeMax_
 
double histRangeMin_
 
std::set< EBDetIdlistEBChannels
 
std::set< EEDetIdlistEEChannels
 
bool makeDigiGraphs_
 
bool makeEnergyHistos_
 
bool makeOccupancyHistos_
 
bool makeTimingHistos_
 
std::vector< int > maskedChannels_
 
std::vector< std::string > maskedEBs_
 
std::vector< int > maskedFEDs_
 
double minTimingAmp_
 
double minTimingEnergyEB_
 
double minTimingEnergyEE_
 
int naiveEvtNum_
 
std::vector< std::string > * names
 
int ordinate [10]
 
TCanvas * recHitOccupancyCanvas_
 
TCanvas * recHitOccupancyCanvasAll_
 
TCanvas * recHitOccupancyCoarseCanvas_
 
TCanvas * recHitOccupancyCoarseCanvasAll_
 
TH2F * recHitOccupancyEB_
 
TH2F * recHitOccupancyEBAll_
 
TH2F * recHitOccupancyEBcoarse_
 
TH2F * recHitOccupancyEBcoarseAll_
 
TH2F * recHitOccupancyEEM_
 
TH2F * recHitOccupancyEEMAll_
 
TH2F * recHitOccupancyEEMcoarse_
 
TH2F * recHitOccupancyEEMcoarseAll_
 
TH2F * recHitOccupancyEEP_
 
TH2F * recHitOccupancyEEPAll_
 
TH2F * recHitOccupancyEEPcoarse_
 
TH2F * recHitOccupancyEEPcoarseAll_
 
int runNum_
 
std::vector< int > seedCrys_
 
std::map< std::string, int > seedFrequencyMap_
 
int side_
 
double threshold_
 
TCanvas * timingCanvas_
 
TCanvas * timingCanvasAll_
 
TH1F * timingEB_
 
TH1F * timingEBAll_
 
TH1F * timingEEM_
 
TH1F * timingEEMAll_
 
TH1F * timingEEP_
 
TH1F * timingEEPAll_
 
TCanvas * timingMapCanvas_
 
TCanvas * timingMapCanvasAll_
 
TCanvas * timingMapCoarseCanvas_
 
TCanvas * timingMapCoarseCanvasAll_
 
TH3F * timingMapEB_
 
TH3F * timingMapEBAll_
 
TH3F * timingMapEBCoarse_
 
TH3F * timingMapEBCoarseAll_
 
TH3F * timingMapEEM_
 
TH3F * timingMapEEMAll_
 
TH3F * timingMapEEMCoarse_
 
TH3F * timingMapEEMCoarseAll_
 
TH3F * timingMapEEP_
 
TH3F * timingMapEEPAll_
 
TH3F * timingMapEEPCoarse_
 
TH3F * timingMapEEPCoarseAll_
 

Static Private Attributes

static edm::Service< TFileServicefileService
 
static float gainRatio [3] = {1., 2., 12.}
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
static bool wantsGlobalLuminosityBlocks ()
 
static bool wantsGlobalRuns ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Description: <one line="" class="" summary>="">

Implementation: <Notes on="" implementation>="">

Definition at line 62 of file EcalDisplaysByEvent.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

EcalDisplaysByEvent::EcalDisplaysByEvent ( const edm::ParameterSet iConfig)
explicit

Definition at line 43 of file EcalDisplaysByEvent.cc.

References abscissa, allFedsTimingHist_, fedMap_, fileService, edm::ParameterSet::getUntrackedParameter(), mps_fire::i, initAllEventHistos(), TFileService::make(), maskedChannels_, maskedEBs_, maskedFEDs_, naiveEvtNum_, and seedCrys_.

44  : EBRecHitCollection_(iConfig.getParameter<edm::InputTag>("EcalRecHitCollectionEB")),
45  EERecHitCollection_(iConfig.getParameter<edm::InputTag>("EcalRecHitCollectionEE")),
46  EBDigis_(iConfig.getParameter<edm::InputTag>("EBDigiCollection")),
47  EEDigis_(iConfig.getParameter<edm::InputTag>("EEDigiCollection")),
48  headerProducer_(iConfig.getParameter<edm::InputTag>("headerProducer")),
49  runNum_(-1),
50  side_(iConfig.getUntrackedParameter<int>("side", 3)),
51  threshold_(iConfig.getUntrackedParameter<double>("amplitudeThreshold", 0.5)),
52  minTimingAmp_(iConfig.getUntrackedParameter<double>("minimumTimingAmplitude", 0.100)),
53  makeDigiGraphs_(iConfig.getUntrackedParameter<bool>("makeDigiGraphs", false)),
54  makeTimingHistos_(iConfig.getUntrackedParameter<bool>("makeTimingHistos", true)),
55  makeEnergyHistos_(iConfig.getUntrackedParameter<bool>("makeEnergyHistos", true)),
56  makeOccupancyHistos_(iConfig.getUntrackedParameter<bool>("makeOccupancyHistos", true)),
57  histRangeMin_(iConfig.getUntrackedParameter<double>("histogramMinRange", 0.0)),
58  histRangeMax_(iConfig.getUntrackedParameter<double>("histogramMaxRange", 1.8)),
59  minTimingEnergyEB_(iConfig.getUntrackedParameter<double>("minTimingEnergyEB", 0.0)),
60  minTimingEnergyEE_(iConfig.getUntrackedParameter<double>("minTimingEnergyEE", 0.0)) {
61  vector<int> listDefaults;
62  listDefaults.push_back(-1);
63 
64  maskedChannels_ = iConfig.getUntrackedParameter<vector<int> >("maskedChannels", listDefaults);
65  maskedFEDs_ = iConfig.getUntrackedParameter<vector<int> >("maskedFEDs", listDefaults);
66  seedCrys_ = iConfig.getUntrackedParameter<vector<int> >("seedCrys", listDefaults);
67 
68  vector<string> defaultMaskedEBs;
69  defaultMaskedEBs.push_back("none");
70  maskedEBs_ = iConfig.getUntrackedParameter<vector<string> >("maskedEBs", defaultMaskedEBs);
71 
72  fedMap_ = new EcalFedMap();
73 
74  string title1 = "Jitter for all FEDs all events";
75  string name1 = "JitterAllFEDsAllEvents";
76  allFedsTimingHist_ = fileService->make<TH1F>(name1.c_str(), title1.c_str(), 150, -7, 7);
77 
78  // load up the maskedFED list with the proper FEDids
79  if (maskedFEDs_[0] == -1) {
80  //if "actual" EB id given, then convert to FEDid and put in listFEDs_
81  if (maskedEBs_[0] != "none") {
82  maskedFEDs_.clear();
83  for (vector<string>::const_iterator ebItr = maskedEBs_.begin(); ebItr != maskedEBs_.end(); ++ebItr) {
84  maskedFEDs_.push_back(fedMap_->getFedFromSlice(*ebItr));
85  }
86  }
87  }
88 
89  for (int i = 0; i < 10; i++)
90  abscissa[i] = i;
91 
92  naiveEvtNum_ = 0;
93 
95 }
std::vector< std::string > maskedEBs_
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
std::vector< int > maskedChannels_
edm::InputTag headerProducer_
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
std::vector< int > maskedFEDs_
static edm::Service< TFileService > fileService
std::vector< int > seedCrys_
edm::InputTag EERecHitCollection_
edm::InputTag EBRecHitCollection_
EcalDisplaysByEvent::~EcalDisplaysByEvent ( )
override

Definition at line 97 of file EcalDisplaysByEvent.cc.

97 {}

Member Function Documentation

void EcalDisplaysByEvent::analyze ( edm::Event const &  iEvent,
edm::EventSetup const &  iSetup 
)
overrideprivatevirtual

Implements edm::EDAnalyzer.

Definition at line 111 of file EcalDisplaysByEvent.cc.

References edm::SortedCollection< T, SORT >::begin(), canvasNames_, deleteEvtByEvtHists(), drawHistos(), EBDigis_, EBdigisHandle, EBRecHitCollection_, EEDigis_, EEdigisHandle, EERecHitCollection_, edm::DataFrameContainer::empty(), edm::SortedCollection< T, SORT >::end(), edm::EventID::event(), FEDsAndDCCHeaders_, fileService, edm::EventSetup::get(), edm::Event::getByLabel(), headerProducer_, histoCanvasNames_, histoCanvasNamesVector, edm::EventBase::id(), initEvtByEvtHists(), listEBChannels, listEEChannels, TFileService::make(), makeDigiGraphs_, makeHistos(), naiveEvtNum_, names, edm::EventID::run(), runNum_, and selectHits().

111  {
112  // get the headers
113  // (one header for each supermodule)
115  iEvent.getByLabel(headerProducer_, DCCHeaders);
116 
117  for (EcalRawDataCollection::const_iterator headerItr = DCCHeaders->begin(); headerItr != DCCHeaders->end();
118  ++headerItr) {
119  FEDsAndDCCHeaders_[headerItr->id() + 600] = *headerItr;
120  }
121 
122  int ievt = iEvent.id().event();
123  naiveEvtNum_++;
124 
125  if (runNum_ == -1) {
126  runNum_ = iEvent.id().run();
127  canvasNames_ = fileService->make<TTree>("canvasNames", "Names of written canvases");
128  names = new std::vector<string>();
129  canvasNames_->Branch("names", "vector<string>", &names);
130 
131  histoCanvasNames_ = fileService->make<TTree>("histoCanvasNames", "Names of written canvases with histos");
132  histoCanvasNamesVector = new std::vector<string>();
133  histoCanvasNames_->Branch("histoCanvasNamesVector", "vector<string>", &histoCanvasNamesVector);
134  }
135 
136  //We only want the 3x3's for this event...
137  listEBChannels.clear();
138  listEEChannels.clear();
139 
140  //Get hits, digis, caloTopology from event/eventSetup
143  ESHandle<CaloTopology> caloTopo;
144  iSetup.get<CaloTopologyRecord>().get(caloTopo);
145  iEvent.getByLabel(EBRecHitCollection_, EBhits);
146  iEvent.getByLabel(EERecHitCollection_, EEhits);
147  iEvent.getByLabel(EBDigis_, EBdigisHandle);
148  iEvent.getByLabel(EEDigis_, EEdigisHandle);
149 
150  // Initialize histos for this event
152 
153  bool hasEBdigis = false;
154  bool hasEEdigis = false;
155  if (!EBdigisHandle->empty())
156  hasEBdigis = true;
157  if (!EEdigisHandle->empty())
158  hasEEdigis = true;
159 
160  // Produce the digi graphs
161  if (makeDigiGraphs_) {
162  if (hasEBdigis) //if event has digis, it should have hits
163  selectHits(EBhits, ievt, caloTopo);
164  if (hasEEdigis)
165  selectHits(EEhits, ievt, caloTopo);
166  }
167 
168  // Produce the histos
169  if (hasEBdigis) {
171  makeHistos(EBhits);
172  }
173  if (hasEEdigis) {
175  makeHistos(EEhits);
176  }
177 
178  if (hasEBdigis || hasEEdigis)
179  drawHistos();
180 
182 }
std::set< EBDetId > listEBChannels
edm::Handle< EEDigiCollection > EEdigisHandle
std::vector< std::string > * names
edm::InputTag headerProducer_
std::vector< T >::const_iterator const_iterator
std::map< int, EcalDCCHeaderBlock > FEDsAndDCCHeaders_
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
std::set< EEDetId > listEEChannels
std::vector< std::string > * histoCanvasNamesVector
int iEvent
Definition: GenABIO.cc:224
static edm::Service< TFileService > fileService
const_iterator end() const
void makeHistos(edm::Handle< EBDigiCollection > ebDigis)
void selectHits(edm::Handle< EcalRecHitCollection > hits, int ievt, edm::ESHandle< CaloTopology > caloTopo)
edm::Handle< EBDigiCollection > EBdigisHandle
void initEvtByEvtHists(int naiveEvtNum_, int ievt)
edm::InputTag EERecHitCollection_
edm::InputTag EBRecHitCollection_
const_iterator begin() const
void EcalDisplaysByEvent::beginRun ( edm::Run const &  ,
edm::EventSetup const &  c 
)
overrideprivatevirtual
void EcalDisplaysByEvent::deleteEvtByEvtHists ( )
private

Definition at line 655 of file EcalDisplaysByEvent.cc.

References digiOccupancyCanvas_, digiOccupancyCoarseCanvas_, digiOccupancyEB_, digiOccupancyEBcoarse_, digiOccupancyEEM_, digiOccupancyEEMcoarse_, digiOccupancyEEP_, digiOccupancyEEPcoarse_, energyCanvas_, energyEB_, energyEEM_, energyEEP_, energyMapCanvas_, energyMapCoarseCanvas_, energyMapEB_, energyMapEBcoarse_, energyMapEEM_, energyMapEEMcoarse_, energyMapEEP_, energyMapEEPcoarse_, recHitOccupancyCanvas_, recHitOccupancyCoarseCanvas_, recHitOccupancyEB_, recHitOccupancyEBcoarse_, recHitOccupancyEEM_, recHitOccupancyEEMcoarse_, recHitOccupancyEEP_, recHitOccupancyEEPcoarse_, timingCanvas_, timingEB_, timingEEM_, timingEEP_, timingMapCanvas_, timingMapEB_, timingMapEEM_, and timingMapEEP_.

Referenced by analyze().

655  {
656  delete timingEB_;
657  delete timingEEM_;
658  delete timingEEP_;
659  delete timingMapEB_;
660  delete timingMapEEM_;
661  delete timingMapEEP_;
662  delete timingCanvas_;
663  delete timingMapCanvas_;
664  delete energyEB_;
665  delete energyEEM_;
666  delete energyEEP_;
667  delete energyMapEB_;
668  delete energyMapEEM_;
669  delete energyMapEEP_;
670  delete energyMapEBcoarse_;
671  delete energyMapEEMcoarse_;
672  delete energyMapEEPcoarse_;
673  delete energyCanvas_;
674  delete energyMapCanvas_;
675  delete energyMapCoarseCanvas_;
676  delete recHitOccupancyEB_;
677  delete recHitOccupancyEEP_;
678  delete recHitOccupancyEEM_;
682  delete digiOccupancyEB_;
683  delete digiOccupancyEEM_;
684  delete digiOccupancyEEP_;
685  delete digiOccupancyEBcoarse_;
688  delete recHitOccupancyCanvas_;
690  delete digiOccupancyCanvas_;
692 }
TCanvas * digiOccupancyCoarseCanvas_
TCanvas * recHitOccupancyCoarseCanvas_
void EcalDisplaysByEvent::drawCanvas ( TCanvas *  canvas,
TH1F *  hist1,
TH1F *  hist2,
TH1F *  hist3 
)
private

Definition at line 874 of file EcalDisplaysByEvent.cc.

References histoCanvasNamesVector.

Referenced by drawHistos(), and endJob().

874  {
875  canvas->Divide(1, 2);
876  canvas->cd(1)->Divide(2, 1);
877  canvas->cd(1)->cd(1);
878  hist1->Draw();
879  canvas->cd(2);
880  hist2->Draw();
881  canvas->cd(1)->cd(2);
882  hist3->Draw();
883  histoCanvasNamesVector->push_back(canvas->GetName());
884  canvas->SetCanvasSize(500, 500);
885  canvas->SetFixedAspectRatio(true);
886  canvas->Write();
887 }
std::vector< std::string > * histoCanvasNamesVector
def canvas(sub, attr)
Definition: svgfig.py:482
void EcalDisplaysByEvent::drawCanvas ( TCanvas *  canvas,
TH2F *  hist1,
TH2F *  hist2,
TH2F *  hist3 
)
private

Definition at line 889 of file EcalDisplaysByEvent.cc.

References drawEELines(), and histoCanvasNamesVector.

889  {
890  canvas->Divide(1, 2);
891  canvas->cd(1)->Divide(2, 1);
892  // EEM
893  canvas->cd(1)->cd(1);
894  hist1->Draw("colz");
895  drawEELines();
896  // EB
897  canvas->cd(2);
898  hist2->Draw("colz");
899  hist2->GetXaxis()->SetNdivisions(-18);
900  hist2->GetYaxis()->SetNdivisions(2);
901  canvas->GetPad(2)->SetGridx(1);
902  canvas->GetPad(2)->SetGridy(1);
903  // EEP
904  canvas->cd(1)->cd(2);
905  hist3->Draw("colz");
906  drawEELines();
907  histoCanvasNamesVector->push_back(canvas->GetName());
908  canvas->SetCanvasSize(500, 500);
909  canvas->SetFixedAspectRatio(true);
910  canvas->Write();
911 }
std::vector< std::string > * histoCanvasNamesVector
def canvas(sub, attr)
Definition: svgfig.py:482
void EcalDisplaysByEvent::drawCanvas ( TCanvas *  canvas,
TH3F *  hist1,
TH3F *  hist2,
TH3F *  hist3 
)
private

Definition at line 913 of file EcalDisplaysByEvent.cc.

References drawEELines(), drawTimingErrors(), histoCanvasNamesVector, and timingMapCoarseCanvas_.

913  {
915  canvas->cd();
916  TProfile2D* profile2 = (TProfile2D*)hist2->Project3DProfile("yx");
917  profile2->Draw("colz");
918  drawTimingErrors(profile2);
919  } else {
920  canvas->Divide(1, 2);
921  canvas->cd(1)->Divide(2, 1);
922  // EEM
923  canvas->cd(1)->cd(1);
924  TProfile2D* profile1 = (TProfile2D*)hist1->Project3DProfile("yx");
925  profile1->Draw("colz");
926  drawEELines();
927  // EB
928  canvas->cd(2);
929  TProfile2D* profile2 = (TProfile2D*)hist2->Project3DProfile("yx");
930  profile2->Draw("colz");
931  profile2->GetXaxis()->SetNdivisions(-18);
932  profile2->GetYaxis()->SetNdivisions(2);
933  canvas->GetPad(2)->SetGridx(1);
934  canvas->GetPad(2)->SetGridy(1);
935  // EEP
936  canvas->cd(1)->cd(2);
937  TProfile2D* profile3 = (TProfile2D*)hist3->Project3DProfile("yx");
938  profile3->Draw("colz");
939  drawEELines();
940  }
941  histoCanvasNamesVector->push_back(canvas->GetName());
942  canvas->SetCanvasSize(500, 500);
943  canvas->SetFixedAspectRatio(true);
944  canvas->Write();
945 }
void drawTimingErrors(TProfile2D *profile)
std::vector< std::string > * histoCanvasNamesVector
def canvas(sub, attr)
Definition: svgfig.py:482
void EcalDisplaysByEvent::drawEELines ( )
private

Definition at line 984 of file EcalDisplaysByEvent.cc.

References mps_fire::i, and checklumidiff::l.

Referenced by drawCanvas().

984  {
985  int ixSectorsEE[202] = {
986  61, 61, 60, 60, 59, 59, 58, 58, 57, 57, 55, 55, 45, 45, 43, 43, 42, 42, 41, 41, 40, 40, 39, 39, 40, 40,
987  41, 41, 42, 42, 43, 43, 45, 45, 55, 55, 57, 57, 58, 58, 59, 59, 60, 60, 61, 61, 0, 100, 100, 97, 97, 95,
988  95, 92, 92, 87, 87, 85, 85, 80, 80, 75, 75, 65, 65, 60, 60, 40, 40, 35, 35, 25, 25, 20, 20, 15, 15, 13,
989  13, 8, 8, 5, 5, 3, 3, 0, 0, 3, 3, 5, 5, 8, 8, 13, 13, 15, 15, 20, 20, 25, 25, 35, 35, 40,
990  40, 60, 60, 65, 65, 75, 75, 80, 80, 85, 85, 87, 87, 92, 92, 95, 95, 97, 97, 100, 100, 0, 61, 65, 65, 70,
991  70, 80, 80, 90, 90, 92, 0, 61, 65, 65, 90, 90, 97, 0, 57, 60, 60, 65, 65, 70, 70, 75, 75, 80, 80, 0,
992  50, 50, 0, 43, 40, 40, 35, 35, 30, 30, 25, 25, 20, 20, 0, 39, 35, 35, 10, 10, 3, 0, 39, 35, 35, 30,
993  30, 20, 20, 10, 10, 8, 0, 45, 45, 40, 40, 35, 35, 0, 55, 55, 60, 60, 65, 65};
994 
995  int iySectorsEE[202] = {50, 55, 55, 57, 57, 58, 58, 59, 59, 60, 60, 61, 61, 60, 60, 59, 59, 58, 58, 57, 57, 55, 55,
996  45, 45, 43, 43, 42, 42, 41, 41, 40, 40, 39, 39, 40, 40, 41, 41, 42, 42, 43, 43, 45, 45, 50,
997  0, 50, 60, 60, 65, 65, 75, 75, 80, 80, 85, 85, 87, 87, 92, 92, 95, 95, 97, 97, 100, 100, 97,
998  97, 95, 95, 92, 92, 87, 87, 85, 85, 80, 80, 75, 75, 65, 65, 60, 60, 40, 40, 35, 35, 25, 25,
999  20, 20, 15, 15, 13, 13, 8, 8, 5, 5, 3, 3, 0, 0, 3, 3, 5, 5, 8, 8, 13, 13, 15,
1000  15, 20, 20, 25, 25, 35, 35, 40, 40, 50, 0, 45, 45, 40, 40, 35, 35, 30, 30, 25, 25, 0, 50,
1001  50, 55, 55, 60, 60, 0, 60, 60, 65, 65, 70, 70, 75, 75, 85, 85, 87, 0, 61, 100, 0, 60, 60,
1002  65, 65, 70, 70, 75, 75, 85, 85, 87, 0, 50, 50, 55, 55, 60, 60, 0, 45, 45, 40, 40, 35, 35,
1003  30, 30, 25, 25, 0, 39, 30, 30, 15, 15, 5, 0, 39, 30, 30, 15, 15, 5};
1004 
1005  for (int i = 0; i < 202; i++) {
1006  ixSectorsEE[i] += 1;
1007  iySectorsEE[i] += 1;
1008  // std::cout << i << " " << ixSectorsEE[i] << " " << iySectorsEE[i] << std::endl;
1009  }
1010 
1011  TLine l;
1012  l.SetLineWidth(1);
1013  for (int i = 0; i < 201; i = i + 1) {
1014  if ((ixSectorsEE[i] != 1 || iySectorsEE[i] != 1) && (ixSectorsEE[i + 1] != 1 || iySectorsEE[i + 1] != 1)) {
1015  l.DrawLine(ixSectorsEE[i], iySectorsEE[i], ixSectorsEE[i + 1], iySectorsEE[i + 1]);
1016  }
1017  }
1018 }
void EcalDisplaysByEvent::drawHistos ( )
private

Definition at line 849 of file EcalDisplaysByEvent.cc.

References digiOccupancyCanvas_, digiOccupancyCoarseCanvas_, digiOccupancyEB_, digiOccupancyEBcoarse_, digiOccupancyEEM_, digiOccupancyEEMcoarse_, digiOccupancyEEP_, digiOccupancyEEPcoarse_, drawCanvas(), energyCanvas_, energyEB_, energyEEM_, energyEEP_, energyMapCanvas_, energyMapCoarseCanvas_, energyMapEB_, energyMapEBcoarse_, energyMapEEM_, energyMapEEMcoarse_, energyMapEEP_, energyMapEEPcoarse_, makeEnergyHistos_, makeOccupancyHistos_, makeTimingHistos_, recHitOccupancyCanvas_, recHitOccupancyCoarseCanvas_, recHitOccupancyEB_, recHitOccupancyEBcoarse_, recHitOccupancyEEM_, recHitOccupancyEEMcoarse_, recHitOccupancyEEP_, recHitOccupancyEEPcoarse_, timingCanvas_, timingEB_, timingEEM_, timingEEP_, timingMapCanvas_, timingMapEB_, timingMapEEM_, and timingMapEEP_.

Referenced by analyze().

849  {
850  if (makeTimingHistos_) {
851  // Put the timing canvas together
853  // drawCanvas(timingMapCoarseCanvas_,timingMapEEMCoarse_,timingMapEBCoarse_,timingMapEEPCoarse_);
855  }
856  if (makeEnergyHistos_) {
857  // Put the energy canvas together
859  // Put the energy map canvas together
862  }
863  if (makeOccupancyHistos_) {
864  // Put the occupancy canvas together
866  drawCanvas(
868  // And the same for the digis
871  }
872 }
void drawCanvas(TCanvas *canvas, TH1F *hist1, TH1F *hist2, TH1F *hist3)
TCanvas * digiOccupancyCoarseCanvas_
TCanvas * recHitOccupancyCoarseCanvas_
void EcalDisplaysByEvent::drawTimingErrors ( TProfile2D *  profile)
private

Definition at line 947 of file EcalDisplaysByEvent.cc.

References mps_fire::i, createfilelist::int, and cuy::tex.

Referenced by drawCanvas().

947  {
948  int nxb = profile->GetNbinsX();
949  int nyb = profile->GetNbinsY();
950  char tempErr[200];
951  for (int i = 0; i != nxb; ++i) {
952  for (int j = 0; j != nyb; ++j) {
953  int xb = i + 1;
954  int yb = j + 1;
955  // std::cout << "xb: " << xb << "\tyb: " << yb << std::endl;
956  double xcorr = profile->GetBinCenter(xb);
957  double ycorr = profile->GetBinCenter(yb);
958  sprintf(tempErr, "%0.2f", profile->GetBinError(xb, yb));
959  int nBin = profile->GetBin(xb, yb, 0);
960  int nBinEntries = (int)profile->GetBinEntries(nBin);
961  if (nBinEntries != 0) {
962  TLatex* tex = new TLatex(xcorr, ycorr, tempErr);
963  tex->SetTextAlign(23);
964  tex->SetTextSize(42);
965  tex->SetTextSize(0.025);
966  tex->SetLineWidth(2);
967  tex->Draw();
968  delete tex;
969  }
970  sprintf(tempErr, "%i", nBinEntries);
971  if (nBinEntries != 0) {
972  TLatex* tex = new TLatex(xcorr, ycorr, tempErr);
973  tex->SetTextAlign(21);
974  tex->SetTextFont(42);
975  tex->SetTextSize(0.025);
976  tex->SetLineWidth(2);
977  tex->Draw();
978  delete tex;
979  }
980  }
981  }
982 }
tex
Definition: cuy.py:774
void EcalDisplaysByEvent::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 521 of file EcalDisplaysByEvent.cc.

References canvasNames_, digiOccupancyCanvasAll_, digiOccupancyCoarseCanvasAll_, digiOccupancyEBAll_, digiOccupancyEBcoarseAll_, digiOccupancyEEMAll_, digiOccupancyEEMcoarseAll_, digiOccupancyEEPAll_, digiOccupancyEEPcoarseAll_, drawCanvas(), energyCanvasAll_, energyEBAll_, energyEEMAll_, energyEEPAll_, energyMapCanvasAll_, energyMapCoarseCanvasAll_, energyMapEBAll_, energyMapEBcoarseAll_, energyMapEEMAll_, energyMapEEMcoarseAll_, energyMapEEPAll_, energyMapEEPcoarseAll_, histoCanvasNames_, intToString(), maskedChannels_, maskedFEDs_, recHitOccupancyCanvasAll_, recHitOccupancyCoarseCanvasAll_, recHitOccupancyEBAll_, recHitOccupancyEBcoarseAll_, recHitOccupancyEEMAll_, recHitOccupancyEEMcoarseAll_, recHitOccupancyEEPAll_, recHitOccupancyEEPcoarseAll_, runNum_, seedFrequencyMap_, AlCaHLTBitMon_QueryRunRegistry::string, timingCanvasAll_, timingEBAll_, timingEEMAll_, timingEEPAll_, timingMapCanvasAll_, timingMapEBAll_, timingMapEEMAll_, and timingMapEEPAll_.

Referenced by o2olib.O2ORunMgr::executeJob().

521  {
522  //All-event canvases
534  drawCanvas(
536 
537  if (runNum_ != -1) {
538  canvasNames_->Fill();
539  histoCanvasNames_->Fill();
540  }
541 
542  string frequencies = "";
543  for (std::map<std::string, int>::const_iterator itr = seedFrequencyMap_.begin(); itr != seedFrequencyMap_.end();
544  ++itr) {
545  if (itr->second > 1) {
546  frequencies += itr->first;
547  frequencies += " Frequency: ";
548  frequencies += intToString(itr->second);
549  frequencies += "\n";
550  }
551  }
552  LogWarning("EcalDisplaysByEvent") << "Found seeds with frequency > 1: "
553  << "\n\n"
554  << frequencies;
555 
556  std::string channels;
557  for (std::vector<int>::const_iterator itr = maskedChannels_.begin(); itr != maskedChannels_.end(); ++itr) {
558  channels += intToString(*itr);
559  channels += ",";
560  }
561 
562  std::string feds;
563  for (std::vector<int>::const_iterator itr = maskedFEDs_.begin(); itr != maskedFEDs_.end(); ++itr) {
564  feds += intToString(*itr);
565  feds += ",";
566  }
567 
568  LogWarning("EcalDisplaysByEvent") << "Masked channels are: " << channels;
569  LogWarning("EcalDisplaysByEvent") << "Masked FEDs are: " << feds << " and that is all!";
570 }
std::vector< int > maskedChannels_
TCanvas * digiOccupancyCoarseCanvasAll_
void drawCanvas(TCanvas *canvas, TH1F *hist1, TH1F *hist2, TH1F *hist3)
std::vector< int > maskedFEDs_
TCanvas * recHitOccupancyCoarseCanvasAll_
std::string intToString(int num)
std::map< std::string, int > seedFrequencyMap_
std::string EcalDisplaysByEvent::floatToString ( float  num)
private

Definition at line 579 of file EcalDisplaysByEvent.cc.

Referenced by selectDigi().

579  {
580  using namespace std;
581  ostringstream myStream;
582  myStream << num << flush;
583  return (myStream.str()); //returns the string form of the stringstream object
584 }
int EcalDisplaysByEvent::getEEIndex ( EcalElectronicsId  elecId)
private

Definition at line 351 of file EcalDisplaysByEvent.cc.

References EcalElectronicsId::dccId(), EcalElectronicsId::stripId(), EcalElectronicsId::towerId(), and EcalElectronicsId::xtalId().

Referenced by selectDigi(), and selectHits().

351  {
352  int FEDid = 600 + elecId.dccId();
353  return 10000 * FEDid + 100 * elecId.towerId() + 5 * (elecId.stripId() - 1) + elecId.xtalId();
354 }
int xtalId() const
get the channel id
int stripId() const
get the tower id
int towerId() const
get the tower id
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
TCanvas * EcalDisplaysByEvent::init2DEcalCanvas ( std::string  canvasName)
private

Definition at line 844 of file EcalDisplaysByEvent.cc.

References svgfig::canvas().

Referenced by initAllEventHistos(), and initEvtByEvtHists().

844  {
845  TCanvas* canvas = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(), 300, 60, 500, 200);
846  return canvas;
847 }
def canvas(sub, attr)
Definition: svgfig.py:482
TH2F * EcalDisplaysByEvent::init2DEcalHist ( std::string  histTypeName,
int  subDet 
)
private

Definition at line 804 of file EcalDisplaysByEvent.cc.

References EB_COARSE, EB_FINE, EEM_COARSE, EEM_FINE, EEP_COARSE, create_public_lumi_plots::hist, GeomDetEnumerators::isBarrel(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

804  {
805  TH2F* hist;
806  bool isBarrel = (subDet == EB_FINE || subDet == EB_COARSE) ? true : false;
807  bool isCoarse = (subDet == EB_COARSE || subDet == EEM_COARSE || subDet == EEP_COARSE) ? true : false;
808  bool isEEM = (subDet == EEM_FINE || subDet == EEM_COARSE) ? true : false;
809  std::string histName = histTypeName;
810  std::string histTitle = histTypeName;
811  if (isBarrel) {
812  histName = histName + "EB";
813  histTitle = histTitle + " EB";
814  if (isCoarse) {
815  histName = histName + "Coarse";
816  histTitle = histTitle + " Coarse;iphi;ieta";
817  double ttEtaBins[36] = {-85, -80, -75, -70, -65, -60, -55, -50, -45, -40, -35, -30, -25, -20, -15, -10, -5, 0,
818  1, 6, 11, 16, 21, 26, 31, 36, 41, 46, 51, 56, 61, 66, 71, 76, 81, 86};
819  hist = new TH2F(histName.c_str(), histTitle.c_str(), 360 / 5, 1, 361., 35, ttEtaBins);
820  } else {
821  histTitle = histTitle + ";iphi;ieta";
822  hist = new TH2F(histName.c_str(), histTitle.c_str(), 360, 1, 361., 172, -86, 86);
823  }
824  } else {
825  if (isEEM) {
826  histName = histName + "EEM";
827  histTitle = histTitle + " EEM";
828  } else {
829  histName = histName + "EEP";
830  histTitle = histTitle + " EEP";
831  }
832  if (isCoarse) {
833  histName = histName + "Coarse";
834  histTitle = histTitle + " Coarse;ix;iy";
835  hist = new TH2F(histName.c_str(), histTitle.c_str(), 20, 1, 101, 20, 1, 101);
836  } else {
837  histTitle = histTitle + ";ix;iy";
838  hist = new TH2F(histName.c_str(), histTitle.c_str(), 100, 1, 101, 100, 1, 101);
839  }
840  }
841  return hist;
842 }
bool isBarrel(GeomDetEnumerators::SubDetector m)
TH3F * EcalDisplaysByEvent::init3DEcalHist ( std::string  histTypeName,
int  dubDet 
)
private

Definition at line 744 of file EcalDisplaysByEvent.cc.

References EB_COARSE, EB_FINE, EEM_COARSE, EEM_FINE, EEP_COARSE, create_public_lumi_plots::hist, mps_fire::i, GeomDetEnumerators::isBarrel(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

744  {
745  TH3F* hist;
746  bool isBarrel = (subDet == EB_FINE || subDet == EB_COARSE) ? true : false;
747  bool isCoarse = (subDet == EB_COARSE || subDet == EEM_COARSE || subDet == EEP_COARSE) ? true : false;
748  bool isEEM = (subDet == EEM_FINE || subDet == EEM_COARSE) ? true : false;
749  std::string histName = histTypeName;
750  std::string histTitle = histTypeName;
751  double ttEtaBins[36] = {-85, -80, -75, -70, -65, -60, -55, -50, -45, -40, -35, -30, -25, -20, -15, -10, -5, 0,
752  1, 6, 11, 16, 21, 26, 31, 36, 41, 46, 51, 56, 61, 66, 71, 76, 81, 86};
753  double modEtaBins[10] = {-85, -65, -45, -25, 0, 1, 26, 46, 66, 86};
754  double ttPhiBins[73];
755  double modPhiBins[19];
756  double timingBins[79];
757  for (int i = 0; i < 79; ++i) {
758  timingBins[i] = 6 - 7. + double(i) * 14. / 78.;
759  if (i < 73) {
760  ttPhiBins[i] = 1 + 5 * i;
761  if (i < 19) {
762  modPhiBins[i] = 1 + 20 * i;
763  }
764  }
765  }
766 
767  if (isBarrel) {
768  histName = histName + "EB";
769  histTitle = histTitle + " EB";
770  if (isCoarse) {
771  histName = histName + "Coarse";
772  histTitle = histTitle + " by Module Nominal value = 6;iphi;ieta ";
773  hist = new TH3F(histName.c_str(), histTitle.c_str(), 18, modPhiBins, 9, modEtaBins, 78, timingBins);
774  } else {
775  histTitle = histTitle + " by TT Nominal value = 6;iphi;ieta";
776  hist = new TH3F(histName.c_str(), histTitle.c_str(), 360 / 5, ttPhiBins, 35, ttEtaBins, 78, timingBins);
777  }
778  } else {
779  double ttXBins[21];
780  double ttYBins[21];
781  for (int i = 0; i != 21; ++i) {
782  ttXBins[i] = 1 + 5 * i;
783  ttYBins[i] = 1 + 5 * i;
784  }
785  if (isEEM) {
786  histName = histName + "EEM";
787  histTitle = histTitle + " EEM";
788  } else {
789  histName = histName + "EEP";
790  histTitle = histTitle + " EEP";
791  }
792  if (isCoarse) {
793  histName = histName + "Coarse";
794  histTitle = histTitle + " by Module Nominal value = 6;ix;iy";
795  hist = new TH3F(histName.c_str(), histTitle.c_str(), 20, ttXBins, 20, ttYBins, 78, timingBins);
796  } else {
797  histTitle = histTitle + " by TT Nominal value = 6;ix;iy";
798  hist = new TH3F(histName.c_str(), histTitle.c_str(), 20, ttXBins, 20, ttYBins, 78, timingBins);
799  }
800  }
801  return hist;
802 }
bool isBarrel(GeomDetEnumerators::SubDetector m)
void EcalDisplaysByEvent::initAllEventHistos ( )
private

Definition at line 694 of file EcalDisplaysByEvent.cc.

References digiOccupancyCanvasAll_, digiOccupancyCoarseCanvasAll_, digiOccupancyEBAll_, digiOccupancyEBcoarseAll_, digiOccupancyEEMAll_, digiOccupancyEEMcoarseAll_, digiOccupancyEEPAll_, digiOccupancyEEPcoarseAll_, EB_COARSE, EB_FINE, EEM_COARSE, EEM_FINE, EEP_COARSE, EEP_FINE, energyCanvasAll_, energyEBAll_, energyEEMAll_, energyEEPAll_, energyMapCanvasAll_, energyMapCoarseCanvasAll_, energyMapEBAll_, energyMapEBcoarseAll_, energyMapEEMAll_, energyMapEEMcoarseAll_, energyMapEEPAll_, energyMapEEPcoarseAll_, histRangeMax_, histRangeMin_, init2DEcalCanvas(), init2DEcalHist(), init3DEcalHist(), recHitOccupancyCanvasAll_, recHitOccupancyCoarseCanvasAll_, recHitOccupancyEBAll_, recHitOccupancyEBcoarseAll_, recHitOccupancyEEMAll_, recHitOccupancyEEMcoarseAll_, recHitOccupancyEEPAll_, recHitOccupancyEEPcoarseAll_, timingCanvasAll_, timingEBAll_, timingEEMAll_, timingEEPAll_, timingMapCanvasAll_, timingMapEBAll_, timingMapEBCoarseAll_, timingMapEEMAll_, timingMapEEMCoarseAll_, timingMapEEPAll_, and timingMapEEPCoarseAll_.

Referenced by EcalDisplaysByEvent().

694  {
695  string canvasTitle = "Timing_AllEvents";
696  timingEBAll_ = new TH1F("timeForAllFedsEBAll", "timeForAllFeds;Relative Time (1 clock = 25ns)", 78, -7, 7);
697  timingEEMAll_ = new TH1F("timeForAllFedsEEMAll", "timeForAllFeds_EEM;Relative Time (1 clock = 25ns)", 78, -7, 7);
698  timingEEPAll_ = new TH1F("timeForAllFedsEEPAll", "timeForAllFeds_EEP;Relative Time (1 clock = 25ns)", 78, -7, 7);
699  timingCanvasAll_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(), 300, 60, 500, 200);
700  timingMapEBAll_ = init3DEcalHist("TimingMapA", EB_FINE);
701  timingMapEEMAll_ = init3DEcalHist("TimingMapA", EEM_FINE);
702  timingMapEEPAll_ = init3DEcalHist("TimingMapA", EEP_FINE);
703  timingMapCanvasAll_ = init2DEcalCanvas("TimingMap_AllEvents");
707  //timingMapCoarseCanvasAll_ = init2DEcalCanvas("TimingMapCoarse_AllEvents");
708  energyEBAll_ = new TH1F("energyEBAllEvents", "Energy for EB Feds (GeV)", 200, histRangeMin_, histRangeMax_);
709  energyEEMAll_ = new TH1F("energyEEMAllEvents", "Energy for EEM Feds (GeV)", 200, histRangeMin_, 10.0);
710  energyEEPAll_ = new TH1F("energyEEPAllEvents", "Energy for EEP Feds (GeV)", 200, histRangeMin_, 10.0);
711  canvasTitle = "Energy_AllEvents";
712  energyCanvasAll_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(), 300, 60, 500, 200);
713 
714  // Energy map hists
715  energyMapEBAll_ = init2DEcalHist("EnergyMapA", EB_FINE);
718  energyMapEEMAll_ = init2DEcalHist("EnergyMapA", EEM_FINE);
720  energyMapEEPAll_ = init2DEcalHist("EnergyMapA", EEP_FINE);
721  energyMapCanvasAll_ = init2DEcalCanvas("EnergyMap_AllEvents");
722  energyMapCoarseCanvasAll_ = init2DEcalCanvas("EnergyMapCoarse_AllEvents");
723  // RecHit Occupancy
724  recHitOccupancyEBAll_ = init2DEcalHist("RecHitOccupancyA", EB_FINE);
727  recHitOccupancyEEMAll_ = init2DEcalHist("RecHitOccupancyA", EEM_FINE);
729  recHitOccupancyEEPAll_ = init2DEcalHist("RecHitOccupancyA", EEP_FINE);
730  recHitOccupancyCanvasAll_ = init2DEcalCanvas("RecHitOccupancy_AllEvents");
731  recHitOccupancyCoarseCanvasAll_ = init2DEcalCanvas("RecHitOccupancyCoarse_AllEvents");
732 
733  //DigiOccupancy
734  digiOccupancyEBAll_ = init2DEcalHist("DigiOccupancyA", EB_FINE);
737  digiOccupancyEEMAll_ = init2DEcalHist("DigiOccupancyA", EEM_FINE);
739  digiOccupancyEEPAll_ = init2DEcalHist("DigiOccupancyA", EEP_FINE);
740  digiOccupancyCanvasAll_ = init2DEcalCanvas("DigiOccupancy_AllEvents");
741  digiOccupancyCoarseCanvasAll_ = init2DEcalCanvas("DigiOccupancyCoarse_AllEvents");
742 }
TH2F * init2DEcalHist(std::string histTypeName, int subDet)
TCanvas * digiOccupancyCoarseCanvasAll_
TCanvas * recHitOccupancyCoarseCanvasAll_
TH3F * init3DEcalHist(std::string histTypeName, int dubDet)
TCanvas * init2DEcalCanvas(std::string canvasName)
void EcalDisplaysByEvent::initEvtByEvtHists ( int  naiveEvtNum_,
int  ievt 
)
private

Definition at line 598 of file EcalDisplaysByEvent.cc.

References digiOccupancyCanvas_, digiOccupancyCoarseCanvas_, digiOccupancyEB_, digiOccupancyEBcoarse_, digiOccupancyEEM_, digiOccupancyEEMcoarse_, digiOccupancyEEP_, digiOccupancyEEPcoarse_, EB_COARSE, EB_FINE, EEM_COARSE, EEM_FINE, EEP_COARSE, EEP_FINE, energyCanvas_, energyEB_, energyEEM_, energyEEP_, energyMapCanvas_, energyMapCoarseCanvas_, energyMapEB_, energyMapEBcoarse_, energyMapEEM_, energyMapEEMcoarse_, energyMapEEP_, energyMapEEPcoarse_, histRangeMax_, histRangeMin_, init2DEcalCanvas(), init2DEcalHist(), init3DEcalHist(), intToString(), makeEnergyHistos_, makeOccupancyHistos_, makeTimingHistos_, recHitOccupancyCanvas_, recHitOccupancyCoarseCanvas_, recHitOccupancyEB_, recHitOccupancyEBcoarse_, recHitOccupancyEEM_, recHitOccupancyEEMcoarse_, recHitOccupancyEEP_, recHitOccupancyEEPcoarse_, timingCanvas_, timingEB_, timingEEM_, timingEEP_, timingMapCanvas_, timingMapEB_, timingMapEEM_, timingMapEEMCoarse_, timingMapEEP_, and timingMapEEPCoarse_.

Referenced by analyze().

598  {
599  string lastPart = intToString(naiveEvtNum_) + "_LV1a" + intToString(ievt);
600  if (makeTimingHistos_) {
601  string canvasTitle = "Timing_Event" + lastPart;
602  timingEB_ = new TH1F("timeForAllFedsEB", "timeForAllFeds;Relative Time (1 clock = 25ns)", 78, -7, 7);
603  timingEEM_ = new TH1F("timeForAllFedsEEM", "timeForAllFeds_EEM;Relative Time (1 clock = 25ns)", 78, -7, 7);
604  timingEEP_ = new TH1F("timeForAllFedsEEP", "timeForAllFeds_EEP;Relative Time (1 clock = 25ns)", 78, -7, 7);
605  timingCanvas_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(), 300, 60, 500, 200);
606  timingMapEB_ = init3DEcalHist("TimingMap", EB_FINE);
607  timingMapEEM_ = init3DEcalHist("TimingMap", EEM_FINE);
608  timingMapEEP_ = init3DEcalHist("TimingMap", EEP_FINE);
609  timingMapCanvas_ = init2DEcalCanvas("TimingMap_Event" + lastPart);
610  //timingMapEBCoarse_ = init3DEcalHist("TimingMap", EB_COARSE);
613  //timingMapCoarseCanvas_ = init2DEcalCanvas("TimingMapCoarse_Event"+lastPart);
614  }
615  if (makeEnergyHistos_) {
616  energyEB_ = new TH1F("energyEB", "Energy for EB Feds (GeV)", 200, histRangeMin_, histRangeMax_);
617  energyEEM_ = new TH1F("energyEEM", "Energy for EEM Feds (GeV)", 200, histRangeMin_, 10.0);
618  energyEEP_ = new TH1F("energyEEP", "Energy for EEP Feds (GeV)", 200, histRangeMin_, 10.0);
619  string canvasTitle = "Energy_Event" + lastPart;
620  energyCanvas_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(), 300, 60, 500, 200);
621 
622  // Energy map hists
623  energyMapEB_ = init2DEcalHist("EnergyMap", EB_FINE);
626  energyMapEEM_ = init2DEcalHist("EnergyMap", EEM_FINE);
628  energyMapEEP_ = init2DEcalHist("EnergyMap", EEP_FINE);
629  energyMapCanvas_ = init2DEcalCanvas("EnergyMap_Event" + lastPart);
630  energyMapCoarseCanvas_ = init2DEcalCanvas("EnergyMapCoarse_Event" + lastPart);
631  }
632  if (makeOccupancyHistos_) {
633  // RecHit Occupancy
634  recHitOccupancyEB_ = init2DEcalHist("RecHitOccupancy", EB_FINE);
635  recHitOccupancyEBcoarse_ = init2DEcalHist("RecHitOccupancy", EB_COARSE);
637  recHitOccupancyEEM_ = init2DEcalHist("RecHitOccupancy", EEM_FINE);
639  recHitOccupancyEEP_ = init2DEcalHist("RecHitOccupancy", EEP_FINE);
640  recHitOccupancyCanvas_ = init2DEcalCanvas("RecHitOccupancy_Event" + lastPart);
641  recHitOccupancyCoarseCanvas_ = init2DEcalCanvas("RecHitOccupancyCoarse_Event" + lastPart);
642 
643  //DigiOccupancy
644  digiOccupancyEB_ = init2DEcalHist("DigiOccupancy", EB_FINE);
645  digiOccupancyEBcoarse_ = init2DEcalHist("DigiOccupancy", EB_COARSE);
647  digiOccupancyEEM_ = init2DEcalHist("DigiOccupancy", EEM_FINE);
649  digiOccupancyEEP_ = init2DEcalHist("DigiOccupancy", EEP_FINE);
650  digiOccupancyCanvas_ = init2DEcalCanvas("DigiOccupancy_Event" + lastPart);
651  digiOccupancyCoarseCanvas_ = init2DEcalCanvas("DigiOccupancyCoarse_Event" + lastPart);
652  }
653 }
TH2F * init2DEcalHist(std::string histTypeName, int subDet)
std::string intToString(int num)
TCanvas * digiOccupancyCoarseCanvas_
TH3F * init3DEcalHist(std::string histTypeName, int dubDet)
TCanvas * init2DEcalCanvas(std::string canvasName)
TCanvas * recHitOccupancyCoarseCanvas_
void EcalDisplaysByEvent::initHists ( int  FED)
private

Definition at line 587 of file EcalDisplaysByEvent.cc.

References fedMap_, FEDsAndTimingHists_, fileService, EcalFedMap::getSliceFromFed(), intToString(), and TFileService::make().

Referenced by makeHistos().

587  {
588  using namespace std;
589 
590  string title1 = "Jitter for ";
591  title1.append(fedMap_->getSliceFromFed(FED));
592  string name1 = "JitterFED";
593  name1.append(intToString(FED));
594  TH1F* timingHist = fileService->make<TH1F>(name1.c_str(), title1.c_str(), 150, -7, 7);
595  FEDsAndTimingHists_[FED] = timingHist;
596 }
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
std::string getSliceFromFed(int)
Definition: EcalFedMap.cc:86
std::map< int, TH1F * > FEDsAndTimingHists_
static edm::Service< TFileService > fileService
std::string intToString(int num)
std::string EcalDisplaysByEvent::intToString ( int  num)
private

Definition at line 572 of file EcalDisplaysByEvent.cc.

Referenced by endJob(), initEvtByEvtHists(), initHists(), selectDigi(), and selectHits().

572  {
573  using namespace std;
574  ostringstream myStream;
575  myStream << num << flush;
576  return (myStream.str()); //returns the string form of the stringstream object
577 }
void EcalDisplaysByEvent::makeHistos ( edm::Handle< EBDigiCollection ebDigis)
private

Definition at line 356 of file EcalDisplaysByEvent.cc.

References edm::DataFrameContainer::begin(), digiOccupancyEB_, digiOccupancyEBAll_, digiOccupancyEBcoarse_, digiOccupancyEBcoarseAll_, edm::DataFrameContainer::end(), EBDetId::ieta(), EBDetId::iphi(), makeOccupancyHistos_, and edm::Handle< T >::product().

Referenced by analyze().

356  {
357  const EBDigiCollection* ebDigis = ebDigiHandle.product();
358  for (EBDigiCollection::const_iterator digiItr = ebDigis->begin(); digiItr != ebDigis->end(); ++digiItr) {
359  EBDetId digiId = digiItr->id();
360  int ieta = digiId.ieta();
361  int iphi = digiId.iphi();
362  digiOccupancyEBAll_->Fill(iphi, ieta);
363  digiOccupancyEBcoarseAll_->Fill(iphi, ieta);
364  if (makeOccupancyHistos_) {
365  digiOccupancyEB_->Fill(iphi, ieta);
366  digiOccupancyEBcoarse_->Fill(iphi, ieta);
367  }
368  }
369 }
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
const_iterator begin() const
int iphi() const
get the crystal iphi
Definition: EBDetId.h:51
int ieta() const
get the crystal ieta
Definition: EBDetId.h:49
T const * product() const
Definition: Handle.h:74
const_iterator end() const
void EcalDisplaysByEvent::makeHistos ( edm::Handle< EEDigiCollection eeDigis)
private

Definition at line 371 of file EcalDisplaysByEvent.cc.

References edm::DataFrameContainer::begin(), EcalElectronicsId::dccId(), digiOccupancyEEM_, digiOccupancyEEMAll_, digiOccupancyEEMcoarse_, digiOccupancyEEMcoarseAll_, digiOccupancyEEP_, digiOccupancyEEPAll_, digiOccupancyEEPcoarse_, digiOccupancyEEPcoarseAll_, ecalElectronicsMap_, edm::DataFrameContainer::end(), EcalElectronicsMapping::getElectronicsId(), EEDetId::ix(), EEDetId::iy(), makeOccupancyHistos_, and edm::Handle< T >::product().

371  {
372  const EEDigiCollection* eeDigis = eeDigiHandle.product();
373  for (EEDigiCollection::const_iterator digiItr = eeDigis->begin(); digiItr != eeDigis->end(); ++digiItr) {
374  DetId det = digiItr->id();
376  size_t FEDid = 600 + elecId.dccId();
377  bool isEEM = false;
378  if (FEDid < 610)
379  isEEM = true;
380  EEDetId digiId = digiItr->id();
381  int ieta = digiId.iy();
382  int iphi = digiId.ix();
383  if (isEEM) {
384  digiOccupancyEEMAll_->Fill(iphi, ieta);
385  digiOccupancyEEMcoarseAll_->Fill(iphi, ieta);
386  if (makeOccupancyHistos_) {
387  digiOccupancyEEMcoarse_->Fill(iphi, ieta);
388  digiOccupancyEEM_->Fill(iphi, ieta);
389  }
390  } else {
391  digiOccupancyEEPAll_->Fill(iphi, ieta);
392  digiOccupancyEEPcoarseAll_->Fill(iphi, ieta);
393  if (makeOccupancyHistos_) {
394  digiOccupancyEEP_->Fill(iphi, ieta);
395  digiOccupancyEEPcoarse_->Fill(iphi, ieta);
396  }
397  }
398  }
399 }
int ix() const
Definition: EEDetId.h:77
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
const EcalElectronicsMapping * ecalElectronicsMap_
const_iterator begin() const
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
int iy() const
Definition: EEDetId.h:83
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
Definition: DetId.h:18
T const * product() const
Definition: Handle.h:74
const_iterator end() const
void EcalDisplaysByEvent::makeHistos ( edm::Handle< EcalRecHitCollection hits)
private

Definition at line 401 of file EcalDisplaysByEvent.cc.

References allFedsTimingHist_, edm::SortedCollection< T, SORT >::begin(), EcalElectronicsId::dccId(), ecalElectronicsMap_, edm::SortedCollection< T, SORT >::end(), EcalRecHit::energy(), energyEB_, energyEBAll_, energyEEM_, energyEEMAll_, energyEEP_, energyEEPAll_, energyMapEB_, energyMapEBAll_, energyMapEBcoarse_, energyMapEBcoarseAll_, energyMapEEM_, energyMapEEMAll_, energyMapEEMcoarse_, energyMapEEMcoarseAll_, energyMapEEP_, energyMapEEPAll_, energyMapEEPcoarse_, energyMapEEPcoarseAll_, FEDsAndTimingHists_, EcalElectronicsMapping::getElectronicsId(), EcalRecHit::id(), initHists(), GeomDetEnumerators::isBarrel(), makeEnergyHistos_, makeOccupancyHistos_, makeTimingHistos_, minTimingAmp_, minTimingEnergyEB_, minTimingEnergyEE_, recHitOccupancyEB_, recHitOccupancyEBAll_, recHitOccupancyEBcoarse_, recHitOccupancyEBcoarseAll_, recHitOccupancyEEM_, recHitOccupancyEEMAll_, recHitOccupancyEEMcoarse_, recHitOccupancyEEMcoarseAll_, recHitOccupancyEEP_, recHitOccupancyEEPAll_, recHitOccupancyEEPcoarse_, recHitOccupancyEEPcoarseAll_, protons_cff::time, EcalRecHit::time(), timingEB_, timingEBAll_, timingEEM_, timingEEMAll_, timingEEP_, timingEEPAll_, timingMapEB_, timingMapEBAll_, timingMapEBCoarseAll_, timingMapEEM_, timingMapEEMAll_, timingMapEEMCoarseAll_, timingMapEEP_, timingMapEEPAll_, and timingMapEEPCoarseAll_.

401  {
402  for (EcalRecHitCollection::const_iterator hitItr = hits->begin(); hitItr != hits->end(); ++hitItr) {
403  EcalRecHit hit = (*hitItr);
404  DetId det = hit.id();
406  int FEDid = 600 + elecId.dccId();
407  bool isBarrel = true;
408  bool isEEM = false;
409  if (FEDid < 610 || FEDid > 645) {
410  isBarrel = false;
411  if (FEDid < 610)
412  isEEM = true;
413  }
414  int iphi = isBarrel ? ((EBDetId)det).iphi() : ((EEDetId)det).ix();
415  int ieta = isBarrel ? ((EBDetId)det).ieta() : ((EEDetId)det).iy();
416  float energy = hit.energy();
417  float time = hit.time();
418 
419  // Fill energy histos
420  if (makeEnergyHistos_) {
421  if (isBarrel) {
422  energyEB_->Fill(energy);
423  energyMapEB_->Fill(iphi, ieta, energy);
424  energyMapEBcoarse_->Fill(iphi, ieta, energy);
425  } else if (isEEM) {
426  energyEEM_->Fill(energy);
427  energyMapEEM_->Fill(iphi, ieta, energy);
428  energyMapEEMcoarse_->Fill(iphi, ieta, energy);
429  } else {
430  energyEEP_->Fill(energy);
431  energyMapEEP_->Fill(iphi, ieta, energy);
432  energyMapEEPcoarse_->Fill(iphi, ieta, energy);
433  }
434  }
435  // Fill occupancy histos
436  if (makeOccupancyHistos_) {
437  if (isBarrel) {
438  recHitOccupancyEB_->Fill(iphi, ieta);
439  recHitOccupancyEBcoarse_->Fill(iphi, ieta);
440  } else if (isEEM) {
441  recHitOccupancyEEM_->Fill(iphi, ieta);
442  recHitOccupancyEEMcoarse_->Fill(iphi, ieta);
443  } else {
444  recHitOccupancyEEP_->Fill(iphi, ieta);
445  recHitOccupancyEEPcoarse_->Fill(iphi, ieta);
446  }
447  }
448 
449  // Fill timing histos
450  if (makeTimingHistos_) {
451  if (isBarrel) {
452  timingEB_->Fill(time);
453  if (energy > minTimingEnergyEB_) {
454  timingMapEB_->Fill(iphi, ieta, time);
455  //timingMapEBCoarse_->Fill(iphi,ieta,time);
456  }
457  } else if (isEEM) {
458  timingEEM_->Fill(time);
459  if (energy > minTimingEnergyEE_) {
460  timingMapEEM_->Fill(iphi, ieta, time);
461  //timingMapEEMCoarse_->Fill(iphi,ieta,time);
462  }
463  } else {
464  timingEEP_->Fill(time);
465  if (energy > minTimingEnergyEE_) {
466  timingMapEEP_->Fill(iphi, ieta, time);
467  //timingMapEEPCoarse_->Fill(iphi,ieta,time);
468  }
469  }
470  }
471 
472  //All events
473  if (isBarrel) {
474  energyEBAll_->Fill(energy);
475  energyMapEBAll_->Fill(iphi, ieta, energy);
476  energyMapEBcoarseAll_->Fill(iphi, ieta, energy);
477  recHitOccupancyEBAll_->Fill(iphi, ieta);
478  recHitOccupancyEBcoarseAll_->Fill(iphi, ieta);
479  timingEBAll_->Fill(time);
480  if (energy > minTimingEnergyEB_) {
481  timingMapEBAll_->Fill(iphi, ieta, time);
482  timingMapEBCoarseAll_->Fill(iphi, ieta, time);
483  }
484  } else if (isEEM) {
485  energyEEMAll_->Fill(energy);
486  energyMapEEMAll_->Fill(iphi, ieta, energy);
487  energyMapEEMcoarseAll_->Fill(iphi, ieta, energy);
488  recHitOccupancyEEMAll_->Fill(iphi, ieta);
489  recHitOccupancyEEMcoarseAll_->Fill(iphi, ieta);
490  timingEEMAll_->Fill(time);
491  if (energy > minTimingEnergyEE_) {
492  timingMapEEMAll_->Fill(iphi, ieta, time);
493  timingMapEEMCoarseAll_->Fill(iphi, ieta, time);
494  }
495  } else {
496  energyEEPAll_->Fill(energy);
497  energyMapEEPAll_->Fill(iphi, ieta, energy);
498  energyMapEEPcoarseAll_->Fill(iphi, ieta, energy);
499  recHitOccupancyEEPAll_->Fill(iphi, ieta);
500  recHitOccupancyEEPcoarseAll_->Fill(iphi, ieta);
501  timingEEPAll_->Fill(time);
502  if (energy > minTimingEnergyEE_) {
503  timingMapEEPAll_->Fill(iphi, ieta, time);
504  timingMapEEPCoarseAll_->Fill(iphi, ieta, time);
505  }
506  }
507  // Fill FED-by-FED timing histos (all events)
508  TH1F* timingHist = FEDsAndTimingHists_[FEDid];
509  if (timingHist == nullptr) {
510  initHists(FEDid);
511  timingHist = FEDsAndTimingHists_[FEDid];
512  }
513  if (energy > minTimingAmp_) {
514  timingHist->Fill(hit.time());
515  allFedsTimingHist_->Fill(hit.time());
516  }
517  }
518 }
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
const EcalElectronicsMapping * ecalElectronicsMap_
bool isBarrel(GeomDetEnumerators::SubDetector m)
std::vector< EcalRecHit >::const_iterator const_iterator
float time() const
Definition: EcalRecHit.h:70
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
float energy() const
Definition: EcalRecHit.h:68
std::map< int, TH1F * > FEDsAndTimingHists_
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
const_iterator end() const
Definition: DetId.h:18
DetId id() const
get the id
Definition: EcalRecHit.h:77
const_iterator begin() const
TGraph * EcalDisplaysByEvent::selectDigi ( DetId  det,
int  ievt 
)
private

Definition at line 250 of file EcalDisplaysByEvent.cc.

References abscissa, EcalMGPASample::adc(), edm::DataFrameContainer::begin(), crysAndAmplitudesMap_, EcalElectronicsId::dccId(), DetId::det(), EBdigisHandle, DetId::Ecal, ecalElectronicsMap_, EEdigisHandle, edm::DataFrameContainer::end(), fedMap_, FEDsAndDCCHeaders_, fileService, objects.autophobj::float, floatToString(), ecalMGPA::gainId(), EcalMGPASample::gainId(), gainRatio, getEEIndex(), EcalElectronicsMapping::getElectronicsId(), EcalFedMap::getSliceFromFed(), mps_fire::i, intToString(), GeomDetEnumerators::isBarrel(), TFileService::make(), naiveEvtNum_, dataset::name, ordinate, muonCSCDigis_cfi::pedestal, EcalDataFrame::sample(), EcalDataFrame::size(), and runGCPTkAlMap::title.

Referenced by selectHits().

250  {
251  int emptyY[10];
252  for (int i = 0; i < 10; i++)
253  emptyY[i] = 0;
254  TGraph* emptyGraph = fileService->make<TGraph>(10, abscissa, emptyY);
255  emptyGraph->SetTitle("NOT ECAL");
256 
257  //If the DetId is not from Ecal, return
258  if (thisDet.det() != DetId::Ecal)
259  return emptyGraph;
260 
261  emptyGraph->SetTitle("NO DIGIS");
262  //find digi we need -- can't get find() to work; need DataFrame(DetId det) to work?
264  int FEDid = 600 + elecId.dccId();
265  bool isBarrel = true;
266  if (FEDid < 610 || FEDid > 645)
267  isBarrel = false;
268  int cryIndex = isBarrel ? ((EBDetId)thisDet).hashedIndex() : getEEIndex(elecId);
269  int ic = isBarrel ? ((EBDetId)thisDet).ic() : cryIndex;
270 
271  string sliceName = fedMap_->getSliceFromFed(FEDid);
272  EcalDataFrame df;
273  if (isBarrel) {
275  while (digiItr != EBdigisHandle->end() && ((*digiItr).id() != (EBDetId)thisDet)) {
276  ++digiItr;
277  }
278  if (digiItr == EBdigisHandle->end()) {
279  //LogWarning("EcalDisplaysByEvent") << "Cannot find digi for ic:" << ic
280  // << " FED:" << FEDid << " evt:" << naiveEvtNum_;
281  return emptyGraph;
282  } else
283  df = *digiItr;
284  } else {
286  while (digiItr != EEdigisHandle->end() && ((*digiItr).id() != (EEDetId)thisDet)) {
287  ++digiItr;
288  }
289  if (digiItr == EEdigisHandle->end()) {
290  //LogWarning("EcalDisplaysByEvent") << "Cannot find digi for ic:" << ic
291  // << " FED:" << FEDid << " evt:" << naiveEvtNum_;
292  return emptyGraph;
293  } else
294  df = *digiItr;
295  }
296 
297  int gainId = FEDsAndDCCHeaders_[FEDid].getMgpaGain();
298  int gainHuman;
299  if (gainId == 1)
300  gainHuman = 12;
301  else if (gainId == 2)
302  gainHuman = 6;
303  else if (gainId == 3)
304  gainHuman = 1;
305  else
306  gainHuman = -1;
307 
308  double pedestal = 200;
309 
310  emptyGraph->SetTitle("FIRST TWO SAMPLES NOT GAIN12");
311  if (df.sample(0).gainId() != 1 || df.sample(1).gainId() != 1)
312  return emptyGraph; //goes to the next digi
313  else {
314  ordinate[0] = df.sample(0).adc();
315  ordinate[1] = df.sample(1).adc();
316  pedestal = (double)(ordinate[0] + ordinate[1]) / (double)2;
317  }
318 
319  for (int i = 0; i < df.size(); ++i) {
320  if (df.sample(i).gainId() != 0)
321  ordinate[i] = (int)(pedestal + (df.sample(i).adc() - pedestal) * gainRatio[df.sample(i).gainId() - 1]);
322  else
323  ordinate[i] = 49152; //Saturation of gain1
324  }
325 
326  TGraph* oneGraph = fileService->make<TGraph>(10, abscissa, ordinate);
327  string name = "Graph_ev" + intToString(naiveEvtNum_) + "_ic" + intToString(ic) + "_FED" + intToString(FEDid);
328  string gainString = (gainId == 1) ? "Free" : intToString(gainHuman);
329  string title = "Event" + intToString(naiveEvtNum_) + "_lv1a" + intToString(ievt) + "_ic" + intToString(ic) + "_" +
330  sliceName + "_gain" + gainString;
331 
332  float energy = 0;
333  map<int, float>::const_iterator itr;
334  itr = crysAndAmplitudesMap_.find(cryIndex);
335  if (itr != crysAndAmplitudesMap_.end()) {
336  //edm::LogWarning("EcalDisplaysByEvent")<< "itr->second(ampli)="<< itr->second;
337  energy = (float)itr->second;
338  }
339  //else
340  //edm::LogWarning("EcalDisplaysByEvent") << "cry " << ic << "not found in ampMap";
341 
342  title += "_Energy" + floatToString(round(energy * 1000));
343 
344  oneGraph->SetTitle(title.c_str());
345  oneGraph->SetName(name.c_str());
346  oneGraph->GetXaxis()->SetTitle("sample");
347  oneGraph->GetYaxis()->SetTitle("ADC");
348  return oneGraph;
349 }
edm::Handle< EEDigiCollection > EEdigisHandle
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
const EcalElectronicsMapping * ecalElectronicsMap_
int getEEIndex(EcalElectronicsId elecId)
bool isBarrel(GeomDetEnumerators::SubDetector m)
EcalMGPASample sample(int i) const
Definition: EcalDataFrame.h:29
std::map< int, EcalDCCHeaderBlock > FEDsAndDCCHeaders_
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
const_iterator begin() const
int gainId() const
get the gainId (2 bits)
int size() const
Definition: EcalDataFrame.h:26
std::string getSliceFromFed(int)
Definition: EcalFedMap.cc:86
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
static edm::Service< TFileService > fileService
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
std::string intToString(int num)
static float gainRatio[3]
edm::Handle< EBDigiCollection > EBdigisHandle
const_iterator end() const
std::string floatToString(float num)
constexpr int gainId(sample_type sample)
get the gainId (2 bits)
std::map< int, float > crysAndAmplitudesMap_
int adc() const
get the ADC sample (12 bits)
void EcalDisplaysByEvent::selectHits ( edm::Handle< EcalRecHitCollection hits,
int  ievt,
edm::ESHandle< CaloTopology caloTopo 
)
private

Definition at line 184 of file EcalDisplaysByEvent.cc.

References edm::SortedCollection< T, SORT >::begin(), crysAndAmplitudesMap_, EcalElectronicsId::dccId(), ecalElectronicsMap_, edm::SortedCollection< T, SORT >::end(), EcalRecHit::energy(), spr::find(), getEEIndex(), EcalElectronicsMapping::getElectronicsId(), CaloTopology::getSubdetectorTopology(), CaloNavigator< T, TOPO >::home(), mps_fire::i, EcalRecHit::id(), intToString(), GeomDetEnumerators::isBarrel(), maskedChannels_, maskedFEDs_, naiveEvtNum_, dataset::name, names, CaloNavigator< T, TOPO >::offsetBy(), mps_fire::result, SurveyInfoScenario_cff::seed, seedCrys_, seedFrequencyMap_, selectDigi(), side_, threshold_, and runGCPTkAlMap::title.

Referenced by analyze().

184  {
185  for (EcalRecHitCollection::const_iterator hitItr = hits->begin(); hitItr != hits->end(); ++hitItr) {
186  EcalRecHit hit = (*hitItr);
187  DetId det = hit.id();
189  int FEDid = 600 + elecId.dccId();
190  bool isBarrel = true;
191  if (FEDid < 610 || FEDid > 645)
192  isBarrel = false;
193  int cryIndex = isBarrel ? ((EBDetId)det).hashedIndex() : getEEIndex(elecId);
194  int ic = isBarrel ? ((EBDetId)det).ic() : getEEIndex(elecId);
195 
196  float ampli = hit.energy();
197 
198  vector<int>::iterator result;
199  result = find(maskedFEDs_.begin(), maskedFEDs_.end(), FEDid);
200  if (result != maskedFEDs_.end()) {
201  //LogWarning("EcalDisplaysByEvent") << "skipping uncalRecHit for FED " << FEDid << " ; amplitude " << ampli;
202  continue;
203  }
204  result = find(maskedChannels_.begin(), maskedChannels_.end(), cryIndex);
205  if (result != maskedChannels_.end()) {
206  //LogWarning("EcalDisplaysByEvent") << "skipping uncalRecHit for channel: " << cryIndex << " in fed: " << FEDid << " with amplitude " << ampli ;
207  continue;
208  }
209  bool cryIsInList = false;
210  result = find(seedCrys_.begin(), seedCrys_.end(), cryIndex);
211  if (result != seedCrys_.end())
212  cryIsInList = true;
213 
214  // Either we must have a user-requested cry (in which case there is no amplitude selection)
215  // Or we pick all crys that pass the amplitude cut (in which case there is no fixed crystal selection)
216  if (cryIsInList || (seedCrys_.empty() && ampli > threshold_)) {
217  // We have a winner!
218  crysAndAmplitudesMap_[cryIndex] = ampli;
219  string name = "Digis_Event" + intToString(naiveEvtNum_) + "_ic" + intToString(ic) + "_FED" + intToString(FEDid);
220  string title = "Digis";
221  string seed = "ic" + intToString(ic) + "_FED" + intToString(FEDid);
222  int freq = 1;
223  pair<map<string, int>::iterator, bool> pair = seedFrequencyMap_.insert(make_pair(seed, freq));
224  if (!pair.second) {
225  ++(pair.first->second);
226  }
227 
228  //TODO: move this also to TFileService
229  TCanvas can(name.c_str(), title.c_str(), 200, 50, 900, 900);
230  can.Divide(side_, side_);
231  TGraph* myGraph;
232 
234  //Now put each graph in one by one
235  for (int j = side_ / 2; j >= -side_ / 2; --j) {
236  for (int i = -side_ / 2; i <= side_ / 2; ++i) {
237  cursor.home();
238  cursor.offsetBy(i, j);
239  can.cd(i + 1 + side_ / 2 + side_ * (1 - j));
240  myGraph = selectDigi(*cursor, ievt);
241  myGraph->Draw("A*");
242  }
243  }
244  can.Write();
245  names->push_back(name);
246  }
247  }
248 }
std::vector< int > maskedChannels_
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
std::vector< std::string > * names
const EcalElectronicsMapping * ecalElectronicsMap_
int getEEIndex(EcalElectronicsId elecId)
bool isBarrel(GeomDetEnumerators::SubDetector m)
std::vector< EcalRecHit >::const_iterator const_iterator
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:20
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
T offsetBy(int deltaX, int deltaY) const
Free movement of arbitray steps.
Definition: CaloNavigator.h:80
std::vector< int > maskedFEDs_
float energy() const
Definition: EcalRecHit.h:68
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
const_iterator end() const
std::string intToString(int num)
void home() const
move the navigator back to the starting point
Definition: DetId.h:18
DetId id() const
get the id
Definition: EcalRecHit.h:77
const CaloSubdetectorTopology * getSubdetectorTopology(const DetId &id) const
access the subdetector Topology for the given subdetector directly
Definition: CaloTopology.cc:20
std::map< std::string, int > seedFrequencyMap_
std::vector< int > seedCrys_
TGraph * selectDigi(DetId det, int ievt)
const_iterator begin() const
std::map< int, float > crysAndAmplitudesMap_

Member Data Documentation

int EcalDisplaysByEvent::abscissa[10]
private

Definition at line 121 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), and selectDigi().

TH1F* EcalDisplaysByEvent::allFedsTimingHist_
private

Definition at line 138 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), and makeHistos().

TTree* EcalDisplaysByEvent::canvasNames_
private

Definition at line 223 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and endJob().

std::map<int, float> EcalDisplaysByEvent::crysAndAmplitudesMap_
private

Definition at line 134 of file EcalDisplaysByEvent.h.

Referenced by selectDigi(), and selectHits().

TCanvas* EcalDisplaysByEvent::digiOccupancyCanvas_
private

Definition at line 176 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::digiOccupancyCanvasAll_
private

Definition at line 218 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TCanvas* EcalDisplaysByEvent::digiOccupancyCoarseCanvas_
private

Definition at line 177 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::digiOccupancyCoarseCanvasAll_
private

Definition at line 219 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEB_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEBAll_
private

Definition at line 200 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEBcoarse_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEBcoarseAll_
private

Definition at line 201 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEEM_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEEMAll_
private

Definition at line 202 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEEMcoarse_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEEMcoarseAll_
private

Definition at line 203 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEEP_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEEPAll_
private

Definition at line 204 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEEPcoarse_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEEPcoarseAll_
private

Definition at line 205 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

edm::InputTag EcalDisplaysByEvent::EBDigis_
private

Definition at line 98 of file EcalDisplaysByEvent.h.

Referenced by analyze().

edm::Handle<EBDigiCollection> EcalDisplaysByEvent::EBdigisHandle
private

Definition at line 102 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectDigi().

edm::InputTag EcalDisplaysByEvent::EBRecHitCollection_
private

Definition at line 96 of file EcalDisplaysByEvent.h.

Referenced by analyze().

const EcalElectronicsMapping* EcalDisplaysByEvent::ecalElectronicsMap_
private

Definition at line 226 of file EcalDisplaysByEvent.h.

Referenced by beginRun(), makeHistos(), selectDigi(), and selectHits().

edm::InputTag EcalDisplaysByEvent::EEDigis_
private

Definition at line 99 of file EcalDisplaysByEvent.h.

Referenced by analyze().

edm::Handle<EEDigiCollection> EcalDisplaysByEvent::EEdigisHandle
private

Definition at line 103 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectDigi().

edm::InputTag EcalDisplaysByEvent::EERecHitCollection_
private

Definition at line 97 of file EcalDisplaysByEvent.h.

Referenced by analyze().

TCanvas* EcalDisplaysByEvent::energyCanvas_
private

Definition at line 171 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::energyCanvasAll_
private

Definition at line 213 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TH1F* EcalDisplaysByEvent::energyEB_
private
TH1F* EcalDisplaysByEvent::energyEBAll_
private

Definition at line 185 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH1F* EcalDisplaysByEvent::energyEEM_
private
TH1F* EcalDisplaysByEvent::energyEEMAll_
private

Definition at line 186 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH1F* EcalDisplaysByEvent::energyEEP_
private
TH1F* EcalDisplaysByEvent::energyEEPAll_
private

Definition at line 187 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TCanvas* EcalDisplaysByEvent::energyMapCanvas_
private

Definition at line 172 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::energyMapCanvasAll_
private

Definition at line 214 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TCanvas* EcalDisplaysByEvent::energyMapCoarseCanvas_
private

Definition at line 173 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::energyMapCoarseCanvasAll_
private

Definition at line 215 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TH2F* EcalDisplaysByEvent::energyMapEB_
private
TH2F* EcalDisplaysByEvent::energyMapEBAll_
private

Definition at line 188 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::energyMapEBcoarse_
private
TH2F* EcalDisplaysByEvent::energyMapEBcoarseAll_
private

Definition at line 189 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::energyMapEEM_
private
TH2F* EcalDisplaysByEvent::energyMapEEMAll_
private

Definition at line 190 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::energyMapEEMcoarse_
private
TH2F* EcalDisplaysByEvent::energyMapEEMcoarseAll_
private

Definition at line 191 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::energyMapEEP_
private
TH2F* EcalDisplaysByEvent::energyMapEEPAll_
private

Definition at line 192 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::energyMapEEPcoarse_
private
TH2F* EcalDisplaysByEvent::energyMapEEPcoarseAll_
private

Definition at line 193 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

EcalFedMap* EcalDisplaysByEvent::fedMap_
private

Definition at line 225 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), initHists(), and selectDigi().

std::map<int, EcalDCCHeaderBlock> EcalDisplaysByEvent::FEDsAndDCCHeaders_
private

Definition at line 135 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectDigi().

std::map<int, TH1F*> EcalDisplaysByEvent::FEDsAndTimingHists_
private

Definition at line 133 of file EcalDisplaysByEvent.h.

Referenced by initHists(), and makeHistos().

edm::Service< TFileService > EcalDisplaysByEvent::fileService
staticprivate

Definition at line 125 of file EcalDisplaysByEvent.h.

Referenced by analyze(), EcalDisplaysByEvent(), initHists(), and selectDigi().

float EcalDisplaysByEvent::gainRatio = {1., 2., 12.}
staticprivate

Definition at line 124 of file EcalDisplaysByEvent.h.

Referenced by selectDigi().

edm::InputTag EcalDisplaysByEvent::headerProducer_
private

Definition at line 100 of file EcalDisplaysByEvent.h.

Referenced by analyze().

TTree* EcalDisplaysByEvent::histoCanvasNames_
private

Definition at line 224 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and endJob().

std::vector<std::string>* EcalDisplaysByEvent::histoCanvasNamesVector
private

Definition at line 128 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and drawCanvas().

double EcalDisplaysByEvent::histRangeMax_
private

Definition at line 114 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

double EcalDisplaysByEvent::histRangeMin_
private

Definition at line 113 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

std::set<EBDetId> EcalDisplaysByEvent::listEBChannels
private

Definition at line 118 of file EcalDisplaysByEvent.h.

Referenced by analyze().

std::set<EEDetId> EcalDisplaysByEvent::listEEChannels
private

Definition at line 119 of file EcalDisplaysByEvent.h.

Referenced by analyze().

bool EcalDisplaysByEvent::makeDigiGraphs_
private

Definition at line 109 of file EcalDisplaysByEvent.h.

Referenced by analyze().

bool EcalDisplaysByEvent::makeEnergyHistos_
private

Definition at line 111 of file EcalDisplaysByEvent.h.

Referenced by drawHistos(), initEvtByEvtHists(), and makeHistos().

bool EcalDisplaysByEvent::makeOccupancyHistos_
private

Definition at line 112 of file EcalDisplaysByEvent.h.

Referenced by drawHistos(), initEvtByEvtHists(), and makeHistos().

bool EcalDisplaysByEvent::makeTimingHistos_
private

Definition at line 110 of file EcalDisplaysByEvent.h.

Referenced by drawHistos(), initEvtByEvtHists(), and makeHistos().

std::vector<int> EcalDisplaysByEvent::maskedChannels_
private

Definition at line 129 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), endJob(), and selectHits().

std::vector<std::string> EcalDisplaysByEvent::maskedEBs_
private

Definition at line 132 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent().

std::vector<int> EcalDisplaysByEvent::maskedFEDs_
private

Definition at line 130 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), endJob(), and selectHits().

double EcalDisplaysByEvent::minTimingAmp_
private

Definition at line 108 of file EcalDisplaysByEvent.h.

Referenced by makeHistos().

double EcalDisplaysByEvent::minTimingEnergyEB_
private

Definition at line 115 of file EcalDisplaysByEvent.h.

Referenced by makeHistos().

double EcalDisplaysByEvent::minTimingEnergyEE_
private

Definition at line 116 of file EcalDisplaysByEvent.h.

Referenced by makeHistos().

int EcalDisplaysByEvent::naiveEvtNum_
private

Definition at line 228 of file EcalDisplaysByEvent.h.

Referenced by analyze(), EcalDisplaysByEvent(), selectDigi(), and selectHits().

std::vector<std::string>* EcalDisplaysByEvent::names
private

Definition at line 127 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectHits().

int EcalDisplaysByEvent::ordinate[10]
private

Definition at line 122 of file EcalDisplaysByEvent.h.

Referenced by selectDigi().

TCanvas* EcalDisplaysByEvent::recHitOccupancyCanvas_
private

Definition at line 174 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::recHitOccupancyCanvasAll_
private

Definition at line 216 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TCanvas* EcalDisplaysByEvent::recHitOccupancyCoarseCanvas_
private

Definition at line 175 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::recHitOccupancyCoarseCanvasAll_
private

Definition at line 217 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEB_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEBAll_
private

Definition at line 194 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEBcoarse_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEBcoarseAll_
private

Definition at line 195 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEEM_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEEMAll_
private

Definition at line 196 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEEMcoarse_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEEMcoarseAll_
private

Definition at line 197 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEEP_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEEPAll_
private

Definition at line 198 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEEPcoarse_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEEPcoarseAll_
private

Definition at line 199 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

int EcalDisplaysByEvent::runNum_
private

Definition at line 105 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and endJob().

std::vector<int> EcalDisplaysByEvent::seedCrys_
private

Definition at line 131 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), and selectHits().

std::map<std::string, int> EcalDisplaysByEvent::seedFrequencyMap_
private

Definition at line 136 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and selectHits().

int EcalDisplaysByEvent::side_
private

Definition at line 106 of file EcalDisplaysByEvent.h.

Referenced by selectHits().

double EcalDisplaysByEvent::threshold_
private

Definition at line 107 of file EcalDisplaysByEvent.h.

Referenced by selectHits().

TCanvas* EcalDisplaysByEvent::timingCanvas_
private

Definition at line 170 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::timingCanvasAll_
private

Definition at line 212 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TH1F* EcalDisplaysByEvent::timingEB_
private
TH1F* EcalDisplaysByEvent::timingEBAll_
private

Definition at line 182 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH1F* EcalDisplaysByEvent::timingEEM_
private
TH1F* EcalDisplaysByEvent::timingEEMAll_
private

Definition at line 183 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH1F* EcalDisplaysByEvent::timingEEP_
private
TH1F* EcalDisplaysByEvent::timingEEPAll_
private

Definition at line 184 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TCanvas* EcalDisplaysByEvent::timingMapCanvas_
private

Definition at line 179 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::timingMapCanvasAll_
private

Definition at line 221 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TCanvas* EcalDisplaysByEvent::timingMapCoarseCanvas_
private

Definition at line 178 of file EcalDisplaysByEvent.h.

Referenced by drawCanvas().

TCanvas* EcalDisplaysByEvent::timingMapCoarseCanvasAll_
private

Definition at line 220 of file EcalDisplaysByEvent.h.

TH3F* EcalDisplaysByEvent::timingMapEB_
private
TH3F* EcalDisplaysByEvent::timingMapEBAll_
private

Definition at line 209 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH3F* EcalDisplaysByEvent::timingMapEBCoarse_
private

Definition at line 164 of file EcalDisplaysByEvent.h.

TH3F* EcalDisplaysByEvent::timingMapEBCoarseAll_
private

Definition at line 206 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and makeHistos().

TH3F* EcalDisplaysByEvent::timingMapEEM_
private
TH3F* EcalDisplaysByEvent::timingMapEEMAll_
private

Definition at line 210 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH3F* EcalDisplaysByEvent::timingMapEEMCoarse_
private

Definition at line 165 of file EcalDisplaysByEvent.h.

Referenced by initEvtByEvtHists().

TH3F* EcalDisplaysByEvent::timingMapEEMCoarseAll_
private

Definition at line 207 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and makeHistos().

TH3F* EcalDisplaysByEvent::timingMapEEP_
private
TH3F* EcalDisplaysByEvent::timingMapEEPAll_
private

Definition at line 211 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH3F* EcalDisplaysByEvent::timingMapEEPCoarse_
private

Definition at line 166 of file EcalDisplaysByEvent.h.

Referenced by initEvtByEvtHists().

TH3F* EcalDisplaysByEvent::timingMapEEPCoarseAll_
private

Definition at line 208 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and makeHistos().