CMS 3D CMS Logo

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

List of all members.

Public Member Functions

 EcalDisplaysByEvent (const edm::ParameterSet &)
 ~EcalDisplaysByEvent ()

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

virtual void analyze (edm::Event const &, edm::EventSetup const &)
virtual void beginRun (edm::Run const &, edm::EventSetup const &)
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)
virtual void endJob ()
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< EEDigiCollection > eeDigis)
void makeHistos (edm::Handle< EcalRecHitCollection > hits)
void makeHistos (edm::Handle< EBDigiCollection > ebDigis)
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. }

Detailed Description

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

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

Definition at line 65 of file EcalDisplaysByEvent.h.


Member Enumeration Documentation

Enumerator:
EB_FINE 
EB_COARSE 
EEM_FINE 
EEM_COARSE 
EEP_FINE 
EEP_COARSE 

Definition at line 81 of file EcalDisplaysByEvent.h.

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

Constructor & Destructor Documentation

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

Definition at line 44 of file EcalDisplaysByEvent.cc.

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

                                                                       :
  EBRecHitCollection_ (iConfig.getParameter<edm::InputTag>("EcalRecHitCollectionEB")),
  EERecHitCollection_ (iConfig.getParameter<edm::InputTag>("EcalRecHitCollectionEE")),
  EBDigis_ (iConfig.getParameter<edm::InputTag>("EBDigiCollection")),
  EEDigis_ (iConfig.getParameter<edm::InputTag>("EEDigiCollection")),
  headerProducer_ (iConfig.getParameter<edm::InputTag> ("headerProducer")),
  runNum_(-1),
  side_ (iConfig.getUntrackedParameter<int>("side", 3)),
  threshold_ (iConfig.getUntrackedParameter<double>("amplitudeThreshold", 0.5)),
  minTimingAmp_ (iConfig.getUntrackedParameter<double>("minimumTimingAmplitude", 0.100)),
  makeDigiGraphs_ (iConfig.getUntrackedParameter<bool>("makeDigiGraphs", false)),
  makeTimingHistos_ (iConfig.getUntrackedParameter<bool>("makeTimingHistos", true)),
  makeEnergyHistos_ (iConfig.getUntrackedParameter<bool>("makeEnergyHistos", true)),
  makeOccupancyHistos_ (iConfig.getUntrackedParameter<bool>("makeOccupancyHistos", true)),
  histRangeMin_ (iConfig.getUntrackedParameter<double>("histogramMinRange",0.0)),
  histRangeMax_ (iConfig.getUntrackedParameter<double>("histogramMaxRange",1.8)),
  minTimingEnergyEB_ (iConfig.getUntrackedParameter<double>("minTimingEnergyEB",0.0)),
  minTimingEnergyEE_ (iConfig.getUntrackedParameter<double>("minTimingEnergyEE",0.0))
{
  vector<int> listDefaults;
  listDefaults.push_back(-1);
  
  maskedChannels_ = iConfig.getUntrackedParameter<vector<int> >("maskedChannels", listDefaults);
  maskedFEDs_ = iConfig.getUntrackedParameter<vector<int> >("maskedFEDs", listDefaults);
  seedCrys_ = iConfig.getUntrackedParameter<vector<int> >("seedCrys",listDefaults);

  vector<string> defaultMaskedEBs;
  defaultMaskedEBs.push_back("none");
  maskedEBs_ =  iConfig.getUntrackedParameter<vector<string> >("maskedEBs",defaultMaskedEBs);
  
  fedMap_ = new EcalFedMap();

  string title1 = "Jitter for all FEDs all events";
  string name1 = "JitterAllFEDsAllEvents";
  allFedsTimingHist_ = fileService->make<TH1F>(name1.c_str(),title1.c_str(),150,-7,7);

  // load up the maskedFED list with the proper FEDids
  if(maskedFEDs_[0]==-1)
  {
    //if "actual" EB id given, then convert to FEDid and put in listFEDs_
    if(maskedEBs_[0] != "none")
    {
      maskedFEDs_.clear();
      for(vector<string>::const_iterator ebItr = maskedEBs_.begin(); ebItr != maskedEBs_.end(); ++ebItr)
      {
        maskedFEDs_.push_back(fedMap_->getFedFromSlice(*ebItr));
      }
    }
  }
  
  for (int i=0; i<10; i++)        
    abscissa[i] = i;
  
  naiveEvtNum_ = 0;

  initAllEventHistos();
}
EcalDisplaysByEvent::~EcalDisplaysByEvent ( )

Definition at line 103 of file EcalDisplaysByEvent.cc.

{
}

Member Function Documentation

void EcalDisplaysByEvent::analyze ( edm::Event const &  iEvent,
edm::EventSetup const &  iSetup 
) [private, virtual]

Implements edm::EDAnalyzer.

Definition at line 123 of file EcalDisplaysByEvent.cc.

References canvasNames_, deleteEvtByEvtHists(), drawHistos(), EBDigis_, EBdigisHandle, EBRecHitCollection_, EEDigis_, EEdigisHandle, EERecHitCollection_, edm::EventID::event(), FEDsAndDCCHeaders_, fileService, edm::EventSetup::get(), edm::Event::getByLabel(), headerProducer_, histoCanvasNames_, histoCanvasNamesVector, edm::EventBase::id(), initEvtByEvtHists(), listEBChannels, listEEChannels, makeDigiGraphs_, makeHistos(), naiveEvtNum_, names, edm::EventID::run(), runNum_, and selectHits().

{

  // get the headers
  // (one header for each supermodule)
  edm::Handle<EcalRawDataCollection> DCCHeaders;
  iEvent.getByLabel(headerProducer_, DCCHeaders);

  for (EcalRawDataCollection::const_iterator headerItr= DCCHeaders->begin();
                  headerItr != DCCHeaders->end (); 
                  ++headerItr) 
  {
    FEDsAndDCCHeaders_[headerItr->id()+600] = *headerItr;
  }

  int ievt = iEvent.id().event();
  naiveEvtNum_++;

  if(runNum_==-1)
  {
    runNum_ = iEvent.id().run();
    canvasNames_ = fileService->make<TTree>("canvasNames","Names of written canvases");
    names = new std::vector<string>();
    canvasNames_->Branch("names","vector<string>",&names);
    
    histoCanvasNames_ = fileService->make<TTree>("histoCanvasNames","Names of written canvases with histos");
    histoCanvasNamesVector = new std::vector<string>();
    histoCanvasNames_->Branch("histoCanvasNamesVector","vector<string>",&histoCanvasNamesVector);
  }

  //We only want the 3x3's for this event...
  listEBChannels.clear();
  listEEChannels.clear();

  //Get hits, digis, caloTopology from event/eventSetup
  Handle<EcalRecHitCollection> EBhits;
  Handle<EcalRecHitCollection> EEhits;
  ESHandle<CaloTopology> caloTopo;
  iSetup.get<CaloTopologyRecord>().get(caloTopo);
  iEvent.getByLabel(EBRecHitCollection_, EBhits);
  iEvent.getByLabel(EERecHitCollection_, EEhits);
  iEvent.getByLabel(EBDigis_, EBdigisHandle);
  iEvent.getByLabel(EEDigis_, EEdigisHandle);

  // Initialize histos for this event
  initEvtByEvtHists(naiveEvtNum_, ievt);
  
  bool hasEBdigis = false;
  bool hasEEdigis = false;
  if(EBdigisHandle->size() > 0)
    hasEBdigis = true;
  if(EEdigisHandle->size() > 0)
    hasEEdigis = true;

  // Produce the digi graphs
  if(makeDigiGraphs_)
  {
    if(hasEBdigis) //if event has digis, it should have hits
      selectHits(EBhits, ievt, caloTopo);
    if(hasEEdigis)
      selectHits(EEhits, ievt, caloTopo);
  }

  // Produce the histos
  if(hasEBdigis)
  {
    makeHistos(EBdigisHandle);
    makeHistos(EBhits);
  }
  if(hasEEdigis)
  {
    makeHistos(EEdigisHandle);
    makeHistos(EEhits);
  }

  if(hasEBdigis || hasEEdigis)
    drawHistos();

  deleteEvtByEvtHists();
}
void EcalDisplaysByEvent::beginRun ( edm::Run const &  ,
edm::EventSetup const &  c 
) [private, virtual]
void EcalDisplaysByEvent::deleteEvtByEvtHists ( ) [private]

