CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

CSCAFEBThrAnalysis Class Reference

#include <CSCAFEBThrAnalysis.h>

List of all members.

Public Member Functions

void analyze (const CSCWireDigiCollection &wirecltn)
 CSCAFEBThrAnalysis ()
void done ()
void setup (const std::string &histoFileName)

Private Member Functions

void bookForId (int flag, const int &idint, const std::string &ids)
void hf1ForId (std::map< int, TH1 * > &mp, int flag, const int &id, float &x, float w)
void hf2ForId (std::map< int, TH2 * > &mp, int flag, const int &id, float &x, float &y, float w)

Private Attributes

int BegDac
const CSCToAFEB csctoafeb
 Layer, wire to AFEB, channel conversion.
int EndDac
int EvDac
TFile * hist_file
 ROOT hist file.
int unsigned indDac
std::map< int, std::vector
< std::vector< float > > > 
m_res_for_db
std::map< int, std::vector
< std::vector< int > > > 
m_wire_dac
std::map< int, std::vector< int > > m_wire_ev
 Maps - per event, threshold curve, fit results.
std::map< int, TH2 * > mh_AfebChi2perNDF
std::map< int, TH2 * > mh_AfebDac
std::map< int, TH2 * > mh_AfebNDF
std::map< int, TH2 * > mh_AfebNoisePar
std::map< int, TH2 * > mh_AfebThrPar
std::map< int, TH1 * > mh_ChanEff
 Histogram maps.
std::map< int, TH2 * > mh_FirstTime
int nmbev
 Statistics.
int nmbev_no_wire
int npulses
 DAC info.
int StepDac
std::vector< float > vecDac
std::vector< int > vecDacOccup

Detailed Description

Date:
2006/08/02 20:19:51
Revision:
1.2
Author:

Definition at line 20 of file CSCAFEBThrAnalysis.h.


Constructor & Destructor Documentation

CSCAFEBThrAnalysis::CSCAFEBThrAnalysis ( )

Definition at line 10 of file CSCAFEBThrAnalysis.cc.

References BegDac, EndDac, EvDac, hist_file, indDac, m_res_for_db, m_wire_dac, mh_AfebDac, mh_ChanEff, mh_FirstTime, nmbev, nmbev_no_wire, npulses, StepDac, vecDac, and vecDacOccup.

                                       {

hist_file=0; // set to null

nmbev=0;
nmbev_no_wire=0;

npulses=100;
vecDac.clear();
BegDac=1; 
EndDac=29;
EvDac=1; 
StepDac=1;
indDac=0;

vecDacOccup.assign(150,0);
m_wire_dac.clear();
m_res_for_db.clear();
mh_ChanEff.clear();
mh_FirstTime.clear();
mh_AfebDac.clear();

}

Member Function Documentation

void CSCAFEBThrAnalysis::analyze ( const CSCWireDigiCollection wirecltn)

Store DAC

Plot time bin of the first hit vs AFEB channels

Store time bin of the first hit into map

Accumulate hits into map of wires vs DAC

Definition at line 135 of file CSCAFEBThrAnalysis.cc.

References BegDac, csctoafeb, CSCDetId::endcap(), EndDac, CSCToAFEB::getAfebCh(), CSCToAFEB::getAfebPos(), CSCToAFEB::getMaxWire(), hf2ForId(), i, indDac, j, m_wire_dac, m_wire_ev, mh_FirstTime, nmbev, nmbev_no_wire, relativeConstraints::ring, relativeConstraints::station, StepDac, vecDac, vecDacOccup, x, and detailsBasic3DVector::y.

