CMS 3D CMS Logo

EcalSimpleTBAnalyzer Class Reference

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

#include <RecoTBCalo/EcalSimpleTBAnalysis/interface/EcalSimpleTBAnalyzer.h>

Inheritance diagram for EcalSimpleTBAnalyzer:

edm::EDAnalyzer

List of all members.

Public Member Functions

virtual void analyze (const edm::Event &, const edm::EventSetup &)
virtual void beginJob (edm::EventSetup const &)
 EcalSimpleTBAnalyzer (const edm::ParameterSet &)
virtual void endJob ()
 ~EcalSimpleTBAnalyzer ()

Private Attributes

std::string digiCollection_
std::string digiProducer_
std::string eventHeaderCollection_
std::string eventHeaderProducer_
TH2F * h_ampltdc
TH1F * h_bprofx
TH1F * h_bprofy
TH1F * h_e1e25
TH2F * h_e1e25_mapx
TH2F * h_e1e25_mapy
TH1F * h_e1e9
TH2F * h_e1e9_mapx
TH2F * h_e1e9_mapy
TH1F * h_e1x1
TH1F * h_e1x1_center
TH1F * h_e3x3
TH1F * h_e3x3_center
TH1F * h_e5x5
TH1F * h_e5x5_center
TH1F * h_e9e25
TH2F * h_e9e25_mapx
TH2F * h_e9e25_mapy
TH2F * h_mapx [25]
TH2F * h_mapy [25]
TH1F * h_qualx
TH1F * h_qualy
TH2F * h_Shape_
TH1F * h_slopex
TH1F * h_slopey
TH1F * h_tableIsMoving
std::string hitCollection_
std::string hitProducer_
std::string hodoRecInfoCollection_
std::string hodoRecInfoProducer_
std::string rootfile_
std::string tdcRecInfoCollection_
std::string tdcRecInfoProducer_
EBDetId xtalInBeam_


Detailed Description

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

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

Definition at line 43 of file EcalSimpleTBAnalyzer.h.


Constructor & Destructor Documentation

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

Definition at line 46 of file EcalSimpleTBAnalyzer.cc.

References GenMuonPlsPt100GeV_cfg::cout, digiCollection_, digiProducer_, lat::endl(), eventHeaderCollection_, eventHeaderProducer_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), hitCollection_, hitProducer_, hodoRecInfoCollection_, hodoRecInfoProducer_, rootfile_, tdcRecInfoCollection_, and tdcRecInfoProducer_.

00046                                                                            : xtalInBeam_(0)
00047 //========================================================================
00048 {
00049    //now do what ever initialization is needed
00050    rootfile_          = iConfig.getUntrackedParameter<std::string>("rootfile","ecalSimpleTBanalysis.root");
00051    digiCollection_     = iConfig.getParameter<std::string>("digiCollection");
00052    digiProducer_       = iConfig.getParameter<std::string>("digiProducer");
00053    hitCollection_     = iConfig.getParameter<std::string>("hitCollection");
00054    hitProducer_       = iConfig.getParameter<std::string>("hitProducer");
00055    hodoRecInfoCollection_     = iConfig.getParameter<std::string>("hodoRecInfoCollection");
00056    hodoRecInfoProducer_       = iConfig.getParameter<std::string>("hodoRecInfoProducer");
00057    tdcRecInfoCollection_     = iConfig.getParameter<std::string>("tdcRecInfoCollection");
00058    tdcRecInfoProducer_       = iConfig.getParameter<std::string>("tdcRecInfoProducer");
00059    eventHeaderCollection_     = iConfig.getParameter<std::string>("eventHeaderCollection");
00060    eventHeaderProducer_       = iConfig.getParameter<std::string>("eventHeaderProducer");
00061 
00062 
00063    std::cout << "EcalSimpleTBAnalyzer: fetching hitCollection: " << hitCollection_.c_str()
00064         << " produced by " << hitProducer_.c_str() << std::endl;
00065 
00066 }

EcalSimpleTBAnalyzer::~EcalSimpleTBAnalyzer (  ) 

Definition at line 70 of file EcalSimpleTBAnalyzer.cc.