Definition at line 739 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().

void EcalDisplaysByEvent::drawCanvas ( TCanvas *  canvas,
TH1F *  hist1,
TH1F *  hist2,
TH1F *  hist3 
) [private]

Definition at line 977 of file EcalDisplaysByEvent.cc.

References histoCanvasNamesVector.

Referenced by drawHistos(), and endJob().

                                                                                           {
  canvas->Divide(1,2); 
  canvas->cd(1)->Divide(2,1); 
  canvas->cd(1)->cd(1);
  hist1->Draw();
  canvas->cd(2); 
  hist2->Draw();
  canvas->cd(1)->cd(2);
  hist3->Draw(); 
  histoCanvasNamesVector->push_back(canvas->GetName());
  canvas->SetCanvasSize(500,500);
  canvas->SetFixedAspectRatio(true);
  canvas->Write();
}
void EcalDisplaysByEvent::drawCanvas ( TCanvas *  canvas,
TH2F *  hist1,
TH2F *  hist2,
TH2F *  hist3 
) [private]

Definition at line 992 of file EcalDisplaysByEvent.cc.

References drawEELines(), and histoCanvasNamesVector.

                                                                                           {
  canvas->Divide(1,2);
  canvas->cd(1)->Divide(2,1);
  // EEM
  canvas->cd(1)->cd(1);
  hist1->Draw("colz");
  drawEELines();  
  // EB
  canvas->cd(2);
  hist2->Draw("colz");
  hist2->GetXaxis()->SetNdivisions(-18);
  hist2->GetYaxis()->SetNdivisions(2);
  canvas->GetPad(2)->SetGridx(1);
  canvas->GetPad(2)->SetGridy(1);
  // EEP
  canvas->cd(1)->cd(2);
  hist3->Draw("colz");
  drawEELines();  
  histoCanvasNamesVector->push_back(canvas->GetName());
  canvas->SetCanvasSize(500,500);
  canvas->SetFixedAspectRatio(true);
  canvas->Write();
}
void EcalDisplaysByEvent::drawCanvas ( TCanvas *  canvas,
TH3F *  hist1,
TH3F *  hist2,
TH3F *  hist3 
) [private]

Definition at line 1016 of file EcalDisplaysByEvent.cc.

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

                                                                                           {
   if(canvas == timingMapCoarseCanvas_) {
      canvas->cd();
      TProfile2D* profile2 = (TProfile2D*) hist2->Project3DProfile("yx");
      profile2->Draw("colz");
      drawTimingErrors(profile2);
   }
   else {
      canvas->Divide(1,2);
      canvas->cd(1)->Divide(2,1);
      // EEM
      canvas->cd(1)->cd(1);
      TProfile2D* profile1 = (TProfile2D*) hist1->Project3DProfile("yx");
      profile1->Draw("colz");
      drawEELines();  
      // EB
      canvas->cd(2);
      TProfile2D* profile2 = (TProfile2D*) hist2->Project3DProfile("yx");
      profile2->Draw("colz");
      profile2->GetXaxis()->SetNdivisions(-18);
      profile2->GetYaxis()->SetNdivisions(2);
      canvas->GetPad(2)->SetGridx(1);
      canvas->GetPad(2)->SetGridy(1);
      // EEP
      canvas->cd(1)->cd(2);
      TProfile2D* profile3 = (TProfile2D*) hist3->Project3DProfile("yx");
      profile3->Draw("colz");
      drawEELines();  
   }
   histoCanvasNamesVector->push_back(canvas->GetName());
   canvas->SetCanvasSize(500,500);
   canvas->SetFixedAspectRatio(true);
   canvas->Write();
}
void EcalDisplaysByEvent::drawEELines ( ) [private]

Definition at line 1088 of file EcalDisplaysByEvent.cc.

References i, and prof2calltree::l.

Referenced by drawCanvas().

                                      {

  int ixSectorsEE[202] = {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, 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, 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, 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, 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, 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, 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, 30, 20, 20, 10, 10,  8,  0, 45, 45, 40, 40, 35, 35,  0, 55, 55, 60, 60, 65, 65};
 
  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, 45, 45, 43, 43, 42, 42, 41, 41, 40, 40, 39, 39, 40, 40, 41, 41, 42, 42, 43, 43, 45, 45, 50,  0, 50, 60, 60, 65, 65, 75, 75, 80, 80, 85, 85, 87, 87, 92, 92, 95, 95, 97, 97,100,100, 97, 97, 95, 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, 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, 40, 50,  0, 45, 45, 40, 40, 35, 35, 30, 30, 25, 25,  0, 50, 50, 55, 55, 60, 60,  0, 60, 60, 65, 65, 70, 70, 75, 75, 85, 85, 87,  0, 61,100,  0, 60, 60, 65, 65, 70, 70, 75, 75, 85, 85, 87,  0, 50, 50, 55, 55, 60, 60,  0, 45, 45, 40, 40, 35, 35, 30, 30, 25, 25,  0, 39, 30, 30, 15, 15,  5,  0, 39, 30, 30, 15, 15,  5};


 for ( int i=0; i<202; i++) {
   ixSectorsEE[i] += 1;
   iySectorsEE[i] += 1;
//   std::cout << i << " " << ixSectorsEE[i] << " " << iySectorsEE[i] << std::endl;
 }

 TLine l;
 l.SetLineWidth(1);
 for ( int i=0; i<201; i=i+1) {
   if ( (ixSectorsEE[i]!=1 || iySectorsEE[i]!=1) && 
        (ixSectorsEE[i+1]!=1 || iySectorsEE[i+1]!=1) ) {
     l.DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                ixSectorsEE[i+1], iySectorsEE[i+1]);
   }
 }


}
void EcalDisplaysByEvent::drawHistos ( ) [private]

Definition at line 949 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().

void EcalDisplaysByEvent::drawTimingErrors ( TProfile2D *  profile) [private]

Definition at line 1051 of file EcalDisplaysByEvent.cc.

References i, j, and cuy::tex.