Referenced by CSCAFEBAnalyzer::analyze().

                                                                      {

std::ostringstream ss;
std::map<int,std::vector<int> >::iterator intIt;
std::map<int, std::vector<std::vector<int> > >::iterator wiredacIt;

std::vector<int> vec; 
int afeb,ch;
float x,y;

m_wire_ev.clear();


nmbev++;
//indDac=(nmbev-1)/EvDac;
float dac=BegDac+StepDac*indDac;
if(vecDac.size() <= indDac) vecDac.push_back(dac);

//std::cout<<"  Event "<<nmbev;
//std::cout<<"  "<<indDac<<" "<<vecDac[indDac]<<std::endl;

//Anode wires

  CSCWireDigiCollection::DigiRangeIterator wiredetUnitIt;
  if(wirecltn.begin() == wirecltn.end())  nmbev_no_wire++; 

  if(wirecltn.begin() !=  wirecltn.end()) {

  vecDacOccup[indDac]=vecDacOccup[indDac]+1;

  for (wiredetUnitIt=wirecltn.begin();
       wiredetUnitIt!=wirecltn.end();
       ++wiredetUnitIt){

    const CSCDetId& id = (*wiredetUnitIt).first;

    const int idchamber=id.endcap()*10000 +id.station()*1000+
                        id.ring()*100 +id.chamber();
    const int idlayer  =id.endcap()*100000+id.station()*10000+
                        id.ring()*1000+id.chamber()*10+id.layer();

    //    std::cout<<idchamber<<" "<<idlayer<<std::endl;

    const int maxwire=csctoafeb.getMaxWire(id.station(),id.ring());
    std::vector<int> wireplane(maxwire,0);

    const CSCWireDigiCollection::Range& range = (*wiredetUnitIt).second;
    for (CSCWireDigiCollection::const_iterator digiIt =
           range.first; digiIt!=range.second; ++digiIt){

      int iwire=(*digiIt).getWireGroup();
      if(iwire<=maxwire) {
        if(wireplane[iwire-1]==0) {
          wireplane[iwire-1]=(*digiIt).getBeamCrossingTag()+1;
          ch=csctoafeb.getAfebCh(id.layer(),(*digiIt).getWireGroup());
          afeb=csctoafeb.getAfebPos(id.layer(),(*digiIt).getWireGroup());


          x=(afeb-1)*16+ch;
          y=wireplane[iwire-1];
          hf2ForId(mh_FirstTime, 100, idchamber,x, y, 1.0);

        } // end if wireplane[iwire-1]==0
      }   // end if iwire<=csctoafeb.getMaxWire(id.station(),id.ring()
    }     // end of for digis in layer


    if(m_wire_ev.find(idlayer) == m_wire_ev.end()) 
      m_wire_ev[idlayer]=wireplane;

  }       // end of cycle on detUnit



  for(intIt=m_wire_ev.begin(); intIt!=m_wire_ev.end(); ++intIt) {
    const int idwirev=(*intIt).first;
    const std::vector<int> wiretemp=(*intIt).second; // What for?
    int nsize=EndDac-BegDac+1;
    std::vector<int> zer(nsize,0);

    wiredacIt=m_wire_dac.find(idwirev);
    if(wiredacIt==m_wire_dac.end()) {
      for(unsigned int j=0;j<wiretemp.size();j++)
         m_wire_dac[idwirev].push_back(zer);
      wiredacIt=m_wire_dac.find(idwirev);
//      std::cout<<idwirev<<"  "<<wiredacIt->second.size()<<"  "<<
//                 wiredacIt->second[0].size()<<std::endl;      
    }
    for(unsigned int i=0;i<(*intIt).second.size();i++)
      if((*intIt).second[i]>0) wiredacIt->second[i][indDac]=
                               wiredacIt->second[i][indDac]+1;          
  } // end of adding hits to the map of wire/DAC
  } // end of if wire collection not empty
    indDac++;
    if(dac==(float)EndDac) indDac=0;  
}   // end of void CSCAFEBThrAnalysis
void CSCAFEBThrAnalysis::bookForId ( int  flag,
const int &  idint,
const std::string &  ids 
) [private]

Definition at line 40 of file CSCAFEBThrAnalysis.cc.

References hist_file, mh_AfebChi2perNDF, mh_AfebDac, mh_AfebNDF, mh_AfebNoisePar, mh_AfebThrPar, mh_ChanEff, and mh_FirstTime.