00072 {
00073   // do anything here that needs to be done at desctruction time
00074   // (e.g. close files, deallocate resources etc.)
00075   // Amplitude vs TDC offset
00076 //   if (h_ampltdc)
00077 //   delete h_ampltdc;
00078   
00079 //   // Reconstructed energies
00080 //   delete h_e1x1;
00081 //   delete h_e3x3; 
00082 //   delete h_e5x5; 
00083   
00084 //   delete h_bprofx; 
00085 //   delete h_bprofy; 
00086   
00087 //   delete h_qualx; 
00088 //   delete h_qualy; 
00089   
00090 //   delete h_slopex; 
00091 //   delete h_slopey; 
00092   
00093 //   delete h_mapx; 
00094 //   delete h_mapy; 
00095 
00096 }


Member Function Documentation

void EcalSimpleTBAnalyzer::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
) [virtual]

std::cout << "** Xtal in the matrix **** row " << row << ", column " << column << ", xtal " << Xtals5x5[icry].ic() << std::endl;

Implements edm::EDAnalyzer.

Definition at line 215 of file EcalSimpleTBAnalyzer.cc.

References EcalMGPASample::adc(), TestMuL1L2Filter_cff::cerr, GenMuonPlsPt100GeV_cfg::cout, EcalTBEventHeader::crystalInBeam(), digiCollection_, digiProducer_, e, edm::DataFrameContainer::end(), lat::endl(), EBDetId::ETAPHIMODE, eventHeaderProducer_, EcalTBEventHeader::eventNumber(), exception, edm::SortedCollection< T, SORT >::find(), edm::DataFrameContainer::find(), EcalMGPASample::gainId(), edm::Event::getByLabel(), h_ampltdc, h_bprofx, h_bprofy, h_e1e25, h_e1e25_mapx, h_e1e25_mapy, h_e1e9, h_e1e9_mapx, h_e1e9_mapy, h_e1x1, h_e1x1_center, h_e3x3, h_e3x3_center, h_e5x5, h_e5x5_center, h_e9e25, h_e9e25_mapx, h_e9e25_mapy, h_mapx, h_mapy, h_qualx, h_qualy, h_Shape_, h_slopex, h_slopey, h_tableIsMoving, hitCollection_, hitProducer_, hodoRecInfoCollection_, hodoRecInfoProducer_, i, EBDetId::ic(), EBDetId::ieta(), EBDetId::iphi(), EBDetId::ism(), DetId::null(), EcalTBTDCRecInfo::offset(), EcalTBHodoscopeRecInfo::posX(), EcalTBHodoscopeRecInfo::posY(), EcalTBHodoscopeRecInfo::qualX(), EcalTBHodoscopeRecInfo::qualY(), row, EcalDataFrame::sample(), EcalDataFrame::size(), edm::SortedCollection< T, SORT >::size(), EcalTBHodoscopeRecInfo::slopeX(), EcalTBHodoscopeRecInfo::slopeY(), EBDetId::SMCRYSTALMODE, EcalTBEventHeader::tableIsMoving(), tdcRecInfoCollection_, tdcRecInfoProducer_, x, xtalInBeam_, and y.