Referenced by drawCanvas().

                                                              {
   int nxb = profile->GetNbinsX();
   int nyb = profile->GetNbinsY();
   char tempErr[200];
   for(int i=0;i!=nxb;++i) {
      for(int j=0;j!=nyb;++j) {
         int xb = i+1;
         int yb = j+1;
//   std::cout << "xb: " << xb << "\tyb: " << yb << std::endl;
         double xcorr = profile->GetBinCenter(xb);
         double ycorr = profile->GetBinCenter(yb);
         sprintf(tempErr,"%0.2f",profile->GetBinError(xb,yb));
         int nBin = profile->GetBin(xb,yb,0);
         int nBinEntries = (int) profile->GetBinEntries(nBin);
         if(nBinEntries != 0) {
            TLatex* tex = new TLatex(xcorr,ycorr,tempErr);
            tex->SetTextAlign(23);
            tex->SetTextSize(42);
            tex->SetTextSize(0.025);
            tex->SetLineWidth(2);
            tex->Draw();
            delete tex;
         }
         sprintf(tempErr,"%i",nBinEntries);
         if(nBinEntries!=0) {
            TLatex* tex = new TLatex(xcorr,ycorr,tempErr);
            tex->SetTextAlign(21);
            tex->SetTextFont(42);
            tex->SetTextSize(0.025);
            tex->SetLineWidth(2);
            tex->Draw();
            delete tex;
         }
      }
   }
}
void EcalDisplaysByEvent::endJob ( void  ) [private, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 597 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_.

{
  //All-event canvases
  drawCanvas(timingCanvasAll_,timingEEMAll_,timingEBAll_,timingEEPAll_);
  drawCanvas(timingMapCanvasAll_,timingMapEEMAll_,timingMapEBAll_,timingMapEEPAll_);
  drawCanvas(energyCanvasAll_,energyEEMAll_,energyEBAll_,energyEEPAll_);
  drawCanvas(energyMapCanvasAll_,energyMapEEMAll_,energyMapEBAll_,energyMapEEPAll_);
  drawCanvas(energyMapCoarseCanvasAll_,energyMapEEMcoarseAll_,energyMapEBcoarseAll_,energyMapEEPcoarseAll_);
  drawCanvas(recHitOccupancyCanvasAll_,recHitOccupancyEEMAll_,recHitOccupancyEBAll_,recHitOccupancyEEPAll_);
  drawCanvas(recHitOccupancyCoarseCanvasAll_,recHitOccupancyEEMcoarseAll_,recHitOccupancyEBcoarseAll_,recHitOccupancyEEPcoarseAll_);
  drawCanvas(digiOccupancyCanvasAll_,digiOccupancyEEMAll_,digiOccupancyEBAll_,digiOccupancyEEPAll_);
  drawCanvas(digiOccupancyCoarseCanvasAll_,digiOccupancyEEMcoarseAll_,digiOccupancyEBcoarseAll_,digiOccupancyEEPcoarseAll_);

  if(runNum_ != -1) {
    canvasNames_->Fill();
    histoCanvasNames_->Fill();
  }

  string frequencies = "";
  for(std::map<std::string,int>::const_iterator itr = seedFrequencyMap_.begin();
      itr != seedFrequencyMap_.end(); ++itr)
  {
    if(itr->second > 1)
    {
      frequencies+=itr->first;
      frequencies+=" Frequency: ";
      frequencies+=intToString(itr->second);
      frequencies+="\n";
    }
  }
  LogWarning("EcalDisplaysByEvent") << "Found seeds with frequency > 1: " << "\n\n" << frequencies;
  
  std::string channels;
  for(std::vector<int>::const_iterator itr = maskedChannels_.begin();
      itr != maskedChannels_.end(); ++itr)
  {
    channels+=intToString(*itr);
    channels+=",";
  }
  
  std::string feds;
  for(std::vector<int>::const_iterator itr = maskedFEDs_.begin();
      itr != maskedFEDs_.end(); ++itr)
  {
    feds+=intToString(*itr);
    feds+=",";
  }

  LogWarning("EcalDisplaysByEvent") << "Masked channels are: " << channels;
  LogWarning("EcalDisplaysByEvent") << "Masked FEDs are: " << feds << " and that is all!";
}
std::string EcalDisplaysByEvent::floatToString ( float  num) [private]

Definition at line 657 of file EcalDisplaysByEvent.cc.

Referenced by selectDigi().

{
    using namespace std;
    ostringstream myStream;
    myStream << num << flush;
    return(myStream.str()); //returns the string form of the stringstream object
}
int EcalDisplaysByEvent::getEEIndex ( EcalElectronicsId  elecId) [private]

Definition at line 389 of file EcalDisplaysByEvent.cc.

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

Referenced by selectDigi(), and selectHits().

{
  int FEDid = 600+elecId.dccId();
  return 10000*FEDid+100*elecId.towerId()+5*(elecId.stripId()-1)+elecId.xtalId();
}
TCanvas * EcalDisplaysByEvent::init2DEcalCanvas ( std::string  canvasName) [private]

Definition at line 944 of file EcalDisplaysByEvent.cc.

References svgfig::canvas().

Referenced by initAllEventHistos(), and initEvtByEvtHists().

                                                                    {
    TCanvas* canvas = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(),300,60,500,200);
    return canvas;
}
TH2F * EcalDisplaysByEvent::init2DEcalHist ( std::string  histTypeName,
int  subDet 
) [private]

Definition at line 899 of file EcalDisplaysByEvent.cc.

References EB_COARSE, EB_FINE, EEM_COARSE, EEM_FINE, EEP_COARSE, estimatePileup::hist, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

                                                                            {
   TH2F* hist;
   bool isBarrel = (subDet == EB_FINE || subDet == EB_COARSE) ? true : false;
   bool isCoarse = (subDet == EB_COARSE || subDet == EEM_COARSE || subDet == EEP_COARSE) ? true : false; 
   bool isEEM = (subDet == EEM_FINE || subDet == EEM_COARSE) ? true : false;
   std::string histName = histTypeName;
   std::string histTitle = histTypeName;
   if(isBarrel) {
      histName = histName + "EB";
      histTitle = histTitle + " EB";
      if(isCoarse) {
         histName = histName + "Coarse";
         histTitle = histTitle + " Coarse;iphi;ieta";
         double ttEtaBins[36] = {-85, -80, -75, -70, -65, -60, -55, -50, -45, -40, 
            -35, -30, -25, -20, -15, -10, -5, 0, 1, 6, 11, 16, 
            21, 26, 31, 36, 41, 46, 51, 56, 61, 66, 71, 76, 81, 86 };
         hist = new TH2F(histName.c_str(),histTitle.c_str(),360/5,1,361.,35,ttEtaBins);
      }
      else {
         histTitle = histTitle + ";iphi;ieta";
         hist = new TH2F(histName.c_str(),histTitle.c_str(),360,1,361.,172,-86,86);
      }
   }
   else {
      if(isEEM) {
         histName = histName + "EEM";
         histTitle = histTitle + " EEM";
      }
      else {
         histName = histName + "EEP";
         histTitle = histTitle + " EEP";
      }
      if(isCoarse) {
         histName = histName + "Coarse";
         histTitle = histTitle + " Coarse;ix;iy";
         hist = new TH2F(histName.c_str(),histTitle.c_str(),20,1,101,20,1,101);
      }
      else {
         histTitle = histTitle + ";ix;iy";
         hist = new TH2F(histName.c_str(),histTitle.c_str(),100,1,101,100,1,101);
      }
   }
   return hist;
}
TH3F * EcalDisplaysByEvent::init3DEcalHist ( std::string  histTypeName,
int  dubDet 
) [private]

Definition at line 832 of file EcalDisplaysByEvent.cc.