Referenced by hf1ForId(), and hf2ForId().

                                                                         {
  hist_file->cd();

  std::ostringstream ss;

  if(flag==100) {
  ss <<idint<<"_Anode_First_Time";
  mh_FirstTime[idint]=new TH2F(ss.str().c_str(),"",675,0.0,675.0,50,0.0,10.0);
  mh_FirstTime[idint]->GetXaxis()->SetTitle("(AFEB-1)*16+ch");
  mh_FirstTime[idint]->GetYaxis()->SetTitle("Anode First Time Bin");
  mh_FirstTime[idint]->SetOption("BOX");
  ss.str(""); // clear
  }

  if(flag==101) {
  ss <<idint<<"_Anode_Chan_Eff";
  mh_ChanEff[idint]=new TH1F(ss.str().c_str(),"",675,0.0,675.0);
  mh_ChanEff[idint]->GetXaxis()->SetTitle("(AFEB-1)*16+ch");
  mh_ChanEff[idint]->GetYaxis()->SetTitle("Entries");
  ss.str(""); // clear
  }

  if(flag==200) { 
  ss <<idint<<"_Anode_AfebDac";
  mh_AfebDac[idint]=new TH2F(ss.str().c_str(),"",75,0.0,75.0, 50,0.0,50.0);
  mh_AfebDac[idint]->GetXaxis()->SetTitle("Threshold DAC");
  mh_AfebDac[idint]->GetYaxis()->SetTitle("AFEB Channel Occupancy");
  mh_AfebDac[idint]->SetOption("COL");
  ss.str(""); // clear
  }

  if(flag==300) { 
  ss <<idint<<"_Anode_AfebThrPar";
  mh_AfebThrPar[idint]=new TH2F(ss.str().c_str(),"",700,0.0,700.0, 50,0.0,50.0);
  mh_AfebThrPar[idint]->GetXaxis()->SetTitle("(AFEB-1)*16+ch");
  mh_AfebThrPar[idint]->GetYaxis()->SetTitle("AFEB Channel Threshold (DAC)");
  mh_AfebThrPar[idint]->SetOption("BOX");
  ss.str(""); // clear
  }

  if(flag==400) { 
  ss <<idint<<"_Anode_AfebNoisePar";
  mh_AfebNoisePar[idint]=new TH2F(ss.str().c_str(),"",700,0.0,700.0, 50,0.0,5.0);
  mh_AfebNoisePar[idint]->GetXaxis()->SetTitle("(AFEB-1)*16+ch");
  mh_AfebNoisePar[idint]->GetYaxis()->SetTitle("AFEB Channel Noise (DAC)");
  mh_AfebNoisePar[idint]->SetOption("BOX");
  ss.str(""); // clear
  }

  if(flag==500) { 
  ss <<idint<<"_Anode_AfebNDF";
  mh_AfebNDF[idint]=new TH2F(ss.str().c_str(),"",700,0.0,700.0, 25,-5.0,20.0);
  mh_AfebNDF[idint]->GetXaxis()->SetTitle("(AFEB-1)*16+ch");
  mh_AfebNDF[idint]->GetYaxis()->SetTitle("AFEB Channel Fit NDF");
  mh_AfebNDF[idint]->SetOption("BOX");
  ss.str(""); // clear
  }

  if(flag==600) { 
  ss <<idint<<"_Anode_AfebChi2perNDF";
  mh_AfebChi2perNDF[idint]=new TH2F(ss.str().c_str(),"",700,0.0,700.0, 50,0.0,10.0);
  mh_AfebChi2perNDF[idint]->GetXaxis()->SetTitle("(AFEB-1)*16+ch");
  mh_AfebChi2perNDF[idint]->GetYaxis()->SetTitle("AFEB Channel Fit Chi2/NDF");
  mh_AfebChi2perNDF[idint]->SetOption("BOX");
  ss.str(""); // clear
  }
}
void CSCAFEBThrAnalysis::done ( )

Plot "efficiency" vs AFEB channels

Fitting threshold curve

Histogram fit results for given CSC vs wire defined as x=(afeb-1)*16+ch

Threshold

Noise

NDF

Chi2/NDF

Prepare vector of fit results

Store fit results to map of wire vectors of vectors of results

Definition at line 237 of file CSCAFEBThrAnalysis.cc.

References BegDac, gather_cfg::cout, CSCFitAFEBThr::CSCFitAFEBThr(), csctoafeb, EndDac, CSCToAFEB::getAfebCh(), CSCToAFEB::getAfebPos(), hf1ForId(), hf2ForId(), hist_file, i, indDac, j, m_res_for_db, m_wire_dac, mh_AfebChi2perNDF, mh_AfebDac, mh_AfebNDF, mh_AfebNoisePar, mh_AfebThrPar, mh_ChanEff, nmbev, nmbev_no_wire, npulses, CSCobject::obj, findQualityFiles::size, CSCFitAFEBThr::ThresholdNoise(), vecDac, vecDacOccup, x, and detailsBasic3DVector::y.