00215                                                                                    {
00216 //========================================================================
00217 
00218    using namespace edm;
00219    using namespace cms;
00220 
00221 
00222 
00223    Handle<EBDigiCollection> pdigis;
00224    const EBDigiCollection* digis=0;
00225    try {
00226      //std::cout << "EcalSimpleTBAnalyzer::analyze getting product with label: " << digiProducer_.c_str()<< " prodname: " << digiCollection_.c_str() << endl;
00227      iEvent.getByLabel( digiProducer_, digiCollection_,pdigis);
00228      digis = pdigis.product(); // get a ptr to the product
00229      //iEvent.getByLabel( hitProducer_, phits);
00230    } catch ( std::exception& ex ) {
00231      std::cerr << "Error! can't get the product " << digiCollection_.c_str() << std::endl;
00232    }
00233 
00234    // fetch the digis and compute signal amplitude
00235    Handle<EBUncalibratedRecHitCollection> phits;
00236    const EBUncalibratedRecHitCollection* hits=0;
00237    try {
00238      //std::cout << "EcalSimpleTBAnalyzer::analyze getting product with label: " << digiProducer_.c_str()<< " prodname: " << digiCollection_.c_str() << endl;
00239      iEvent.getByLabel( hitProducer_, hitCollection_,phits);
00240      hits = phits.product(); // get a ptr to the product
00241      //iEvent.getByLabel( hitProducer_, phits);
00242    } catch ( std::exception& ex ) {
00243      std::cerr << "Error! can't get the product " << hitCollection_.c_str() << std::endl;
00244    }
00245 
00246    Handle<EcalTBHodoscopeRecInfo> pHodo;
00247    const EcalTBHodoscopeRecInfo* recHodo=0;
00248    try {
00249      //std::cout << "EcalSimpleTBAnalyzer::analyze getting product with label: " << digiProducer_.c_str()<< " prodname: " << digiCollection_.c_str() << endl;
00250      iEvent.getByLabel( hodoRecInfoProducer_, hodoRecInfoCollection_, pHodo);
00251      recHodo = pHodo.product(); // get a ptr to the product
00252    } catch ( std::exception& ex ) {
00253      std::cerr << "Error! can't get the product " << hodoRecInfoCollection_.c_str() << std::endl;
00254    }
00255 
00256    Handle<EcalTBTDCRecInfo> pTDC;
00257    const EcalTBTDCRecInfo* recTDC=0;
00258    try {
00259      //std::cout << "EcalSimpleTBAnalyzer::analyze getting product with label: " << digiProducer_.c_str()<< " prodname: " << digiCollection_.c_str() << endl;
00260      iEvent.getByLabel( tdcRecInfoProducer_, tdcRecInfoCollection_, pTDC);
00261      recTDC = pTDC.product(); // get a ptr to the product
00262    } catch ( std::exception& ex ) {
00263      std::cerr << "Error! can't get the product " << tdcRecInfoCollection_.c_str() << std::endl;
00264    }
00265 
00266    Handle<EcalTBEventHeader> pEventHeader;
00267    const EcalTBEventHeader* evtHeader=0;
00268    try {
00269      //std::cout << "EcalSimpleTBAnalyzer::analyze getting product with label: " << digiProducer_.c_str()<< " prodname: " << digiCollection_.c_str() << endl;
00270      iEvent.getByLabel( eventHeaderProducer_ , pEventHeader );
00271      evtHeader = pEventHeader.product(); // get a ptr to the product
00272    } catch ( std::exception& ex ) {
00273      std::cerr << "Error! can't get the product " << eventHeaderProducer_.c_str() << std::endl;
00274    }
00275    
00276    if (!hits)
00277      return;
00278 
00279    if (!recTDC)
00280      return;
00281 
00282    if (!recHodo)
00283      return;
00284 
00285    if (!evtHeader)
00286      return;
00287 
00288    if (hits->size() == 0)
00289      return;
00290 
00291    if (evtHeader->tableIsMoving())
00292      h_tableIsMoving->Fill(evtHeader->eventNumber());
00293 
00294    // Crystal hit by beam
00295    if (xtalInBeam_.null())
00296      {
00297        xtalInBeam_ = EBDetId(1,evtHeader->crystalInBeam(),EBDetId::SMCRYSTALMODE);
00298        std::cout<< "Xtal In Beam is " << xtalInBeam_.ic() << std::endl;
00299      }
00300    else if (xtalInBeam_ != EBDetId(1,evtHeader->crystalInBeam(),EBDetId::SMCRYSTALMODE))
00301      return;
00302 
00303    if (evtHeader->tableIsMoving())
00304      return;
00305    
00306    
00307 //    EBDetId maxHitId(0); 
00308 //    float maxHit= -999999.;
00309    
00310 //    for(EBUncalibratedRecHitCollection::const_iterator ithit = hits->begin(); ithit != hits->end(); ++ithit) 
00311 //      {
00312 //        if (ithit->amplitude()>=maxHit)
00313 //       {
00314 //         maxHit=ithit->amplitude();
00315 //         maxHitId=ithit->id();
00316 //       }
00317        
00318 //      }   
00319 
00320 //    if (maxHitId==EBDetId(0))
00321 //      return;
00322 
00323 //   EBDetId maxHitId(1,704,EBDetId::SMCRYSTALMODE); 
00324 
00325    //Find EBDetId in a 5x5 Matrix (to be substituted by the Selector code)
00326    // Something like 
00327    // EBFixedWindowSelector<EcalUncalibratedRecHit> Simple5x5Matrix(hits,maxHitId,5,5);
00328    // std::vector<EcalUncalibratedRecHit> Energies5x5 = Simple5x5Matrix.getHits();
00329 
00330 
00331    EBDetId Xtals5x5[25];
00332    for (unsigned int icry=0;icry<25;icry++)
00333      {
00334        unsigned int row = icry / 5;
00335        unsigned int column= icry %5;
00336       try
00337         {
00338           int ieta=xtalInBeam_.ieta()+column-2;
00339           int iphi=xtalInBeam_.iphi()+row-2;
00340           EBDetId tempId(ieta, iphi,EBDetId::ETAPHIMODE);
00341           if (tempId.ism()==1) 
00342             Xtals5x5[icry]=tempId;
00343           else
00344             Xtals5x5[icry]=EBDetId(0);
00346         }
00347       catch ( std::runtime_error &e )
00348         {
00349           Xtals5x5[icry]=EBDetId(0);   
00350         }
00351      } 
00352 
00353 
00354    
00355    bool gain_switch = false;
00356    double samples_save[10]; for(int i=0; i < 10; ++i) samples_save[i]=0.0;
00357    double gain_save[10];    for(int i=0; i < 10; ++i) gain_save[i]=0.0;
00358    
00359    // find the rechit corresponding digi and the max sample
00360    EBDigiCollection::const_iterator myDg = digis->find(xtalInBeam_);
00361    int sMax = -1;
00362    double eMax = 0.;
00363    if (myDg != digis->end())
00364      {
00365        EBDataFrame myDigi = (*myDg);
00366        for (int sample = 0; sample < myDigi.size(); ++sample)
00367          {
00368            double analogSample = myDigi.sample(sample).adc();
00369            double gainSample   = myDigi.sample(sample).gainId();
00370            samples_save[sample] = analogSample;
00371            gain_save[sample]    = gainSample;
00372            //  std::cout << analogSample << " ";
00373            if ( eMax < analogSample )
00374              {
00375                eMax = analogSample;
00376                sMax = sample;
00377              }
00378            if(gainSample != 1) gain_switch = true;
00379          }
00380        // std::cout << std::endl;
00381      }
00382 
00383    for(int i =0; i < 10; ++i) {
00384      h_Shape_->Fill(double(i)+recTDC->offset(),samples_save[i]);
00385    }
00386 
00387    double amplitude[25];
00388    
00389    double amplitude3x3=0;  
00390    double amplitude5x5=0;  
00391    
00392    for (unsigned int icry=0;icry<25;icry++)
00393      {
00394        if (!Xtals5x5[icry].null())
00395          {
00396            amplitude[icry]=(hits->find(Xtals5x5[icry]))->amplitude();
00397            amplitude5x5 += amplitude[icry];
00398            // Is in 3x3?
00399            if ( icry == 6  || icry == 7  || icry == 8 ||
00400                 icry == 11 || icry == 12 || icry ==13 ||
00401                 icry == 16 || icry == 17 || icry ==18   )
00402              {
00403                amplitude3x3+=amplitude[icry];
00404              }
00405          }
00406      }
00407 
00408 
00409    h_e1x1->Fill(amplitude[12]);
00410    h_e3x3->Fill(amplitude3x3);
00411    h_e5x5->Fill(amplitude5x5);
00412 
00413    h_e1e9->Fill(amplitude[12]/amplitude3x3);
00414    h_e1e25->Fill(amplitude[12]/amplitude5x5);
00415    h_e9e25->Fill(amplitude3x3/amplitude5x5);
00416 
00417    if (recTDC)
00418      h_ampltdc->Fill(recTDC->offset(),amplitude[12]);
00419 
00420    if (recHodo)
00421      {
00422        float x=recHodo->posX();
00423        float y=recHodo->posY();
00424        float xslope=recHodo->slopeX();
00425        float yslope=recHodo->slopeY();
00426        float xqual=recHodo->qualX();
00427        float yqual=recHodo->qualY();
00428        
00429        //Filling beam profiles
00430        h_bprofx->Fill(x);
00431        h_bprofy->Fill(y);
00432        h_qualx->Fill(xqual);
00433        h_qualy->Fill(yqual);
00434        h_slopex->Fill(xslope);
00435        h_slopey->Fill(yslope);
00436 
00437        //Fill central events
00438 
00439        
00440        if ( fabs(x + 2.5) < 2.5 && fabs(y + 0.5) < 2.5)
00441          {
00442            h_e1x1_center->Fill(amplitude[12]);
00443            h_e3x3_center->Fill(amplitude3x3);
00444            h_e5x5_center->Fill(amplitude5x5);
00445            
00446            h_e1e9->Fill(amplitude[12]/amplitude3x3);
00447            h_e1e25->Fill(amplitude[12]/amplitude5x5);
00448            h_e9e25->Fill(amplitude3x3/amplitude5x5);
00449          }
00450 
00451        for (unsigned int icry=0;icry<25;icry++)
00452          {       
00453            h_mapx[icry]->Fill(x,amplitude[icry]);
00454            h_mapy[icry]->Fill(y,amplitude[icry]);
00455          }
00456 
00457        h_e1e9_mapx->Fill(x,amplitude[12]/amplitude3x3);
00458        h_e1e9_mapy->Fill(y,amplitude[12]/amplitude3x3);
00459 
00460        h_e1e25_mapx->Fill(x,amplitude[12]/amplitude5x5);
00461        h_e1e25_mapy->Fill(y,amplitude[12]/amplitude5x5);
00462 
00463        h_e9e25_mapx->Fill(x,amplitude3x3/amplitude5x5);
00464        h_e9e25_mapy->Fill(y,amplitude3x3/amplitude5x5);
00465      }
00466 
00467 }