References EB_COARSE, EB_FINE, EEM_COARSE, EEM_FINE, EEP_COARSE, estimatePileup::hist, i, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

                                                                            {
   TH3F* hist;
   bool isBarrel = (subDet == EB_FINE || subDet == EB_COARSE) ? true : false;
   bool isCoarse = (subDet == EB_COARSE || subDet == EEM_COARSE || subDet == EEP_COARSE) ? true : false; 
   bool isEEM = (subDet == EEM_FINE || subDet == EEM_COARSE) ? true : false;
   std::string histName = histTypeName;
   std::string histTitle = histTypeName;
   double ttEtaBins[36] = {-85, -80, -75, -70, -65, -60, -55, -50, -45, -40, -35, -30, -25, -20, -15, -10, -5, 0, 1, 6, 11, 16, 21, 26, 31, 36, 41, 46, 51, 56, 61, 66, 71, 76, 81, 86 };
   double modEtaBins[10]={-85, -65, -45, -25, 0, 1, 26, 46, 66, 86};
   double ttPhiBins[73];
   double modPhiBins[19];
   double timingBins[79];
   for (int i = 0; i < 79; ++i)
   {
      timingBins[i]= 6 - 7. + double(i) * 14. / 78.;
      if (i<73)  
      {       
         ttPhiBins[i]=1+5*i;
         if ( i < 19) 
         {       
            modPhiBins[i]=1+20*i;
         }       
      }       

   }

   if(isBarrel) {
      histName = histName + "EB";
      histTitle = histTitle + " EB";
      if(isCoarse) {
         histName = histName + "Coarse";
         histTitle = histTitle + " by Module Nominal value = 6;iphi;ieta ";
         hist = new TH3F(histName.c_str(),histTitle.c_str(),18,modPhiBins,9,modEtaBins,78,timingBins);
      }
      else {
         histTitle = histTitle + " by TT Nominal value = 6;iphi;ieta";
         hist = new TH3F(histName.c_str(),histTitle.c_str(),360/5,ttPhiBins,35,ttEtaBins,78,timingBins);
      }
   }
   else {
      double ttXBins[21];
      double ttYBins[21];
      for(int i=0;i!=21;++i) {
         ttXBins[i] = 1 + 5*i;
         ttYBins[i] = 1 + 5*i;
      }
      if(isEEM) {
         histName = histName + "EEM";
         histTitle = histTitle + " EEM";
      }
      else {
         histName = histName + "EEP";
         histTitle = histTitle + " EEP";
      }
      if(isCoarse) {
         histName = histName + "Coarse";
         histTitle = histTitle + " by Module Nominal value = 6;ix;iy";
         hist = new TH3F(histName.c_str(),histTitle.c_str(),20,ttXBins,20,ttYBins,78,timingBins);
      }
      else {
         histTitle = histTitle + " by TT Nominal value = 6;ix;iy";
         hist = new TH3F(histName.c_str(),histTitle.c_str(),20,ttXBins,20,ttYBins,78,timingBins);
      }
   }
   return hist;
}
void EcalDisplaysByEvent::initAllEventHistos ( ) [private]

Definition at line 779 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().

{
  string canvasTitle = "Timing_AllEvents";
  timingEBAll_ = new TH1F("timeForAllFedsEBAll","timeForAllFeds;Relative Time (1 clock = 25ns)",78,-7,7);
  timingEEMAll_ = new TH1F("timeForAllFedsEEMAll","timeForAllFeds_EEM;Relative Time (1 clock = 25ns)",78,-7,7);
  timingEEPAll_ = new TH1F("timeForAllFedsEEPAll","timeForAllFeds_EEP;Relative Time (1 clock = 25ns)",78,-7,7);
  timingCanvasAll_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(),300,60,500,200);
  timingMapEBAll_ = init3DEcalHist("TimingMapA", EB_FINE);
  timingMapEEMAll_ = init3DEcalHist("TimingMapA", EEM_FINE);
  timingMapEEPAll_ = init3DEcalHist("TimingMapA", EEP_FINE);
  timingMapCanvasAll_ = init2DEcalCanvas("TimingMap_AllEvents");
  timingMapEBCoarseAll_ = init3DEcalHist("TimingMapA", EB_COARSE);
  timingMapEEMCoarseAll_ = init3DEcalHist("TimingMapA", EEM_COARSE);
  timingMapEEPCoarseAll_ = init3DEcalHist("TimingMapA", EEP_COARSE);
  //timingMapCoarseCanvasAll_ = init2DEcalCanvas("TimingMapCoarse_AllEvents"); 
  energyEBAll_ = new TH1F("energyEBAllEvents","Energy for EB Feds (GeV)",200,histRangeMin_,histRangeMax_);
  energyEEMAll_ = new TH1F("energyEEMAllEvents","Energy for EEM Feds (GeV)",200,histRangeMin_,10.0);
  energyEEPAll_ = new TH1F("energyEEPAllEvents","Energy for EEP Feds (GeV)",200,histRangeMin_,10.0);
  canvasTitle = "Energy_AllEvents";
  energyCanvasAll_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(),300,60,500,200);

  // Energy map hists
  energyMapEBAll_            = init2DEcalHist("EnergyMapA",EB_FINE);
  energyMapEBcoarseAll_      = init2DEcalHist("EnergyMapA",EB_COARSE);
  energyMapEEMcoarseAll_           = init2DEcalHist("EnergyMapA",EEM_COARSE);
  energyMapEEMAll_                 = init2DEcalHist("EnergyMapA",EEM_FINE);
  energyMapEEPcoarseAll_           = init2DEcalHist("EnergyMapA",EEP_COARSE);
  energyMapEEPAll_                 = init2DEcalHist("EnergyMapA",EEP_FINE);
  energyMapCanvasAll_ = init2DEcalCanvas("EnergyMap_AllEvents");
  energyMapCoarseCanvasAll_ = init2DEcalCanvas("EnergyMapCoarse_AllEvents");
  // RecHit Occupancy
  recHitOccupancyEBAll_ = init2DEcalHist("RecHitOccupancyA",EB_FINE);
  recHitOccupancyEBcoarseAll_ = init2DEcalHist("RecHitOccupancyA",EB_COARSE);
  recHitOccupancyEEMcoarseAll_ = init2DEcalHist("RecHitOccupancyA",EEM_COARSE);
  recHitOccupancyEEMAll_ = init2DEcalHist("RecHitOccupancyA",EEM_FINE);
  recHitOccupancyEEPcoarseAll_ = init2DEcalHist("RecHitOccupancyA",EEP_COARSE);
  recHitOccupancyEEPAll_ = init2DEcalHist("RecHitOccupancyA",EEP_FINE);
  recHitOccupancyCanvasAll_ = init2DEcalCanvas("RecHitOccupancy_AllEvents");
  recHitOccupancyCoarseCanvasAll_ =init2DEcalCanvas("RecHitOccupancyCoarse_AllEvents");

  //DigiOccupancy
  digiOccupancyEBAll_ = init2DEcalHist("DigiOccupancyA",EB_FINE);
  digiOccupancyEBcoarseAll_ = init2DEcalHist("DigiOccupancyA", EB_COARSE);
  digiOccupancyEEMcoarseAll_ = init2DEcalHist("DigiOccupancyA",EEM_COARSE);
  digiOccupancyEEMAll_ = init2DEcalHist("DigiOccupancyA",EEM_FINE);
  digiOccupancyEEPcoarseAll_ = init2DEcalHist("DigiOccupancyA",EEP_COARSE);
  digiOccupancyEEPAll_ = init2DEcalHist("DigiOccupancyA",EEP_FINE);
  digiOccupancyCanvasAll_ = init2DEcalCanvas("DigiOccupancy_AllEvents");
  digiOccupancyCoarseCanvasAll_ = init2DEcalCanvas("DigiOccupancyCoarse_AllEvents");

}
void EcalDisplaysByEvent::initEvtByEvtHists ( int  naiveEvtNum_,
int  ievt 
) [private]

Definition at line 678 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().