Referenced by CSCAFEBAnalyzer::endJob().

                              {

  float x,y;

  //This is for DB transfer
  CSCobject *cn = new CSCobject();
  // Unused variable dbon caused compiler warning.
  //condbon *dbon = new condbon();
  new condbon(); 
  // Note:  cn and dbon pointers are never freed, I think. This leaks memory!!!
  
  std::map<int, std::vector<std::vector<int> > >::iterator mwiredacIt;
  std::map<int, std::vector<std::vector<float> > >::iterator mresfordbIt;
  std::vector<int>::iterator vecIt;

  std::cout<<"Events analyzed  "<<nmbev<<std::endl;
  std::cout<<"Events no anodes "<<nmbev_no_wire<<std::endl<<std::endl;

  std::cout<<"DAC occupancy"<<std::endl;
  int ndacsize=EndDac-BegDac+1;
  for(int i=0;i<ndacsize;i++) std::cout
                                       <<" "<<vecDacOccup[i];
  std::cout<<"\n\n"<<std::endl; 

  std::vector<float> inputx;
  std::vector<float> inputy;

  std::vector<float> mypar(2, 0.0);
  std::vector<float> ermypar(2, 0.0);
  float ercorr, chisq, edm;
  int ndf,niter;
 
  int ch, afeb, idchmb;

  CSCFitAFEBThr * fitAnodeThr;

  std::vector<float> fitres(4,0);

//  std::cout<<"Threshold curves:\n"<<std::endl;

  for(mwiredacIt=m_wire_dac.begin();mwiredacIt!=m_wire_dac.end();++mwiredacIt){
    int idwiredac=(*mwiredacIt).first;

    int layer=idwiredac-(idwiredac/10)*10;   
    idchmb=idwiredac/10;

    for(int unsigned iwire=0; iwire<mwiredacIt->second.size();iwire++) {

       afeb=csctoafeb.getAfebPos(layer,iwire+1);
       ch=csctoafeb.getAfebCh(layer,iwire+1);
       int afebid=(idwiredac/10)*100+csctoafeb.getAfebPos(layer,iwire+1);

       indDac=0;
       for(vecIt=mwiredacIt->second[iwire].begin();
          vecIt!=mwiredacIt->second[iwire].end(); ++vecIt) {

          x=vecDac[indDac]; y=*vecIt; 
          hf2ForId(mh_AfebDac, 200, afebid,x, y,1.0);

          if(indDac==0) {
             x=(afeb-1)*16+ch;
             y=*vecIt;
             hf1ForId(mh_ChanEff, 101, idchmb, x, y);
          }

          inputx.push_back(x);
          inputy.push_back(y);

          indDac++;
       }    
       // end of DAC cycle to form vectors of input data (inputx,inputy)for fit
 
//           std::cout<<afebid<<" "<<ch<<std::endl;
//           for(unsigned int i=0;i<inputx.size();i++)
//              std::cout<<" "<<inputy[i];
//           std::cout<<std::endl;


  for(unsigned int i=0;i<2;i++) {mypar[i]=0.0; ermypar[i]=0.0;}
  ercorr=0.0; 
  chisq=0.0; 
  ndf=0; 
  niter=0; 
  edm=0.0;

  fitAnodeThr=new CSCFitAFEBThr();
  
fitAnodeThr->ThresholdNoise(inputx,inputy,npulses,vecDacOccup,mypar,ermypar,ercorr,chisq,ndf,niter,edm);
  delete fitAnodeThr;

//  std::cout<<"Fit "<<mypar[0]<<" "<<mypar[1]<<" "<<ndf<<" "<<chisq
//           <<std::endl<<std::endl;


    x=(afeb-1)*16+ch;

    y=mypar[0];
    hf2ForId(mh_AfebThrPar, 300, idchmb,x, y, 1.0);

    y=mypar[1];
    hf2ForId(mh_AfebNoisePar, 400, idchmb,x, y, 1.0);

    y=ndf;
    hf2ForId(mh_AfebNDF, 500, idchmb,x, y, 1.0);

    y=0.0;
    if(ndf>0) y=chisq/(float)ndf;
    hf2ForId(mh_AfebChi2perNDF, 600, idchmb,x, y, 1.0);

    fitres[0]=mypar[0];
    fitres[1]=mypar[1];
    fitres[2]=ndf;
    fitres[3]=0.0;
    if(ndf>0) fitres[3]=chisq/(float)ndf;
    
    
    mresfordbIt=m_res_for_db.find(idwiredac);
    if(mresfordbIt==m_res_for_db.end())
      m_res_for_db[idwiredac].push_back(fitres);
    else m_res_for_db[idwiredac].push_back(fitres);

    inputx.clear();
    inputy.clear();

} // end for(int iwire=0)
}               // end of iteration thru m_wire_dac map
  
  std::cout<<"Size of map for DB "<<m_res_for_db.size()<<std::endl;
  
  std::cout<<"The following CSCs will go to DB"<<std::endl<<std::endl;

  for(mresfordbIt=m_res_for_db.begin(); mresfordbIt!=m_res_for_db.end(); 
      ++mresfordbIt) {
      int idlayer=(*mresfordbIt).first;
      idchmb=idlayer/10;
      int layer=idlayer-idchmb*10;
      std::cout<<"CSC "<<idchmb<<"  Layer "<<layer<<"  "
               <<(*mresfordbIt).second.size()<<std::endl;          
  }
  
  for(mresfordbIt=m_res_for_db.begin(); mresfordbIt!=m_res_for_db.end(); 
      ++mresfordbIt) {
      int idlayer=(*mresfordbIt).first;
      
      //This is for DB transfer
      int size = (*mresfordbIt).second.size();
      cn->obj[idlayer].resize(size);
      
      for (unsigned int i=0;i<(*mresfordbIt).second.size();i++) { 
        std::cout<<idlayer<<" "<<i+1<<"    ";
        
        for(int j=0;j<4;j++)
          std::cout<< (*mresfordbIt).second[i][j]<<" ";
        std::cout<<std::endl;
        
        //This is for DB transfer
        cn->obj[idlayer][i].resize(4);
        cn->obj[idlayer][i][0] = (*mresfordbIt).second[i][0];
        cn->obj[idlayer][i][1] = (*mresfordbIt).second[i][1];
        cn->obj[idlayer][i][2] = (*mresfordbIt).second[i][2];
        cn->obj[idlayer][i][3] = (*mresfordbIt).second[i][3];
      }
  }
  
  //send data to DB
  //dbon->cdbon_last_run("afeb_thresholds",&run);
  //std::cout<<"Last AFEB thresholds run "<<run<<" for run file "<<myname<<" saved "<<myTime<<std::endl;
  //if(debug) dbon->cdbon_write(cn,"afeb_thresholds",run+1,myTime);
  
  if(hist_file!=0) { // if there was a histogram file...
    hist_file->Write(); // write out the histrograms
    delete hist_file; // close and delete the file
    hist_file=0; // set to zero to clean up
    std::cout << "Hist. file was closed\n";
  }

  std::cout<<" End of CSCAFEBThrAnalysis"<<std::endl;  
}
void CSCAFEBThrAnalysis::hf1ForId ( std::map< int, TH1 * > &  mp,
int  flag,
const int &  id,
float &  x,
float  w 
) [private]