void EcalSimpleTBAnalyzer::beginJob ( edm::EventSetup const &   )  [virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 100 of file EcalSimpleTBAnalyzer.cc.

References e, h_ampltdc, h_bprofx, h_bprofy, h_e1e25, h_e1e25_mapx, h_e1e25_mapy, h_e1e9, h_e1e9_mapx, h_e1e9_mapy, h_e1x1, h_e1x1_center, h_e3x3, h_e3x3_center, h_e5x5, h_e5x5_center, h_e9e25, h_e9e25_mapx, h_e9e25_mapy, h_mapx, h_mapy, h_qualx, h_qualy, h_Shape_, h_slopex, h_slopey, and h_tableIsMoving.

00100                                                    {
00101 //========================================================================
00102 
00103   // Amplitude vs TDC offset
00104   h_ampltdc = new TH2F("h_ampltdc","Max Amplitude vs TDC offset", 100,0.,1.,1000, 0., 4000.);
00105 
00106   // Reconstructed energies
00107   h_tableIsMoving = new TH1F("h_tableIsMoving","TableIsMoving", 100000, 0., 100000.);
00108 
00109   h_e1x1 = new TH1F("h_e1x1","E1x1 energy", 1000, 0., 4000.);
00110   h_e3x3 = new TH1F("h_e3x3","E3x3 energy", 1000, 0., 4000.);
00111   h_e5x5 = new TH1F("h_e5x5","E5x5 energy", 1000, 0., 4000.);
00112 
00113   h_e1x1_center = new TH1F("h_e1x1_center","E1x1 energy", 1000, 0., 4000.);
00114   h_e3x3_center = new TH1F("h_e3x3_center","E3x3 energy", 1000, 0., 4000.);
00115   h_e5x5_center = new TH1F("h_e5x5_center","E5x5 energy", 1000, 0., 4000.);
00116 
00117   h_e1e9 = new TH1F("h_e1e9","E1/E9 ratio", 600, 0., 1.2);
00118   h_e1e25 = new TH1F("h_e1e25","E1/E25 ratio", 600, 0., 1.2);
00119   h_e9e25 = new TH1F("h_e9e25","E9/E25 ratio", 600, 0., 1.2);
00120 
00121   h_bprofx = new TH1F("h_bprofx","Beam Profile X",100,-20.,20.);
00122   h_bprofy = new TH1F("h_bprofy","Beam Profile Y",100,-20.,20.);
00123 
00124   h_qualx = new TH1F("h_qualx","Beam Quality X",5000,0.,5.);
00125   h_qualy = new TH1F("h_qualy","Beam Quality X",5000,0.,5.);
00126 
00127   h_slopex = new TH1F("h_slopex","Beam Slope X",500, -5e-4 , 5e-4 );
00128   h_slopey = new TH1F("h_slopey","Beam Slope Y",500, -5e-4 , 5e-4 );
00129 
00130   char hname[50];
00131   char htitle[50];
00132   for (unsigned int icry=0;icry<25;icry++)
00133     {       
00134       sprintf(hname,"h_mapx_%d",icry);
00135       sprintf(htitle,"Max Amplitude vs X %d",icry);
00136       h_mapx[icry] = new TH2F(hname,htitle,80,-20,20,1000,0.,4000.);
00137       sprintf(hname,"h_mapy_%d",icry);
00138       sprintf(htitle,"Max Amplitude vs Y %d",icry);
00139       h_mapy[icry] = new TH2F(hname,htitle,80,-20,20,1000,0.,4000.);
00140     }
00141   
00142   h_e1e9_mapx = new TH2F("h_e1e9_mapx","E1/E9 vs X",80,-20,20,600,0.,1.2);
00143   h_e1e9_mapy = new TH2F("h_e1e9_mapy","E1/E9 vs Y",80,-20,20,600,0.,1.2);
00144 
00145   h_e1e25_mapx = new TH2F("h_e1e25_mapx","E1/E25 vs X",80,-20,20,600,0.,1.2);
00146   h_e1e25_mapy = new TH2F("h_e1e25_mapy","E1/E25 vs Y",80,-20,20,600,0.,1.2);
00147 
00148   h_e9e25_mapx = new TH2F("h_e9e25_mapx","E9/E25 vs X",80,-20,20,600,0.,1.2);
00149   h_e9e25_mapy = new TH2F("h_e9e25_mapy","E9/E25 vs Y",80,-20,20,600,0.,1.2);
00150 
00151   h_Shape_ = new TH2F("h_Shape_","Xtal in Beam Shape",250,0,10,350,0,3500);
00152 
00153 }

void EcalSimpleTBAnalyzer::endJob ( void   )  [virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 157 of file EcalSimpleTBAnalyzer.cc.

References f, h_ampltdc, h_bprofx, h_bprofy, h_e1e25, h_e1e25_mapx, h_e1e25_mapy, h_e1e9, h_e1e9_mapx, h_e1e9_mapy, h_e1x1, h_e1x1_center, h_e3x3, h_e3x3_center, h_e5x5, h_e5x5_center, h_e9e25, h_e9e25_mapx, h_e9e25_mapy, h_mapx, h_mapy, h_qualx, h_qualy, h_Shape_, h_slopex, h_slopey, h_tableIsMoving, and rootfile_.

00157                              {
00158 //========================================================================
00159 
00160   TFile f(rootfile_.c_str(),"RECREATE");
00161 
00162   // Amplitude vs TDC offset
00163   h_ampltdc->Write(); 
00164 
00165   // Reconstructed energies
00166   h_e1x1->Write(); 
00167   h_e3x3->Write(); 
00168   h_e5x5->Write(); 
00169 
00170   h_e1x1_center->Write(); 
00171   h_e3x3_center->Write(); 
00172   h_e5x5_center->Write(); 
00173 
00174   h_e1e9->Write(); 
00175   h_e1e25->Write(); 
00176   h_e9e25->Write(); 
00177 
00178   h_bprofx->Write(); 
00179   h_bprofy->Write(); 
00180 
00181   h_qualx->Write(); 
00182   h_qualy->Write(); 
00183 
00184   h_slopex->Write(); 
00185   h_slopey->Write(); 
00186   
00187   h_Shape_->Write();
00188 
00189   for (unsigned int icry=0;icry<25;icry++)
00190     {       
00191       h_mapx[icry]->Write(); 
00192       h_mapy[icry]->Write(); 
00193     }
00194 
00195   h_e1e9_mapx->Write(); 
00196   h_e1e9_mapy->Write(); 
00197 
00198   h_e1e25_mapx->Write(); 
00199   h_e1e25_mapy->Write(); 
00200 
00201   h_e9e25_mapx->Write(); 
00202   h_e9e25_mapy->Write(); 
00203 
00204   h_tableIsMoving->Write();
00205 
00206   f.Close();
00207 }


Member Data Documentation

std::string EcalSimpleTBAnalyzer::digiCollection_ [private]

Definition at line 56 of file EcalSimpleTBAnalyzer.h.

Referenced by analyze(), and EcalSimpleTBAnalyzer().

std::string EcalSimpleTBAnalyzer::digiProducer_ [private]

Definition at line 57 of file EcalSimpleTBAnalyzer.h.

Referenced by analyze(), and EcalSimpleTBAnalyzer().

std::string EcalSimpleTBAnalyzer::eventHeaderCollection_ [private]

Definition at line 64 of file EcalSimpleTBAnalyzer.h.

Referenced by EcalSimpleTBAnalyzer().

std::string EcalSimpleTBAnalyzer::eventHeaderProducer_ [private]

Definition at line 65 of file EcalSimpleTBAnalyzer.h.

Referenced by analyze(), and EcalSimpleTBAnalyzer().

TH2F* EcalSimpleTBAnalyzer::h_ampltdc [private]

Definition at line 68 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_bprofx [private]

Definition at line 86 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_bprofy [private]

Definition at line 87 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_e1e25 [private]

Definition at line 83 of file EcalSimpleTBAnalyzer.h.

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

TH2F* EcalSimpleTBAnalyzer::h_e1e25_mapx [private]

Definition at line 101 of file EcalSimpleTBAnalyzer.h.

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

TH2F* EcalSimpleTBAnalyzer::h_e1e25_mapy [private]

Definition at line 102 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_e1e9 [private]

Definition at line 82 of file EcalSimpleTBAnalyzer.h.

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

TH2F* EcalSimpleTBAnalyzer::h_e1e9_mapx [private]

Definition at line 98 of file EcalSimpleTBAnalyzer.h.

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

TH2F* EcalSimpleTBAnalyzer::h_e1e9_mapy [private]

Definition at line 99 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_e1x1 [private]

Definition at line 74 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_e1x1_center [private]

Definition at line 78 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_e3x3 [private]

Definition at line 75 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_e3x3_center [private]

Definition at line 79 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_e5x5 [private]

Definition at line 76 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_e5x5_center [private]

Definition at line 80 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_e9e25 [private]

Definition at line 84 of file EcalSimpleTBAnalyzer.h.

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

TH2F* EcalSimpleTBAnalyzer::h_e9e25_mapx [private]

Definition at line 104 of file EcalSimpleTBAnalyzer.h.

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

TH2F* EcalSimpleTBAnalyzer::h_e9e25_mapy [private]

Definition at line 105 of file EcalSimpleTBAnalyzer.h.

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

TH2F* EcalSimpleTBAnalyzer::h_mapx[25] [private]

Definition at line 95 of file EcalSimpleTBAnalyzer.h.

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

TH2F* EcalSimpleTBAnalyzer::h_mapy[25] [private]

Definition at line 96 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_qualx [private]

Definition at line 89 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_qualy [private]

Definition at line 90 of file EcalSimpleTBAnalyzer.h.

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

TH2F* EcalSimpleTBAnalyzer::h_Shape_ [private]

Definition at line 70 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_slopex [private]

Definition at line 92 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_slopey [private]

Definition at line 93 of file EcalSimpleTBAnalyzer.h.

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

TH1F* EcalSimpleTBAnalyzer::h_tableIsMoving [private]

Definition at line 73 of file EcalSimpleTBAnalyzer.h.

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

std::string EcalSimpleTBAnalyzer::hitCollection_ [private]

Definition at line 58 of file EcalSimpleTBAnalyzer.h.

Referenced by analyze(), and EcalSimpleTBAnalyzer().

std::string EcalSimpleTBAnalyzer::hitProducer_ [private]

Definition at line 59 of file EcalSimpleTBAnalyzer.h.

Referenced by analyze(), and EcalSimpleTBAnalyzer().

std::string EcalSimpleTBAnalyzer::hodoRecInfoCollection_ [private]

Definition at line 60 of file EcalSimpleTBAnalyzer.h.

Referenced by analyze(), and EcalSimpleTBAnalyzer().

std::string EcalSimpleTBAnalyzer::hodoRecInfoProducer_ [private]

Definition at line 61 of file EcalSimpleTBAnalyzer.h.

Referenced by analyze(), and EcalSimpleTBAnalyzer().

std::string EcalSimpleTBAnalyzer::rootfile_ [private]

Definition at line 55 of file EcalSimpleTBAnalyzer.h.

Referenced by EcalSimpleTBAnalyzer(), and endJob().

std::string EcalSimpleTBAnalyzer::tdcRecInfoCollection_ [private]

Definition at line 62 of file EcalSimpleTBAnalyzer.h.

Referenced by analyze(), and EcalSimpleTBAnalyzer().

std::string EcalSimpleTBAnalyzer::tdcRecInfoProducer_ [private]

Definition at line 63 of file EcalSimpleTBAnalyzer.h.

Referenced by analyze(), and EcalSimpleTBAnalyzer().

EBDetId EcalSimpleTBAnalyzer::xtalInBeam_ [private]

Definition at line 107 of file EcalSimpleTBAnalyzer.h.

Referenced by analyze().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:19:55 2009 for CMSSW by  doxygen 1.5.4