{
  string lastPart = intToString(naiveEvtNum_)+"_LV1a"+intToString(ievt);
  if(makeTimingHistos_)
  {
    string canvasTitle = "Timing_Event"+lastPart;
    timingEB_ = new TH1F("timeForAllFedsEB","timeForAllFeds;Relative Time (1 clock = 25ns)",78,-7,7);
    timingEEM_ = new TH1F("timeForAllFedsEEM","timeForAllFeds_EEM;Relative Time (1 clock = 25ns)",78,-7,7);
    timingEEP_ = new TH1F("timeForAllFedsEEP","timeForAllFeds_EEP;Relative Time (1 clock = 25ns)",78,-7,7);
    timingCanvas_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(),300,60,500,200);
    timingMapEB_ = init3DEcalHist("TimingMap", EB_FINE);
    timingMapEEM_ = init3DEcalHist("TimingMap", EEM_FINE);
    timingMapEEP_ = init3DEcalHist("TimingMap", EEP_FINE);
    timingMapCanvas_ = init2DEcalCanvas("TimingMap_Event"+lastPart);
    //timingMapEBCoarse_ = init3DEcalHist("TimingMap", EB_COARSE);
    timingMapEEMCoarse_ = init3DEcalHist("TimingMap", EEM_COARSE);
    timingMapEEPCoarse_ = init3DEcalHist("TimingMap", EEP_COARSE);
    //timingMapCoarseCanvas_ = init2DEcalCanvas("TimingMapCoarse_Event"+lastPart);  
  }
  if(makeEnergyHistos_)
  {
    energyEB_ = new TH1F("energyEB","Energy for EB Feds (GeV)",200,histRangeMin_,histRangeMax_);
    energyEEM_ = new TH1F("energyEEM","Energy for EEM Feds (GeV)",200,histRangeMin_,10.0);
    energyEEP_ = new TH1F("energyEEP","Energy for EEP Feds (GeV)",200,histRangeMin_,10.0);
    string canvasTitle = "Energy_Event"+lastPart;
    energyCanvas_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(),300,60,500,200);

    // Energy map hists
    energyMapEB_            = init2DEcalHist("EnergyMap",EB_FINE);
    energyMapEBcoarse_      = init2DEcalHist("EnergyMap",EB_COARSE);
    energyMapEEMcoarse_           = init2DEcalHist("EnergyMap",EEM_COARSE);
    energyMapEEM_                 = init2DEcalHist("EnergyMap",EEM_FINE);
    energyMapEEPcoarse_           = init2DEcalHist("EnergyMap",EEP_COARSE);
    energyMapEEP_                 = init2DEcalHist("EnergyMap",EEP_FINE);
    energyMapCanvas_ = init2DEcalCanvas("EnergyMap_Event"+lastPart);
    energyMapCoarseCanvas_ = init2DEcalCanvas("EnergyMapCoarse_Event"+lastPart);
  }
  if(makeOccupancyHistos_) 
  {
     // RecHit Occupancy
    recHitOccupancyEB_ = init2DEcalHist("RecHitOccupancy",EB_FINE);
    recHitOccupancyEBcoarse_ = init2DEcalHist("RecHitOccupancy",EB_COARSE);
    recHitOccupancyEEMcoarse_ = init2DEcalHist("RecHitOccupancy",EEM_COARSE);
    recHitOccupancyEEM_ = init2DEcalHist("RecHitOccupancy",EEM_FINE);
    recHitOccupancyEEPcoarse_ = init2DEcalHist("RecHitOccupancy",EEP_COARSE);
    recHitOccupancyEEP_ = init2DEcalHist("RecHitOccupancy",EEP_FINE);
    recHitOccupancyCanvas_ = init2DEcalCanvas("RecHitOccupancy_Event"+lastPart);
    recHitOccupancyCoarseCanvas_ =init2DEcalCanvas("RecHitOccupancyCoarse_Event"+lastPart);

    //DigiOccupancy
    digiOccupancyEB_ = init2DEcalHist("DigiOccupancy",EB_FINE);
    digiOccupancyEBcoarse_ = init2DEcalHist("DigiOccupancy", EB_COARSE);
    digiOccupancyEEMcoarse_ = init2DEcalHist("DigiOccupancy",EEM_COARSE);
    digiOccupancyEEM_ = init2DEcalHist("DigiOccupancy",EEM_FINE);
    digiOccupancyEEPcoarse_ = init2DEcalHist("DigiOccupancy",EEP_COARSE);
    digiOccupancyEEP_ = init2DEcalHist("DigiOccupancy",EEP_FINE);
    digiOccupancyCanvas_ = init2DEcalCanvas("DigiOccupancy_Event"+lastPart);
    digiOccupancyCoarseCanvas_ = init2DEcalCanvas("DigiOccupancyCoarse_Event"+lastPart);
  }
}
void EcalDisplaysByEvent::initHists ( int  FED) [private]

Definition at line 666 of file EcalDisplaysByEvent.cc.

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

Referenced by makeHistos().

{
  using namespace std;
  
  string title1 = "Jitter for ";
  title1.append(fedMap_->getSliceFromFed(FED));
  string name1 = "JitterFED";
  name1.append(intToString(FED));
  TH1F* timingHist = fileService->make<TH1F>(name1.c_str(),title1.c_str(),150,-7,7);
  FEDsAndTimingHists_[FED] = timingHist;
}
std::string EcalDisplaysByEvent::intToString ( int  num) [private]

Definition at line 649 of file EcalDisplaysByEvent.cc.

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

{
    using namespace std;
    ostringstream myStream;
    myStream << num << flush;
    return(myStream.str()); //returns the string form of the stringstream object
}
void EcalDisplaysByEvent::makeHistos ( edm::Handle< EEDigiCollection eeDigis) [private]

Definition at line 411 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().

                                                                          {
   const EEDigiCollection* eeDigis = eeDigiHandle.product();
   for(EEDigiCollection::const_iterator digiItr = eeDigis->begin(); digiItr != eeDigis->end(); ++digiItr) {
      DetId det = digiItr->id();
      EcalElectronicsId elecId = ecalElectronicsMap_->getElectronicsId(det);
      size_t FEDid = 600+elecId.dccId();
      bool isEEM = false;
      if(FEDid < 610)
        isEEM = true;
      EEDetId digiId = digiItr->id();
      int ieta = digiId.iy();
      int iphi = digiId.ix();
      if(isEEM)
      {
         digiOccupancyEEMAll_->Fill(iphi,ieta);
         digiOccupancyEEMcoarseAll_->Fill(iphi,ieta);
         if(makeOccupancyHistos_)
         {
           digiOccupancyEEMcoarse_->Fill(iphi,ieta);
           digiOccupancyEEM_->Fill(iphi,ieta);
         }
      }
      else
      {
         digiOccupancyEEPAll_->Fill(iphi,ieta);
         digiOccupancyEEPcoarseAll_->Fill(iphi,ieta);
         if(makeOccupancyHistos_)
         {
           digiOccupancyEEP_->Fill(iphi,ieta);
           digiOccupancyEEPcoarse_->Fill(iphi,ieta);
         }
      }  
   }
}
void EcalDisplaysByEvent::makeHistos ( edm::Handle< EcalRecHitCollection hits) [private]

Definition at line 446 of file EcalDisplaysByEvent.cc.