Definition at line 109 of file CSCAFEBThrAnalysis.cc.

References bookForId(), and h.

Referenced by done().

                                  {

  std::map<int,TH1*>::iterator h;
  h=mp.find(id);
  if (h==mp.end()) {
     bookForId(flag,id,"");
     h=mp.find(id);
  }
  h->second->Fill(x,w);
}
void CSCAFEBThrAnalysis::hf2ForId ( std::map< int, TH2 * > &  mp,
int  flag,
const int &  id,
float &  x,
float &  y,
float  w 
) [private]

Definition at line 121 of file CSCAFEBThrAnalysis.cc.

References bookForId(), and h.

Referenced by analyze(), and done().

                                             {
                                                                                
  std::map<int,TH2*>::iterator h;
  h=mp.find(id);
  if (h==mp.end()) {
     bookForId(flag,id,"");
     h=mp.find(id);
  }
  h->second->Fill(x,y,w);
}
void CSCAFEBThrAnalysis::setup ( const std::string &  histoFileName)

open the histogram file

Definition at line 34 of file CSCAFEBThrAnalysis.cc.

References hist_file.

Referenced by CSCAFEBAnalyzer::CSCAFEBAnalyzer().

                                                             {
  hist_file=new TFile(histoFileName.c_str(),"RECREATE");
  hist_file->cd();
}