References allFedsTimingHist_, EcalElectronicsId::dccId(), ecalElectronicsMap_, CaloRecHit::energy(), relval_parameters_module::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(), makeEnergyHistos_, makeOccupancyHistos_, makeTimingHistos_, minTimingAmp_, minTimingEnergyEB_, minTimingEnergyEE_, recHitOccupancyEB_, recHitOccupancyEBAll_, recHitOccupancyEBcoarse_, recHitOccupancyEBcoarseAll_, recHitOccupancyEEM_, recHitOccupancyEEMAll_, recHitOccupancyEEMcoarse_, recHitOccupancyEEMcoarseAll_, recHitOccupancyEEP_, recHitOccupancyEEPAll_, recHitOccupancyEEPcoarse_, recHitOccupancyEEPcoarseAll_, cond::rpcobgas::time, CaloRecHit::time(), timingEB_, timingEBAll_, timingEEM_, timingEEMAll_, timingEEP_, timingEEPAll_, timingMapEB_, timingMapEBAll_, timingMapEBCoarseAll_, timingMapEEM_, timingMapEEMAll_, timingMapEEMCoarseAll_, timingMapEEP_, timingMapEEPAll_, and timingMapEEPCoarseAll_.

{
  for (EcalRecHitCollection::const_iterator hitItr = hits->begin(); hitItr != hits->end(); ++hitItr)
  {
    EcalRecHit hit = (*hitItr);
    DetId det = hit.id();
    EcalElectronicsId elecId = ecalElectronicsMap_->getElectronicsId(det);
    int FEDid = 600+elecId.dccId();
    bool isBarrel = true;
    bool isEEM = false;
    if(FEDid < 610 || FEDid > 645)
    {
      isBarrel = false;
      if(FEDid < 610)
        isEEM = true;
    }
    int iphi = isBarrel ? ((EBDetId)det).iphi() : ((EEDetId)det).ix();
    int ieta = isBarrel ? ((EBDetId)det).ieta() : ((EEDetId)det).iy();
    float energy = hit.energy();
    float time = hit.time();
    
    // Fill energy histos
    if(makeEnergyHistos_)
    {
      if(isBarrel)
      {
        energyEB_->Fill(energy);
        energyMapEB_->Fill(iphi,ieta,energy);
        energyMapEBcoarse_->Fill(iphi,ieta,energy);
      }
      else if(isEEM)
      {
        energyEEM_->Fill(energy);
        energyMapEEM_->Fill(iphi,ieta,energy);
        energyMapEEMcoarse_->Fill(iphi,ieta,energy);
      }
      else
      {
        energyEEP_->Fill(energy);
        energyMapEEP_->Fill(iphi,ieta,energy);
        energyMapEEPcoarse_->Fill(iphi,ieta,energy);
      }
    }
    // Fill occupancy histos
    if(makeOccupancyHistos_)
    {
      if(isBarrel)
      {
        recHitOccupancyEB_->Fill(iphi,ieta);
        recHitOccupancyEBcoarse_->Fill(iphi,ieta);
      }
      else if(isEEM)
      {
         recHitOccupancyEEM_->Fill(iphi,ieta);
         recHitOccupancyEEMcoarse_->Fill(iphi,ieta);
      }
      else
      {
         recHitOccupancyEEP_->Fill(iphi,ieta);
         recHitOccupancyEEPcoarse_->Fill(iphi,ieta);
      }
    }

    // Fill timing histos
    if(makeTimingHistos_)
    {
      if(isBarrel) {
        timingEB_->Fill(time);
        if(energy > minTimingEnergyEB_) {
           timingMapEB_->Fill(iphi,ieta,time);
           //timingMapEBCoarse_->Fill(iphi,ieta,time);
        }
      }
      else if(isEEM) {
         timingEEM_->Fill(time);
         if(energy > minTimingEnergyEE_)
         {
            timingMapEEM_->Fill(iphi,ieta,time);
            //timingMapEEMCoarse_->Fill(iphi,ieta,time);
         }
      }
      else {
         timingEEP_->Fill(time);
         if(energy > minTimingEnergyEE_)
         {
            timingMapEEP_->Fill(iphi,ieta,time);
            //timingMapEEPCoarse_->Fill(iphi,ieta,time);
         }
      }
    }

    //All events
    if(isBarrel)
    {
      energyEBAll_->Fill(energy);
      energyMapEBAll_->Fill(iphi,ieta,energy);
      energyMapEBcoarseAll_->Fill(iphi,ieta,energy);
      recHitOccupancyEBAll_->Fill(iphi,ieta);
      recHitOccupancyEBcoarseAll_->Fill(iphi,ieta);
      timingEBAll_->Fill(time);
      if(energy > minTimingEnergyEB_)
      {
        timingMapEBAll_->Fill(iphi,ieta,time);
        timingMapEBCoarseAll_->Fill(iphi,ieta,time);
      }
    }
    else if(isEEM)
    {
      energyEEMAll_->Fill(energy);
      energyMapEEMAll_->Fill(iphi,ieta,energy);
      energyMapEEMcoarseAll_->Fill(iphi,ieta,energy);
      recHitOccupancyEEMAll_->Fill(iphi,ieta);
      recHitOccupancyEEMcoarseAll_->Fill(iphi,ieta);
      timingEEMAll_->Fill(time);
      if(energy > minTimingEnergyEE_)
      {
        timingMapEEMAll_->Fill(iphi,ieta,time);
        timingMapEEMCoarseAll_->Fill(iphi,ieta,time);
      }
    }
    else
    {
      energyEEPAll_->Fill(energy);
      energyMapEEPAll_->Fill(iphi,ieta,energy);
      energyMapEEPcoarseAll_->Fill(iphi,ieta,energy);
      recHitOccupancyEEPAll_->Fill(iphi,ieta);
      recHitOccupancyEEPcoarseAll_->Fill(iphi,ieta);
      timingEEPAll_->Fill(time);
      if(energy > minTimingEnergyEE_)
      {
        timingMapEEPAll_->Fill(iphi,ieta,time);
        timingMapEEPCoarseAll_->Fill(iphi,ieta,time);
      }
    }
    // Fill FED-by-FED timing histos (all events)
    TH1F* timingHist = FEDsAndTimingHists_[FEDid];
    if(timingHist==0)
    {
      initHists(FEDid);
      timingHist = FEDsAndTimingHists_[FEDid];
    }
    if(energy > minTimingAmp_)
    {
      timingHist->Fill(hit.time());
      allFedsTimingHist_->Fill(hit.time());
    }
  }
}
void EcalDisplaysByEvent::makeHistos ( edm::Handle< EBDigiCollection ebDigis) [private]

Definition at line 395 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().

                                                                          {
   const EBDigiCollection* ebDigis = ebDigiHandle.product();
   for(EBDigiCollection::const_iterator digiItr = ebDigis->begin(); digiItr != ebDigis->end(); ++digiItr) {
      EBDetId digiId = digiItr->id();
      int ieta = digiId.ieta();
      int iphi = digiId.iphi();
      digiOccupancyEBAll_->Fill(iphi,ieta);
      digiOccupancyEBcoarseAll_->Fill(iphi,ieta);
      if(makeOccupancyHistos_)
      {
        digiOccupancyEB_->Fill(iphi,ieta);
        digiOccupancyEBcoarse_->Fill(iphi,ieta);
      }
   }
}
TGraph * EcalDisplaysByEvent::selectDigi ( DetId  det,
int  ievt 
) [private]

Definition at line 281 of file EcalDisplaysByEvent.cc.

References abscissa, EcalMGPASample::adc(), crysAndAmplitudesMap_, EcalElectronicsId::dccId(), DetId::det(), EBdigisHandle, DetId::Ecal, ecalElectronicsMap_, EEdigisHandle, relval_parameters_module::energy, fedMap_, FEDsAndDCCHeaders_, fileService, floatToString(), EcalMGPASample::gainId(), ecalMGPA::gainId(), gainRatio, getEEIndex(), EcalElectronicsMapping::getElectronicsId(), EcalFedMap::getSliceFromFed(), i, intToString(), naiveEvtNum_, mergeVDriftHistosByStation::name, ordinate, EcalDataFrame::sample(), EcalDataFrame::size(), and indexGen::title.