Member Data Documentation

Definition at line 40 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), CSCAFEBThrAnalysis(), and done().

Layer, wire to AFEB, channel conversion.

Definition at line 53 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), and done().

Definition at line 41 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), CSCAFEBThrAnalysis(), and done().

Definition at line 42 of file CSCAFEBThrAnalysis.h.

Referenced by CSCAFEBThrAnalysis().

ROOT hist file.

Definition at line 56 of file CSCAFEBThrAnalysis.h.

Referenced by bookForId(), CSCAFEBThrAnalysis(), done(), and setup().

int unsigned CSCAFEBThrAnalysis::indDac [private]

Definition at line 39 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), CSCAFEBThrAnalysis(), and done().

std::map<int, std::vector<std::vector<float> > > CSCAFEBThrAnalysis::m_res_for_db [private]

Definition at line 50 of file CSCAFEBThrAnalysis.h.

Referenced by CSCAFEBThrAnalysis(), and done().

std::map<int, std::vector<std::vector<int> > > CSCAFEBThrAnalysis::m_wire_dac [private]

Definition at line 49 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), CSCAFEBThrAnalysis(), and done().

std::map<int, std::vector<int> > CSCAFEBThrAnalysis::m_wire_ev [private]

Maps - per event, threshold curve, fit results.

Definition at line 48 of file CSCAFEBThrAnalysis.h.

Referenced by analyze().

std::map<int, TH2*> CSCAFEBThrAnalysis::mh_AfebChi2perNDF [private]

Definition at line 66 of file CSCAFEBThrAnalysis.h.

Referenced by bookForId(), and done().

std::map<int, TH2*> CSCAFEBThrAnalysis::mh_AfebDac [private]

Definition at line 62 of file CSCAFEBThrAnalysis.h.

Referenced by bookForId(), CSCAFEBThrAnalysis(), and done().

std::map<int, TH2*> CSCAFEBThrAnalysis::mh_AfebNDF [private]

Definition at line 65 of file CSCAFEBThrAnalysis.h.

Referenced by bookForId(), and done().

std::map<int, TH2*> CSCAFEBThrAnalysis::mh_AfebNoisePar [private]

Definition at line 64 of file CSCAFEBThrAnalysis.h.

Referenced by bookForId(), and done().

std::map<int, TH2*> CSCAFEBThrAnalysis::mh_AfebThrPar [private]

Definition at line 63 of file CSCAFEBThrAnalysis.h.

Referenced by bookForId(), and done().

std::map<int, TH1*> CSCAFEBThrAnalysis::mh_ChanEff [private]

Histogram maps.

Definition at line 59 of file CSCAFEBThrAnalysis.h.

Referenced by bookForId(), CSCAFEBThrAnalysis(), and done().

std::map<int, TH2*> CSCAFEBThrAnalysis::mh_FirstTime [private]

Definition at line 61 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), bookForId(), and CSCAFEBThrAnalysis().

Statistics.

Definition at line 34 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), CSCAFEBThrAnalysis(), and done().

Definition at line 35 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), CSCAFEBThrAnalysis(), and done().

DAC info.

Definition at line 38 of file CSCAFEBThrAnalysis.h.

Referenced by CSCAFEBThrAnalysis(), and done().

Definition at line 43 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), and CSCAFEBThrAnalysis().

std::vector<float> CSCAFEBThrAnalysis::vecDac [private]

Definition at line 44 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), CSCAFEBThrAnalysis(), and done().

std::vector<int> CSCAFEBThrAnalysis::vecDacOccup [private]

Definition at line 45 of file CSCAFEBThrAnalysis.h.

Referenced by analyze(), CSCAFEBThrAnalysis(), and done().