Referenced by selectHits().

{
  int emptyY[10];
  for (int i=0; i<10; i++)
    emptyY[i] = 0;
  TGraph* emptyGraph = fileService->make<TGraph>(10, abscissa, emptyY);
  emptyGraph->SetTitle("NOT ECAL");
  
  //If the DetId is not from Ecal, return
  if(thisDet.det() != DetId::Ecal)
    return emptyGraph;
  
  emptyGraph->SetTitle("NO DIGIS");
  //find digi we need  -- can't get find() to work; need DataFrame(DetId det) to work? 
  EcalElectronicsId elecId = ecalElectronicsMap_->getElectronicsId(thisDet);
  int FEDid = 600+elecId.dccId();
  bool isBarrel = true;
  if(FEDid < 610 || FEDid > 645)
    isBarrel = false;
  int cryIndex = isBarrel ? ((EBDetId)thisDet).hashedIndex() : getEEIndex(elecId);
  int ic = isBarrel ? ((EBDetId)thisDet).ic() : cryIndex;

  string sliceName = fedMap_->getSliceFromFed(FEDid);
  EcalDataFrame df;
  if(isBarrel)
  {
    EBDigiCollection::const_iterator digiItr = EBdigisHandle->begin();
    while(digiItr != EBdigisHandle->end() && ((*digiItr).id() != (EBDetId)thisDet))
    {
      ++digiItr;
    }
    if(digiItr==EBdigisHandle->end())
    {
      //LogWarning("EcalDisplaysByEvent") << "Cannot find digi for ic:" << ic
      //  << " FED:" << FEDid << " evt:" << naiveEvtNum_;
      return emptyGraph;
    }
    else
      df = *digiItr;
  }
  else
  {
    EEDigiCollection::const_iterator digiItr = EEdigisHandle->begin();
    while(digiItr != EEdigisHandle->end() && ((*digiItr).id() != (EEDetId)thisDet))
    {
      ++digiItr;
    }
    if(digiItr==EEdigisHandle->end())
    {
      //LogWarning("EcalDisplaysByEvent") << "Cannot find digi for ic:" << ic
      //  << " FED:" << FEDid << " evt:" << naiveEvtNum_;
      return emptyGraph;
    }
    else df = *digiItr;
  }

  int gainId = FEDsAndDCCHeaders_[FEDid].getMgpaGain();
  int gainHuman;
  if      (gainId ==1) gainHuman =12;
  else if (gainId ==2) gainHuman =6;
  else if (gainId ==3) gainHuman =1;
  else                 gainHuman =-1; 

  double pedestal = 200;

  emptyGraph->SetTitle("FIRST TWO SAMPLES NOT GAIN12");
  if(df.sample(0).gainId()!=1 || df.sample(1).gainId()!=1) return emptyGraph; //goes to the next digi
  else {
    ordinate[0] = df.sample(0).adc();
    ordinate[1] = df.sample(1).adc();
    pedestal = (double)(ordinate[0]+ordinate[1])/(double)2;
  } 


  for (int i=0; i < df.size(); ++i ) {
    if (df.sample(i).gainId() != 0)
      ordinate[i] = (int)(pedestal+(df.sample(i).adc()-pedestal)*gainRatio[df.sample(i).gainId()-1]);
    else
      ordinate[i] = 49152; //Saturation of gain1 
  }

  TGraph* oneGraph = fileService->make<TGraph>(10, abscissa, ordinate);
  string name = "Graph_ev" + intToString(naiveEvtNum_) + "_ic" + intToString(ic)
    + "_FED" + intToString(FEDid);
  string gainString = (gainId==1) ? "Free" : intToString(gainHuman);
  string title = "Event" + intToString(naiveEvtNum_) + "_lv1a" + intToString(ievt) +
    "_ic" + intToString(ic) + "_" + sliceName + "_gain" + gainString;
    
  float energy = 0;
  map<int,float>::const_iterator itr;
  itr = crysAndAmplitudesMap_.find(cryIndex);
  if(itr!=crysAndAmplitudesMap_.end())
  {
    //edm::LogWarning("EcalDisplaysByEvent")<< "itr->second(ampli)="<< itr->second;
    energy = (float) itr->second;
  }
  //else
  //edm::LogWarning("EcalDisplaysByEvent") << "cry " << ic << "not found in ampMap";

  title+="_Energy"+floatToString(round(energy*1000));

  oneGraph->SetTitle(title.c_str());
  oneGraph->SetName(name.c_str());
  oneGraph->GetXaxis()->SetTitle("sample");
  oneGraph->GetYaxis()->SetTitle("ADC");
  return oneGraph;
}
void EcalDisplaysByEvent::selectHits ( edm::Handle< EcalRecHitCollection hits,
int  ievt,
edm::ESHandle< CaloTopology caloTopo 
) [private]

Definition at line 205 of file EcalDisplaysByEvent.cc.

References timingPdfMaker::can, crysAndAmplitudesMap_, EcalElectronicsId::dccId(), ecalElectronicsMap_, CaloRecHit::energy(), spr::find(), getEEIndex(), EcalElectronicsMapping::getElectronicsId(), i, EcalRecHit::id(), intToString(), j, maskedChannels_, maskedFEDs_, naiveEvtNum_, mergeVDriftHistosByStation::name, names, query::result, seedCrys_, seedFrequencyMap_, selectDigi(), side_, threshold_, and indexGen::title.

Referenced by analyze().

{
  for (EcalRecHitCollection::const_iterator hitItr = hits->begin(); hitItr != hits->end(); ++hitItr)
  {
    EcalRecHit hit = (*hitItr);
    DetId det = hit.id();
    EcalElectronicsId elecId = ecalElectronicsMap_->getElectronicsId(det);
    int FEDid = 600+elecId.dccId();
    bool isBarrel = true;
    if(FEDid < 610 || FEDid > 645)
      isBarrel = false;
    int cryIndex = isBarrel ? ((EBDetId)det).hashedIndex() : getEEIndex(elecId);
    int ic = isBarrel ? ((EBDetId)det).ic() : getEEIndex(elecId);
    
    float ampli = hit.energy();

    vector<int>::iterator result;
    result = find(maskedFEDs_.begin(), maskedFEDs_.end(), FEDid);
    if(result != maskedFEDs_.end())
    {
      //LogWarning("EcalDisplaysByEvent") << "skipping uncalRecHit for FED " << FEDid << " ; amplitude " << ampli;
      continue;
    }      
    result = find(maskedChannels_.begin(), maskedChannels_.end(), cryIndex);
    if  (result != maskedChannels_.end())
    {
      //LogWarning("EcalDisplaysByEvent") << "skipping uncalRecHit for channel: " << cryIndex << " in fed: " << FEDid << " with amplitude " << ampli ;
      continue;
    } 
    bool cryIsInList = false;
    result = find(seedCrys_.begin(), seedCrys_.end(), cryIndex);
    if  (result != seedCrys_.end())
      cryIsInList = true;

    // Either we must have a user-requested cry (in which case there is no amplitude selection)
    // Or we pick all crys that pass the amplitude cut (in which case there is no fixed crystal selection)
    if(cryIsInList || (seedCrys_.empty() && ampli > threshold_))
    {
      // We have a winner!
      crysAndAmplitudesMap_[cryIndex] = ampli;
      string name = "Digis_Event" + intToString(naiveEvtNum_) + "_ic" + intToString(ic)
        + "_FED" + intToString(FEDid);
      string title = "Digis";
      string seed = "ic" + intToString(ic) + "_FED" + intToString(FEDid);
      int freq=1;
      pair<map<string,int>::iterator,bool> pair = seedFrequencyMap_.insert(make_pair(seed,freq));
      if(!pair.second)
      {
        ++(pair.first->second);
      }
      
      //TODO: move this also to TFileService
      TCanvas can(name.c_str(),title.c_str(),200,50,900,900);
      can.Divide(side_,side_);
      TGraph* myGraph;

      CaloNavigator<DetId> cursor = CaloNavigator<DetId>(det,caloTopo->getSubdetectorTopology(det));
      //Now put each graph in one by one
      for(int j=side_/2; j>=-side_/2; --j)
      {
        for(int i=-side_/2; i<=side_/2; ++i)
        {
          cursor.home();
          cursor.offsetBy(i,j);
          can.cd(i+1+side_/2+side_*(1-j));
          myGraph = selectDigi(*cursor,ievt);
          myGraph->Draw("A*");
        }
      }
      can.Write();
      names->push_back(name);
    }
  }
}

Member Data Documentation

int EcalDisplaysByEvent::abscissa[10] [private]

Definition at line 133 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), and selectDigi().

Definition at line 150 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), and makeHistos().

Definition at line 235 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and endJob().

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

Definition at line 146 of file EcalDisplaysByEvent.h.

Referenced by selectDigi(), and selectHits().

Definition at line 188 of file EcalDisplaysByEvent.h.

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

Definition at line 230 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

Definition at line 189 of file EcalDisplaysByEvent.h.

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

Definition at line 231 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

Definition at line 212 of file EcalDisplaysByEvent.h.

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

Definition at line 213 of file EcalDisplaysByEvent.h.

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

Definition at line 214 of file EcalDisplaysByEvent.h.

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

Definition at line 215 of file EcalDisplaysByEvent.h.

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

Definition at line 216 of file EcalDisplaysByEvent.h.

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

Definition at line 217 of file EcalDisplaysByEvent.h.

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

Definition at line 110 of file EcalDisplaysByEvent.h.

Referenced by analyze().

Definition at line 114 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectDigi().

Definition at line 108 of file EcalDisplaysByEvent.h.

Referenced by analyze().

Definition at line 238 of file EcalDisplaysByEvent.h.

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

Definition at line 111 of file EcalDisplaysByEvent.h.

Referenced by analyze().

Definition at line 115 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectDigi().

Definition at line 109 of file EcalDisplaysByEvent.h.

Referenced by analyze().

Definition at line 183 of file EcalDisplaysByEvent.h.

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

Definition at line 225 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

Definition at line 197 of file EcalDisplaysByEvent.h.

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

Definition at line 198 of file EcalDisplaysByEvent.h.

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

Definition at line 199 of file EcalDisplaysByEvent.h.

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

Definition at line 184 of file EcalDisplaysByEvent.h.

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

Definition at line 226 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

Definition at line 185 of file EcalDisplaysByEvent.h.

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

Definition at line 227 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

Definition at line 200 of file EcalDisplaysByEvent.h.

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

Definition at line 201 of file EcalDisplaysByEvent.h.

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

Definition at line 202 of file EcalDisplaysByEvent.h.

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

Definition at line 203 of file EcalDisplaysByEvent.h.

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

Definition at line 204 of file EcalDisplaysByEvent.h.

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

Definition at line 205 of file EcalDisplaysByEvent.h.

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

Definition at line 237 of file EcalDisplaysByEvent.h.

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

Definition at line 147 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectDigi().

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

Definition at line 145 of file EcalDisplaysByEvent.h.

Referenced by initHists(), and makeHistos().

Definition at line 137 of file EcalDisplaysByEvent.h.

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

float EcalDisplaysByEvent::gainRatio = { 1., 2. , 12. } [static, private]

Definition at line 136 of file EcalDisplaysByEvent.h.

Referenced by selectDigi().

Definition at line 112 of file EcalDisplaysByEvent.h.

Referenced by analyze().

Definition at line 236 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and endJob().

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

Definition at line 140 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and drawCanvas().

Definition at line 126 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

Definition at line 125 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

Definition at line 130 of file EcalDisplaysByEvent.h.

Referenced by analyze().

Definition at line 131 of file EcalDisplaysByEvent.h.

Referenced by analyze().

Definition at line 121 of file EcalDisplaysByEvent.h.

Referenced by analyze().

Definition at line 123 of file EcalDisplaysByEvent.h.

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

Definition at line 124 of file EcalDisplaysByEvent.h.

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

Definition at line 122 of file EcalDisplaysByEvent.h.

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

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

Definition at line 141 of file EcalDisplaysByEvent.h.

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

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

Definition at line 144 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent().

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

Definition at line 142 of file EcalDisplaysByEvent.h.

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

Definition at line 120 of file EcalDisplaysByEvent.h.

Referenced by makeHistos().

Definition at line 127 of file EcalDisplaysByEvent.h.

Referenced by makeHistos().

Definition at line 128 of file EcalDisplaysByEvent.h.

Referenced by makeHistos().

Definition at line 240 of file EcalDisplaysByEvent.h.

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

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

Definition at line 139 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectHits().

int EcalDisplaysByEvent::ordinate[10] [private]

Definition at line 134 of file EcalDisplaysByEvent.h.

Referenced by selectDigi().

Definition at line 186 of file EcalDisplaysByEvent.h.

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

Definition at line 228 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

Definition at line 187 of file EcalDisplaysByEvent.h.

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

Definition at line 229 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

Definition at line 206 of file EcalDisplaysByEvent.h.

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

Definition at line 207 of file EcalDisplaysByEvent.h.

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

Definition at line 208 of file EcalDisplaysByEvent.h.

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

Definition at line 209 of file EcalDisplaysByEvent.h.

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

Definition at line 210 of file EcalDisplaysByEvent.h.

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

Definition at line 211 of file EcalDisplaysByEvent.h.

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

Definition at line 117 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and endJob().

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

Definition at line 143 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), and selectHits().

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

Definition at line 148 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and selectHits().

Definition at line 118 of file EcalDisplaysByEvent.h.

Referenced by selectHits().

Definition at line 119 of file EcalDisplaysByEvent.h.

Referenced by selectHits().

Definition at line 182 of file EcalDisplaysByEvent.h.

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

Definition at line 224 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

Definition at line 194 of file EcalDisplaysByEvent.h.

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

Definition at line 195 of file EcalDisplaysByEvent.h.

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

Definition at line 196 of file EcalDisplaysByEvent.h.

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

Definition at line 191 of file EcalDisplaysByEvent.h.

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

Definition at line 233 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

Definition at line 190 of file EcalDisplaysByEvent.h.

Referenced by drawCanvas().

Definition at line 232 of file EcalDisplaysByEvent.h.

Definition at line 221 of file EcalDisplaysByEvent.h.

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

Definition at line 176 of file EcalDisplaysByEvent.h.

Definition at line 218 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and makeHistos().

Definition at line 222 of file EcalDisplaysByEvent.h.

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

Definition at line 177 of file EcalDisplaysByEvent.h.

Referenced by initEvtByEvtHists().

Definition at line 219 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and makeHistos().

Definition at line 223 of file EcalDisplaysByEvent.h.

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

Definition at line 178 of file EcalDisplaysByEvent.h.

Referenced by initEvtByEvtHists().

Definition at line 220 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and makeHistos().