#include <MELaserPrim.h>
Public Types | |
enum | { iAPD, iAPDoPN, iAPDoPNA, iAPDoPNB, iAPDoAPD, iAPDoAPDA, iAPDoAPDB, iTime, iSizeArray_apdpn } |
enum | { iMean, iRMS, iM3, iNevt, iMin, iMax, iSize_apdpn } |
enum | { iShapeCor, iSizeExtra_apdpn } |
enum | { iAlpha, iBeta, iWidth, iChi2, iSize_ab } |
enum | { iPeak, iSigma, iFit, iAmpl, iTrise, iFwhm, iFw20, iFw80, iSlide, iSize_mtq } |
enum | { iGain0, iGain1, iGain2, iGain3, iSize_gain } |
enum | { iECAL, iECAL_LMR, iEB_crystal_number, iEB_LM_LMM, iEB_LM_PN, iEE_crystal_number, iEE_LM_LMM, iEE_LM_PN, iSize_cv } |
Public Member Functions | |
void | bookHistograms () |
bool | fill (const char *tname) |
void | fillHistograms () |
Int_t | getInt (const char *, int ix, int iy) |
Float_t | getVal (const char *, int ix, int iy) |
void | init () |
MELaserPrim (ME::Header header, ME::Settings settings, const char *inpath, const char *outfile) | |
void | print (std::ostream &o) |
bool | setInt (const char *, int ix, int iy, int ival) |
bool | setInt (const char *tname, const char *vname, int ival) |
bool | setVal (const char *tname, const char *vname, float val) |
bool | setVal (const char *, int ix, int iy, float val) |
void | writeHistograms () |
virtual | ~MELaserPrim () |
Static Public Member Functions | |
static TString | channelViewName (int) |
static bool | getViewIds (int logicId, int &channelView, int &id1, int &id2) |
static TString | lmfLaserName (int table, int type, int color=ME::iBlue) |
static int | logicId (int channelView, int id1, int id2=0) |
Public Attributes | |
bool | init_ok |
Static Public Attributes | |
static TString | separator = "__" |
Private Member Functions | |
void | addBranchC (const char *t_name, const char *v_name) |
void | addBranchF (const char *t_name, const char *v_name) |
void | addBranchI (const char *t_name, const char *v_name) |
void | bookHistoF (const char *t_name, const char *v_name) |
void | bookHistoI (const char *t_name, const char *v_name) |
void | refresh () |
void | setHistoStyle (TH1 *) |
Private Attributes | |
int | _color |
int | _dcc |
int | _delay |
int | _ecal_region |
int | _events |
int | _filter |
TString | _inpath |
bool | _isBarrel |
int | _lb |
int | _lmr |
int | _memgain |
int | _mgpagain |
TString | _outfile |
TString | _pnPrimStr |
int | _power |
TString | _primStr |
TString | _pulseStr |
int | _reg |
TString | _regionStr |
int | _run |
TString | _sectorStr |
int | _side |
int | _sm |
TString | _tpPnPrimStr |
TString | _tpPrimStr |
ME::TimeStamp | _ts |
ME::TimeStamp | _ts_beg |
ME::TimeStamp | _ts_end |
int | _type |
Double_t | ab_ab [iSize_ab] |
Int_t | ab_channelID |
Int_t | ab_dccID |
TFile * | ab_file |
Int_t | ab_flag |
Int_t | ab_ieta |
Int_t | ab_iphi |
Int_t | ab_towerID |
TTree * | ab_tree |
Double_t | apdpn_apdpn [iSizeArray_apdpn][iSize_apdpn] |
Int_t | apdpn_channelID |
Int_t | apdpn_dccID |
TFile * | apdpn_file |
Int_t | apdpn_flag |
Int_t | apdpn_ieta |
Int_t | apdpn_iphi |
Int_t | apdpn_moduleID |
Double_t | apdpn_ShapeCor |
Int_t | apdpn_side |
Int_t | apdpn_towerID |
TTree * | apdpn_tree |
TBranch * | b_ab_ab [iSize_ab] |
TBranch * | b_ab_channelID |
TBranch * | b_ab_dccID |
TBranch * | b_ab_flag |
TBranch * | b_ab_ieta |
TBranch * | b_ab_iphi |
TBranch * | b_ab_towerID |
TBranch * | b_apdpn_apdpn [iSizeArray_apdpn] |
TBranch * | b_apdpn_channelID |
TBranch * | b_apdpn_dccID |
TBranch * | b_apdpn_flag |
TBranch * | b_apdpn_ieta |
TBranch * | b_apdpn_iphi |
TBranch * | b_apdpn_moduleID |
TBranch * | b_apdpn_ShapeCor |
TBranch * | b_apdpn_side |
TBranch * | b_apdpn_towerID |
TBranch * | b_mtq_color |
TBranch * | b_mtq_mtq [iSize_mtq] |
TBranch * | b_mtq_side |
TBranch * | b_pn_moduleID |
TBranch * | b_pn_PN |
TBranch * | b_pn_pnID |
TBranch * | b_pn_PNoPN |
TBranch * | b_pn_PNoPNA |
TBranch * | b_pn_PNoPNB |
TBranch * | b_pn_side |
TBranch * | b_tpapd_APD |
TBranch * | b_tpapd_channelID |
TBranch * | b_tpapd_dccID |
TBranch * | b_tpapd_flag |
TBranch * | b_tpapd_gain |
TBranch * | b_tpapd_ieta |
TBranch * | b_tpapd_iphi |
TBranch * | b_tpapd_moduleID |
TBranch * | b_tpapd_side |
TBranch * | b_tpapd_towerID |
TBranch * | b_tppn_gain |
TBranch * | b_tppn_moduleID |
TBranch * | b_tppn_PN |
TBranch * | b_tppn_pnID |
TBranch * | b_tppn_side |
std::map< TString, const char * > | c_t |
std::map< TString, TH2 * > | f_h |
std::map< TString, float > | f_t |
std::map< TString, TH2 * > | i_h |
std::map< TString, int > | i_t |
int | ixmax |
int | ixmin |
int | iymax |
int | iymin |
Int_t | mtq_color |
TFile * | mtq_file |
Double_t | mtq_mtq [iSize_mtq] |
Int_t | mtq_side |
TTree * | mtq_tree |
int | nx |
int | ny |
TFile * | out_file |
TFile * | pn_file |
Int_t | pn_moduleID |
Double_t | pn_PN [iSize_apdpn] |
Int_t | pn_pnID |
Double_t | pn_PNoPN [iSize_apdpn] |
Double_t | pn_PNoPNA [iSize_apdpn] |
Double_t | pn_PNoPNB [iSize_apdpn] |
Int_t | pn_side |
TTree * | pn_tree |
std::map< TString, TTree * > | t_t |
Double_t | tpapd_APD [iSize_apdpn] |
Int_t | tpapd_channelID |
Int_t | tpapd_dccID |
TFile * | tpapd_file |
Int_t | tpapd_flag |
Int_t | tpapd_gain |
Int_t | tpapd_ieta |
Int_t | tpapd_iphi |
Int_t | tpapd_moduleID |
Int_t | tpapd_side |
Int_t | tpapd_towerID |
TTree * | tpapd_tree |
Int_t | tppn_gain |
Int_t | tppn_moduleID |
Double_t | tppn_PN [iSize_apdpn] |
Int_t | tppn_pnID |
Int_t | tppn_side |
TTree * | tppn_tree |
Static Private Attributes | |
static TString | ab_varName [iSize_ab] = { "alpha", "beta", "width", "chi2" } |
static TString | apdpn_arrayName [iSizeArray_apdpn] = {"APD", "APDoPN", "APDoPNA", "APDoPNB","APDoAPD","APDoAPDA", "APDoAPDB", "Time"} |
static TString | apdpn_extraVarName [iSizeExtra_apdpn] = { "ShapeCor" } |
static TString | apdpn_extraVarUnit [iSizeExtra_apdpn] = { "" } |
static TString | apdpn_varName [iSize_apdpn] = { "Mean", "RMS", "M3", "Nevt", "Min", "Max"} |
static TString | apdpn_varUnit [iSizeArray_apdpn][iSize_apdpn] |
static TString | mtq_varName [iSize_mtq] = {"peak", "sigma", "fit", "ampl", "trise", "fwhm", "fw20", "fw80", "sliding" } |
static TString | mtq_varUnit [iSize_mtq] |
Definition at line 18 of file MELaserPrim.h.
anonymous enum |
Definition at line 25 of file MELaserPrim.h.
anonymous enum |
Definition at line 26 of file MELaserPrim.h.
{ iShapeCor, iSizeExtra_apdpn };
anonymous enum |
anonymous enum |
anonymous enum |
Definition at line 29 of file MELaserPrim.h.
{ iGain0, iGain1, iGain2, iGain3, iSize_gain };
anonymous enum |
Definition at line 31 of file MELaserPrim.h.
anonymous enum |
iECAL | |
iECAL_LMR | |
iEB_crystal_number | |
iEB_LM_LMM | |
iEB_LM_PN | |
iEE_crystal_number | |
iEE_LM_LMM | |
iEE_LM_PN | |
iSize_cv |
Definition at line 34 of file MELaserPrim.h.
MELaserPrim::MELaserPrim | ( | ME::Header | header, |
ME::Settings | settings, | ||
const char * | inpath, | ||
const char * | outfile | ||
) |
Definition at line 32 of file MELaserPrim.cc.
References _color, _dcc, _delay, _events, _filter, _isBarrel, _lb, _lmr, _memgain, _mgpagain, _pnPrimStr, _power, _primStr, _pulseStr, _reg, _regionStr, _run, _sectorStr, _side, _sm, _tpPnPrimStr, _tpPrimStr, _ts, _ts_beg, _ts_end, _type, ab_file, ab_tree, apdpn_file, apdpn_tree, bookHistograms(), ME::iEBM, ME::iEBP, ME::iLaser, ME::iLmfLaserPnPrim, ME::iLmfLaserPrim, ME::iLmfLaserPulse, ME::iLmfTestPulsePnPrim, ME::iLmfTestPulsePrim, init(), ME::iTestPulse, ixmax, ixmin, iymax, iymin, lmfLaserName(), ME::lmr(), mtq_file, mtq_tree, pn_tree, ME::regionAndSector(), separator, ME::smName(), tpapd_file, tpapd_tree, and tppn_tree.
: init_ok(false), _isBarrel(true), _inpath(inpath), _outfile(outfile) { apdpn_file =0; ab_file =0; mtq_file =0; tpapd_file =0; apdpn_tree =0; ab_tree =0; pn_tree =0; mtq_tree =0; tpapd_tree =0; tppn_tree =0; ixmin =0; ixmax =0; iymin =0; iymax =0; _dcc = header.dcc; _side = header.side; _run = header.run; _lb = header.lb; _events = header.events; _ts = header.ts_beg; _ts_beg = header.ts_beg; _ts_end = header.ts_end; _type = settings.type; _color = settings.wavelength; _power = settings.power; _filter = settings.filter; _delay = settings.delay; _mgpagain = settings.mgpagain; _memgain = settings.memgain; if( _type==ME::iLaser ) { _primStr = lmfLaserName( ME::iLmfLaserPrim, _type, _color )+separator; _pnPrimStr = lmfLaserName( ME::iLmfLaserPnPrim, _type, _color )+separator; _pulseStr = lmfLaserName( ME::iLmfLaserPulse, _type, _color )+separator; } else if( _type==ME::iTestPulse ) { _tpPrimStr = lmfLaserName( ME::iLmfTestPulsePrim, _type )+separator; _tpPnPrimStr = lmfLaserName( ME::iLmfTestPulsePnPrim, _type )+separator; } _lmr = ME::lmr( _dcc, _side ); ME::regionAndSector( _lmr, _reg, _sm, _dcc, _side ); _isBarrel = (_reg==ME::iEBM || _reg==ME::iEBP); _sectorStr = ME::smName( _lmr ); _regionStr = _sectorStr; _regionStr += "_"; _regionStr += _side; init(); bookHistograms(); //fillHistograms(); //writeHistograms(); }
MELaserPrim::~MELaserPrim | ( | ) | [virtual] |
Definition at line 967 of file MELaserPrim.cc.
References ab_file, ab_tree, apdpn_file, apdpn_tree, mtq_file, mtq_tree, pn_tree, tpapd_file, tpapd_tree, and tppn_tree.
{ delete apdpn_tree; delete ab_tree; delete pn_tree; delete mtq_tree; delete tpapd_tree; delete tppn_tree; if( apdpn_file!=0 ) { // std::cout << "Closing apdpn_file " << std::endl; apdpn_file->Close(); delete apdpn_file; apdpn_file = 0; } if( ab_file!=0 ) { // std::cout << "Closing ab_file " << std::endl; ab_file->Close(); delete ab_file; ab_file = 0; } if( mtq_file!=0 ) { // std::cout << "Closing mtq_file " << std::endl; mtq_file->Close(); delete mtq_file; mtq_file = 0; } if( tpapd_file!=0 ) { // std::cout << "Closing tpapd_file " << std::endl; tpapd_file->Close(); delete tpapd_file; tpapd_file = 0; } }
void MELaserPrim::addBranchC | ( | const char * | t_name, |
const char * | v_name | ||
) | [private] |
Definition at line 1090 of file MELaserPrim.cc.
References c_t, separator, and t_t.
Referenced by bookHistograms().
void MELaserPrim::addBranchF | ( | const char * | t_name, |
const char * | v_name | ||
) | [private] |
Definition at line 1080 of file MELaserPrim.cc.
References f_t, separator, and t_t.
Referenced by bookHistograms().
void MELaserPrim::addBranchI | ( | const char * | t_name, |
const char * | v_name | ||
) | [private] |
Definition at line 1070 of file MELaserPrim.cc.
References i_t, separator, and t_t.
Referenced by bookHistograms().
void MELaserPrim::bookHistoF | ( | const char * | t_name, |
const char * | v_name | ||
) | [private] |
Definition at line 1109 of file MELaserPrim.cc.
References f_h, ixmax, ixmin, iymax, iymin, nx, ny, and setHistoStyle().
Referenced by bookHistograms().
void MELaserPrim::bookHistograms | ( | ) |
Definition at line 326 of file MELaserPrim.cc.
References _color, _isBarrel, _primStr, _tpPrimStr, _type, addBranchC(), addBranchF(), addBranchI(), bookHistoF(), bookHistoI(), ME::iLaser, ME::iLmfLaserConfig, ME::iLmfLaserPnPrim, ME::iLmfLaserPulse, ME::iLmfTestPulseConfig, ME::iLmfTestPulsePnPrim, init_ok, ME::iTestPulse, ixmax, ixmin, iymax, iymin, lmfLaserName(), nx, ny, and refresh().
Referenced by MELaserPrim().
{ if( !init_ok ) return; refresh(); TString i_name, d_name; if( _isBarrel ) { ixmin=0; ixmax=85; nx =ixmax-ixmin; iymin=0; iymax=20; ny =iymax-iymin; // for( int ilmod=1; ilmod<=9; ilmod++ ) // { // _pn[ilmod] = MEEBGeom::pn( ilmod ); // } } else // fixme --- to be implemented { ixmin=1; ixmax=101; nx =ixmax-ixmin; iymin=1; iymax=101; ny =iymax-iymin; // for( int ilmod=1; ilmod<=21; ilmod++ ) // modules 20 and 21 are fake... // { // _pn[ilmod] = MEEEGeom::pn( ilmod ); // } // abort(); } TString t_name; // // Laser Run // t_name = "LMF_RUN_DAT"; addBranchI( t_name, "LOGIC_ID" ); addBranchI( t_name, "NEVENTS" ); addBranchI( t_name, "QUALITY_FLAG" ); // // Laser Run IOV // t_name = "LMF_RUN_IOV"; addBranchI( t_name, "TAG_ID" ); addBranchI( t_name, "SUB_RUN_NUM" ); addBranchI( t_name, "SUB_RUN_START_LOW" ); addBranchI( t_name, "SUB_RUN_START_HIGH" ); addBranchI( t_name, "SUB_RUN_END_LOW" ); addBranchI( t_name, "SUB_RUN_END_HIGH" ); addBranchI( t_name, "DB_TIMESTAMP_LOW" ); addBranchI( t_name, "DB_TIMESTAMP_HIGH" ); addBranchC( t_name, "SUB_RUN_TYPE" ); if( _type==ME::iLaser ) { // // Laser ADC Primitives // bookHistoI( _primStr, "LOGIC_ID" ); bookHistoI( _primStr, "FLAG" ); bookHistoF( _primStr, "MEAN" ); bookHistoF( _primStr, "RMS" ); bookHistoF( _primStr, "M3" ); bookHistoF( _primStr, "APD_OVER_PNA_MEAN" ); bookHistoF( _primStr, "APD_OVER_PNA_RMS" ); bookHistoF( _primStr, "APD_OVER_PNA_M3" ); bookHistoF( _primStr, "APD_OVER_PNB_MEAN" ); bookHistoF( _primStr, "APD_OVER_PNB_RMS" ); bookHistoF( _primStr, "APD_OVER_PNB_M3" ); bookHistoF( _primStr, "APD_OVER_PN_MEAN" ); bookHistoF( _primStr, "APD_OVER_PN_RMS" ); bookHistoF( _primStr, "APD_OVER_PN_M3" ); bookHistoF( _primStr, "APD_OVER_APDA_MEAN" ); bookHistoF( _primStr, "APD_OVER_APDA_RMS" ); bookHistoF( _primStr, "APD_OVER_APDA_M3" ); bookHistoF( _primStr, "APD_OVER_APDB_MEAN" ); bookHistoF( _primStr, "APD_OVER_APDB_RMS" ); bookHistoF( _primStr, "APD_OVER_APDB_M3" ); bookHistoF( _primStr, "SHAPE_COR" ); bookHistoF( _primStr, "ALPHA" ); bookHistoF( _primStr, "BETA" ); // NEW GHM 08/06 --> SCHEMA MODIFIED? bookHistoF( _primStr, "TIME_MEAN" ); bookHistoF( _primStr, "TIME_RMS" ); bookHistoF( _primStr, "TIME_M3" ); bookHistoF( _primStr, "TIME_NEVT" ); // // Laser PN Primitives // t_name = lmfLaserName( ME::iLmfLaserPnPrim, _type, _color ); addBranchI( t_name, "LOGIC_ID" ); addBranchI( t_name, "FLAG" ); addBranchF( t_name, "MEAN" ); addBranchF( t_name, "RMS" ); addBranchF( t_name, "M3" ); addBranchF( t_name, "PNA_OVER_PNB_MEAN" ); addBranchF( t_name, "PNA_OVER_PNB_RMS" ); addBranchF( t_name, "PNA_OVER_PNB_M3" ); // // Laser Pulse // t_name = lmfLaserName( ME::iLmfLaserPulse, _type, _color ); addBranchI( t_name, "LOGIC_ID" ); addBranchI( t_name, "FIT_METHOD" ); addBranchF( t_name, "MTQ_AMPL" ); addBranchF( t_name, "MTQ_TIME" ); addBranchF( t_name, "MTQ_RISE" ); addBranchF( t_name, "MTQ_FWHM" ); addBranchF( t_name, "MTQ_FW20" ); addBranchF( t_name, "MTQ_FW80" ); addBranchF( t_name, "MTQ_SLIDING" ); // // Laser Config // t_name = lmfLaserName( ME::iLmfLaserConfig, _type ); addBranchI( t_name, "LOGIC_ID" ); addBranchI( t_name, "WAVELENGTH" ); addBranchI( t_name, "VFE_GAIN" ); addBranchI( t_name, "PN_GAIN" ); addBranchI( t_name, "LSR_POWER" ); addBranchI( t_name, "LSR_ATTENUATOR" ); addBranchI( t_name, "LSR_CURRENT" ); addBranchI( t_name, "LSR_DELAY_1" ); addBranchI( t_name, "LSR_DELAY_2" ); // // Laser LaserRun config dat // t_name = "RUN_LASERRUN_CONFIG_DAT"; addBranchI( t_name, "LOGIC_ID" ); addBranchC( t_name, "LASER_SEQUENCE_TYPE" ); addBranchC( t_name, "LASER_SEQUENCE_COND" ); } else if( _type==ME::iTestPulse ) { // // Test Pulse ADC Primitives // bookHistoI( _tpPrimStr, "LOGIC_ID" ); bookHistoI( _tpPrimStr, "FLAG" ); bookHistoF( _tpPrimStr, "MEAN" ); bookHistoF( _tpPrimStr, "RMS" ); bookHistoF( _tpPrimStr, "M3" ); bookHistoF( _tpPrimStr, "NEVT" ); // // Test Pulse PN Primitives // t_name = lmfLaserName( ME::iLmfTestPulsePnPrim, _type ); addBranchI( t_name, "LOGIC_ID" ); addBranchI( t_name, "FLAG" ); addBranchI( t_name, "GAIN" ); addBranchF( t_name, "MEAN" ); addBranchF( t_name, "RMS" ); addBranchF( t_name, "M3" ); // // Test Pulse Config // t_name = lmfLaserName( ME::iLmfTestPulseConfig, _type ); addBranchI( t_name, "LOGIC_ID" ); addBranchI( t_name, "VFE_GAIN" ); addBranchI( t_name, "PN_GAIN" ); } }
void MELaserPrim::bookHistoI | ( | const char * | t_name, |
const char * | v_name | ||
) | [private] |
Definition at line 1100 of file MELaserPrim.cc.
References i_h, ixmax, ixmin, iymax, iymin, nx, ny, and setHistoStyle().
Referenced by bookHistograms().
TString MELaserPrim::channelViewName | ( | int | iname | ) | [static] |
Definition at line 94 of file MELaserPrim.cc.
References iEB_crystal_number, iEB_LM_LMM, iEB_LM_PN, iECAL, iECAL_LMR, iEE_crystal_number, iEE_LM_LMM, and iEE_LM_PN.
{ switch( iname ) { case iECAL: return "ECAL"; case iECAL_LMR: return "ECAL_LMR"; case iEB_crystal_number: return "EB_crystal_number"; case iEB_LM_LMM: return "EB_LM_LMM"; case iEB_LM_PN: return "EB_LM_PN"; case iEE_crystal_number: return "EE_crystal_number"; case iEE_LM_LMM: return "EE_LM_LMM"; case iEE_LM_PN: return "EE_LM_PN"; default: abort(); } return ""; }
bool MELaserPrim::fill | ( | const char * | tname | ) |
Definition at line 1210 of file MELaserPrim.cc.
References HcalObjRepresent::Fill(), and t_t.
void MELaserPrim::fillHistograms | ( | ) |
Definition at line 504 of file MELaserPrim.cc.
References _color, _delay, _events, _filter, _isBarrel, _lmr, _memgain, _mgpagain, _power, _run, _side, _sm, _ts, _ts_beg, _ts_end, _type, ab_ab, ab_tree, apdpn_apdpn, apdpn_flag, apdpn_ieta, apdpn_iphi, apdpn_ShapeCor, apdpn_side, apdpn_tree, c_t, MEEBGeom::crystal_channel(), MEEEGeom::dee(), f_t, i_t, iAlpha, iAmpl, iAPD, iAPDoAPDA, iAPDoAPDB, iAPDoPN, iAPDoPNA, iAPDoPNB, iBeta, iEB_crystal_number, iEB_LM_PN, iECAL_LMR, iEE_crystal_number, iEE_LM_PN, iFw20, iFw80, iFwhm, ME::iLaser, ME::iLmfLaserConfig, ME::iLmfLaserPnPrim, ME::iLmfLaserPulse, ME::iLmfLaserRun, iM3, iMean, iNevt, init_ok, iPeak, iRMS, iSlide, ME::iTestPulse, iTime, iTrise, lmfLaserName(), MEEBGeom::localCoord(), logicId(), sistrip::module_, mtq_mtq, mtq_side, mtq_tree, ME::pn(), pn_moduleID, pn_PN, pn_pnID, pn_PNoPNA, pn_PNoPNB, pn_side, pn_tree, separator, setInt(), setVal(), t_t, ME::time_high(), and ME::time_low().
{ TString t_name; if( !init_ok ) return; Long64_t nb = 0; Long64_t nentries = 0; Long64_t ientry = 0; int channelView_(0); int id1_(0), id2_(0); int logic_id_(0); if( _type==ME::iLaser ) { nentries = apdpn_tree->GetEntriesFast(); for( Long64_t jentry=0; jentry<nentries; jentry++ ) { ientry = apdpn_tree->LoadTree( jentry ); assert( ientry>=0 ); nb = apdpn_tree->GetEntry( jentry ); if(ab_tree){ ientry = ab_tree->LoadTree( jentry ); assert( ientry>=0 ); nb = ab_tree->GetEntry( jentry ); } if( apdpn_iphi<0 ) continue; // fixme remove until coordinated are fine //if(ab_tree) assert( apdpn_ieta==ab_ieta && apdpn_iphi==ab_iphi ); int ix(0); int iy(0); if( _isBarrel ) { // Barrel, global coordinates id1_ = _sm; if ( apdpn_side != _side ) continue; int ieta=apdpn_ieta; int iphi=apdpn_iphi; MEEBGeom::XYCoord xy_ = MEEBGeom::localCoord( ieta, iphi ); ix = xy_.first; iy = xy_.second; id2_ = MEEBGeom::crystal_channel( ix, iy ); channelView_ = iEB_crystal_number; } else { // EndCaps, global coordinates id1_ = apdpn_iphi; id2_ = apdpn_ieta; ix = id1_; iy = id2_; channelView_ = iEE_crystal_number; } logic_id_ = logicId( channelView_, id1_, id2_ ); int flag = apdpn_flag; setInt( "LOGIC_ID", ix, iy, logic_id_ ); setInt( "FLAG", ix, iy, flag ); setVal( "MEAN", ix, iy, apdpn_apdpn[iAPD][iMean] ); setVal( "RMS", ix, iy, apdpn_apdpn[iAPD][iRMS] ); setVal( "M3", ix, iy, apdpn_apdpn[iAPD][iM3] ); // fixme --- peak? setVal( "APD_OVER_PNA_MEAN", ix, iy, apdpn_apdpn[iAPDoPNA][iMean] ); setVal( "APD_OVER_PNA_RMS", ix, iy, apdpn_apdpn[iAPDoPNA][iRMS] ); setVal( "APD_OVER_PNA_M3", ix, iy, apdpn_apdpn[iAPDoPNA][iM3] ); // fixme setVal( "APD_OVER_PNB_MEAN", ix, iy, apdpn_apdpn[iAPDoPNB][iMean] ); setVal( "APD_OVER_PNB_RMS", ix, iy, apdpn_apdpn[iAPDoPNB][iRMS] ); setVal( "APD_OVER_PNB_M3", ix, iy, apdpn_apdpn[iAPDoPNB][iM3] ); // fixme setVal( "APD_OVER_PN_MEAN", ix, iy, apdpn_apdpn[iAPDoPN][iMean] ); setVal( "APD_OVER_PN_RMS", ix, iy, apdpn_apdpn[iAPDoPN][iRMS] ); setVal( "APD_OVER_PN_M3", ix, iy, apdpn_apdpn[iAPDoPN][iM3] ); // fixme // JM setVal( "APD_OVER_APD_MEAN", ix, iy, apdpn_apdpn[iAPDoAPDA][iMean] ); setVal( "APD_OVER_APD_RMS", ix, iy, apdpn_apdpn[iAPDoAPDA][iRMS] ); setVal( "APD_OVER_APD_M3", ix, iy, apdpn_apdpn[iAPDoAPDA][iM3] ); // fixme setVal( "APD_OVER_APDA_MEAN", ix, iy, apdpn_apdpn[iAPDoAPDA][iMean] ); setVal( "APD_OVER_APDA_RMS", ix, iy, apdpn_apdpn[iAPDoAPDA][iRMS] ); setVal( "APD_OVER_APDA_M3", ix, iy, apdpn_apdpn[iAPDoAPDA][iM3] ); // fixme setVal( "APD_OVER_APDB_MEAN", ix, iy, apdpn_apdpn[iAPDoAPDB][iMean] ); setVal( "APD_OVER_APDB_RMS", ix, iy, apdpn_apdpn[iAPDoAPDB][iRMS] ); setVal( "APD_OVER_APDB_M3", ix, iy, apdpn_apdpn[iAPDoAPDB][iM3] ); // fixme // JM setVal( "SHAPE_COR", ix, iy, apdpn_ShapeCor ); if(ab_tree){ setVal( "ALPHA", ix, iy, ab_ab[iAlpha] ); setVal( "BETA", ix, iy, ab_ab[iBeta] ); }else{ setVal( "ALPHA", ix, iy, 0. ); setVal( "BETA", ix, iy, 0. ); } // NEW GHM 08/06 setVal( "TIME_MEAN", ix, iy, apdpn_apdpn[iTime][iMean] ); setVal( "TIME_RMS", ix, iy, apdpn_apdpn[iTime][iRMS] ); setVal( "TIME_M3", ix, iy, apdpn_apdpn[iTime][iM3] ); setVal( "TIME_NEVT", ix, iy, apdpn_apdpn[iTime][iNevt] ); } // // PN primitives // t_name = lmfLaserName( ME::iLmfLaserPnPrim, _type, _color ); nentries = pn_tree->GetEntriesFast(); assert( nentries%2==0 ); int module_(0); id1_=_sm; id2_=0; Long64_t jentry=0; while( jentry<nentries ) { for( int jj=0; jj<2; jj++ ) { // jj=0 --> PNA // jj=1 --> PNB int zentry = jentry+jj; assert( zentry<nentries ); ientry = pn_tree->LoadTree( zentry ); assert( ientry>=0 ); nb = pn_tree->GetEntry( zentry ); if( _side!=pn_side ) break; if( jj==1 ) assert( pn_moduleID==module_ ); module_ = pn_moduleID; assert( pn_pnID==jj ); // get the PN number std::pair<int,int> memPn_ = ME::pn( _lmr, module_, (ME::PN)jj ); if( _isBarrel ) { // assert( memPn_.first%600==_dcc%600 ); id1_ = _sm; id2_ = memPn_.second; } else { int dee_ = MEEEGeom::dee( _lmr ); // int mem_ = memPn_.first%600; // if( dee_==1 ) // { // if( jj==ME::iPNA ) assert( mem_==50 ); // else assert( mem_==51 ); // } // else if( dee_==2 ) // { // if( jj==ME::iPNA ) assert( mem_==47 ); // warning ! // else assert( mem_==46 ); // // assert( mem_==46 || mem_==47 ); // } // else if( dee_==3 ) // { // if( jj==ME::iPNA ) assert( mem_==1 ); // else assert( mem_==2 ); // } // else if( dee_==4 ) // { // if( jj==ME::iPNA ) assert( mem_==5 ); // else assert( mem_==6 ); // } id1_ = dee_; id2_ = (jj+1)*100+memPn_.second; } if( _isBarrel ) { channelView_ = iEB_LM_PN; } else { channelView_ = iEE_LM_PN; } logic_id_ = logicId( channelView_, id1_, id2_ ); i_t[t_name+separator+"LOGIC_ID"] = logic_id_; f_t[t_name+separator+"MEAN"] = pn_PN[iMean]; f_t[t_name+separator+"RMS"] = pn_PN[iRMS]; f_t[t_name+separator+"M3"] = pn_PN[iM3]; f_t[t_name+separator+"PNA_OVER_PNB_MEAN"] = (jj==0) ? pn_PNoPNB[iMean] : pn_PNoPNA[iMean]; f_t[t_name+separator+"PNA_OVER_PNB_RMS" ] = (jj==0) ? pn_PNoPNB[iRMS] : pn_PNoPNA[iRMS]; f_t[t_name+separator+"PNA_OVER_PNB_M3"] = (jj==0) ? pn_PNoPNB[iM3] : pn_PNoPNA[iM3]; t_t[t_name]->Fill(); } // std::cout << "Module=" << module_ << "\tPNA=" << pn_[0] << "\tPNB=" << pn_[1] << std::endl; // if( _isBarrel ) // jentry += 4; // else // jentry += 2; jentry += 2; } logic_id_ = logicId( iECAL_LMR, _lmr ); // // MATACQ primitives // if(mtq_tree){ t_name = lmfLaserName( ME::iLmfLaserPulse, _type, _color ); nentries = mtq_tree->GetEntriesFast(); assert( nentries==2 ); for( Long64_t jentry=0; jentry<nentries; jentry++ ) { ientry = mtq_tree->LoadTree( jentry ); assert( ientry>=0 ); nb = mtq_tree->GetEntry( jentry ); if ( mtq_side != _side ) continue; i_t[t_name+separator+"LOGIC_ID"] = logic_id_; i_t[t_name+separator+"FIT_METHOD"] = 0 ; // fixme --- what's this? ? ? f_t[t_name+separator+"MTQ_AMPL"] = mtq_mtq[iAmpl]; f_t[t_name+separator+"MTQ_TIME"] = mtq_mtq[iPeak]; f_t[t_name+separator+"MTQ_RISE"] = mtq_mtq[iTrise]; f_t[t_name+separator+"MTQ_FWHM"] = mtq_mtq[iFwhm]; f_t[t_name+separator+"MTQ_FW20"] = mtq_mtq[iFw20]; f_t[t_name+separator+"MTQ_FW80"] = mtq_mtq[iFw80]; f_t[t_name+separator+"MTQ_SLIDING"] = mtq_mtq[iSlide]; // fixme --- sliding: max of average in sliding window t_t[t_name]->Fill(); } }else{ t_name = lmfLaserName( ME::iLmfLaserPulse, _type, _color ); i_t[t_name+separator+"LOGIC_ID"] = logic_id_; i_t[t_name+separator+"FIT_METHOD"] = 0 ; // fixme f_t[t_name+separator+"MTQ_AMPL"] = 0.0; f_t[t_name+separator+"MTQ_TIME"] = 0.0; f_t[t_name+separator+"MTQ_RISE"] = 0.0; f_t[t_name+separator+"MTQ_FWHM"] = 0.0; f_t[t_name+separator+"MTQ_FW20"] = 0.0; f_t[t_name+separator+"MTQ_FW80"] = 0.0; f_t[t_name+separator+"MTQ_SLIDING"] = 0.0; t_t[t_name]->Fill(); } // // Laser Run // t_name = lmfLaserName( ME::iLmfLaserRun, _type ); //std::cout << "Fill "<< t_name << std::endl; i_t[t_name+separator+"LOGIC_ID"] = logic_id_; i_t[t_name+separator+"NEVENTS"] = _events; i_t[t_name+separator+"QUALITY_FLAG"] = 1; // fixme t_t[t_name]->Fill(); // // Laser Config // t_name = lmfLaserName( ME::iLmfLaserConfig, _type ); //std::cout << "Fill "<< t_name << std::endl; i_t[t_name+separator+"LOGIC_ID"] = logic_id_; i_t[t_name+separator+"WAVELENGTH"] = _color; i_t[t_name+separator+"VFE_GAIN"] = _mgpagain; // fixme i_t[t_name+separator+"PN_GAIN"] = _memgain; // fixme i_t[t_name+separator+"LSR_POWER"] = _power; // will be available from MATACQ data i_t[t_name+separator+"LSR_ATTENUATOR"] = _filter; // idem i_t[t_name+separator+"LSR_CURRENT"] = 0; // idem i_t[t_name+separator+"LSR_DELAY_1"] = _delay; // idem i_t[t_name+separator+"LSR_DELAY_2"] = 0; // idem t_t[t_name]->Fill(); } else if( _type==ME::iTestPulse ) { // nentries = tpapd_tree->GetEntriesFast(); // for( Long64_t jentry=0; jentry<nentries; jentry++ ) // { // ientry = tpapd_tree->LoadTree( jentry ); // assert( ientry>=0 ); // nb = tpapd_tree->GetEntry( jentry ); // if( tpapd_iphi<0 ) continue; // const bool new_= true; // int ix; // int iy; // int id2; // if( new_ ) // { // // for Cruzet3 , global coordinates // if ( tpapd_side != _side ) continue; // int ieta=tpapd_ieta; // int iphi=tpapd_iphi; // MEEBGeom::XYCoord xy_ = MEEBGeom::localCoord( ieta, iphi ); // ix = xy_.first; // iy = xy_.second; // id2 = ix*20 + iy; // !!! TO BE CHECKED !!! // } // else // { // // for Cruzet2 , local coordinates // ix = tpapd_ieta; // iy = 19-tpapd_iphi; // id2 = ix*20 + (20 - iy); // !!! TO BE CHECKED !!! // } // // // int id1 = _sm; // fixme --- this is for barrel // int logic_id_ = 1011000000; // fixme // logic_id_ += 10000*id1 + id2; // int flag = tpapd_flag; // setInt( "LOGIC_ID", ix, iy, logic_id_ ); // setInt( "FLAG", ix, iy, flag ); // setVal( "MEAN", ix, iy, tpapd_APD[iMean] ); // setVal( "RMS", ix, iy, tpapd_APD[iRMS] ); // setVal( "M3", ix, iy, tpapd_APD[iM3] ); // setVal( "NEVT", ix, iy, tpapd_APD[iNevt] ); // } // // // // PN primitives // // // t_name = lmfLaserName( ME::iLmfTestPulsePnPrim, _type ); // nentries = tppn_tree->GetEntriesFast(); // assert( nentries%2==0 ); // int module_, pn_[2]; // int id1_(_sm), id2_(0); // int logic_id_(0); // Long64_t jentry=0; // if( _side==1 ) jentry+=2; // fixme : true also for endcaps? // while( jentry<nentries ) // { // for( int jj=0; jj<2; jj++ ) // { // // jj=0 --> PNA // // jj=1 --> PNB // int zentry = jentry+jj; // assert( zentry<nentries ); // ientry = tppn_tree->LoadTree( zentry ); // assert( ientry>=0 ); // nb = tppn_tree->GetEntry( zentry ); // if( jj==1 ) assert( tppn_moduleID==module_ ); // module_ = tppn_moduleID; // assert( tppn_pnID==jj ); // pn_[jj] = ( jj==0 ) ? _pn[module_].first : _pn[module_].second; // id2_ = pn_[jj]; // logic_id_ = 1131000000 ; // // logic_id_ = 0; // fixme // logic_id_ += 10000*id1_ + id2_; // i_t[t_name+separator+"LOGIC_ID"] = logic_id_; // i_t[t_name+separator+"GAIN"] = tppn_gain; // f_t[t_name+separator+"MEAN"] = tppn_PN[iMean]; // f_t[t_name+separator+"RMS"] = tppn_PN[iRMS]; // f_t[t_name+separator+"M3"] = tppn_PN[iM3]; // fixme --- peak? // t_t[t_name]->Fill(); // } // // std::cout << "Module=" << module_ << "\tPNA=" << pn_[0] << "\tPNB=" << pn_[1] << std::endl; // jentry += 4; // } // logic_id_ = 1041000000; // logic_id_ += 10000*id1_; // logic_id_ += id1_; // // // // Test Pulse Run // // // t_name = lmfLaserName( ME::iLmfTestPulseRun, _type ); // //std::cout << "Fill "<< t_name << std::endl; // i_t[t_name+separator+"LOGIC_ID"] = logic_id_; // fixme --- is there a channelview for this? // i_t[t_name+separator+"NEVENTS"] = _events; // i_t[t_name+separator+"QUALITY_FLAG"] = 1; // fixme // t_t[t_name]->Fill(); // // // // Test Pulse Config // // // t_name = lmfLaserName( ME::iLmfTestPulseConfig, _type ); // //std::cout << "Fill "<< t_name << std::endl; // i_t[t_name+separator+"LOGIC_ID"] = logic_id_; // fixme // i_t[t_name+separator+"VFE_GAIN"] = _mgpagain; // fixme // i_t[t_name+separator+"PN_GAIN"] = _memgain; // fixme // t_t[t_name]->Fill(); } // // Laser Run IOV // t_name = "LMF_RUN_IOV"; //std::cout << "Fill "<< t_name << std::endl; i_t[t_name+separator+"TAG_ID"] = 0; // fixme i_t[t_name+separator+"SUB_RUN_NUM"] = _run; // fixme i_t[t_name+separator+"SUB_RUN_START_LOW" ] = ME::time_low( _ts_beg ); i_t[t_name+separator+"SUB_RUN_START_HIGH"] = ME::time_high( _ts_beg ); i_t[t_name+separator+"SUB_RUN_END_LOW" ] = ME::time_low( _ts_end ); i_t[t_name+separator+"SUB_RUN_END_HIGH" ] = ME::time_high( _ts_end ); i_t[t_name+separator+"DB_TIMESTAMP_LOW" ] = ME::time_low( _ts ); i_t[t_name+separator+"DB_TIMESTAMP_HIGH" ] = ME::time_high( _ts ); c_t[t_name+separator+"SUB_RUN_TYPE"] = "LASER TEST CRUZET"; //fixme t_t[t_name]->Fill(); }
Int_t MELaserPrim::getInt | ( | const char * | name, |
int | ix, | ||
int | iy | ||
) |
Float_t MELaserPrim::getVal | ( | const char * | name, |
int | ix, | ||
int | iy | ||
) |
bool MELaserPrim::getViewIds | ( | int | logicId, |
int & | channelView, | ||
int & | id1, | ||
int & | id2 | ||
) | [static] |
Definition at line 120 of file MELaserPrim.cc.
References dbtoconf::out.
void MELaserPrim::init | ( | ) |
Definition at line 132 of file MELaserPrim.cc.
References _color, _inpath, _type, ab_ab, ab_channelID, ab_dccID, ab_file, ab_flag, ab_ieta, ab_iphi, ab_towerID, ab_tree, ab_varName, apdpn_apdpn, apdpn_arrayName, apdpn_channelID, apdpn_dccID, apdpn_file, apdpn_flag, apdpn_ieta, apdpn_iphi, apdpn_moduleID, apdpn_ShapeCor, apdpn_side, apdpn_towerID, apdpn_tree, b_ab_ab, b_ab_channelID, b_ab_dccID, b_ab_flag, b_ab_ieta, b_ab_iphi, b_ab_towerID, b_apdpn_apdpn, b_apdpn_channelID, b_apdpn_dccID, b_apdpn_flag, b_apdpn_ieta, b_apdpn_iphi, b_apdpn_moduleID, b_apdpn_ShapeCor, b_apdpn_side, b_apdpn_towerID, b_mtq_mtq, b_mtq_side, b_pn_moduleID, b_pn_PN, b_pn_pnID, b_pn_PNoPN, b_pn_PNoPNA, b_pn_PNoPNB, b_pn_side, b_tpapd_APD, b_tpapd_channelID, b_tpapd_dccID, b_tpapd_flag, b_tpapd_gain, b_tpapd_ieta, b_tpapd_iphi, b_tpapd_moduleID, b_tpapd_side, b_tpapd_towerID, b_tppn_gain, b_tppn_moduleID, b_tppn_PN, b_tppn_pnID, b_tppn_side, gather_cfg::cout, ME::iBlue, ME::iIRed, ME::iLaser, init_ok, iSize_ab, iSize_mtq, iSizeArray_apdpn, ME::iTestPulse, mtq_file, mtq_mtq, mtq_side, mtq_tree, mtq_varName, pn_moduleID, pn_PN, pn_pnID, pn_PNoPN, pn_PNoPNA, pn_PNoPNB, pn_side, pn_tree, MultipleCompare::test, tpapd_APD, tpapd_channelID, tpapd_dccID, tpapd_file, tpapd_flag, tpapd_gain, tpapd_ieta, tpapd_iphi, tpapd_moduleID, tpapd_side, tpapd_towerID, tpapd_tree, tppn_gain, tppn_moduleID, tppn_PN, tppn_pnID, tppn_side, and tppn_tree.
Referenced by MELaserPrim().
{ bool verbose_ = false; if( _inpath=="0" ) { if( verbose_ ) std::cout << "no input file" << std::endl; init_ok = true; return; // GHM } TString cur(_inpath); if( !cur.EndsWith("/") ) cur+="/"; if( _type==ME::iLaser ) { TString _APDPN_fname =cur; _APDPN_fname += "APDPN_LASER.root"; TString _AB_fname =cur; _AB_fname += "AB.root"; TString _MTQ_fname =cur; _MTQ_fname += "MATACQ.root"; bool apdpn_ok, ab_ok, pn_ok, mtq_ok; apdpn_ok=false; ab_ok=false; pn_ok=false; mtq_ok=false; FILE *test; test = fopen( _APDPN_fname,"r"); if (test) { apdpn_ok = true; pn_ok = true; fclose( test ); } test = fopen( _AB_fname,"r"); if (test) { ab_ok = true; fclose( test ); } test = fopen( _MTQ_fname,"r"); if (test) { mtq_ok = true; fclose( test ); } if(apdpn_ok) apdpn_file = TFile::Open( _APDPN_fname ); if(ab_ok) ab_file = TFile::Open( _AB_fname ); if(mtq_ok) mtq_file = TFile::Open( _MTQ_fname ); if( verbose_ ) { std::cout << _APDPN_fname << " ok=" << apdpn_ok << std::endl; std::cout << _AB_fname << " ok=" << ab_ok << std::endl; std::cout << _MTQ_fname << " ok=" << mtq_ok << std::endl; } if (!apdpn_ok || !pn_ok ) return; // FIXME ! TString apdpn_tree_name; TString ab_tree_name; TString pn_tree_name; TString mtq_tree_name; apdpn_tree_name = "APDCol"; ab_tree_name = "ABCol"; pn_tree_name = "PNCol"; mtq_tree_name = "MatacqCol"; apdpn_tree_name += _color; ab_tree_name += _color; pn_tree_name += _color; mtq_tree_name += _color; if(mtq_ok) { TTree *ckeckMtq = (TTree*) mtq_file->Get(mtq_tree_name); if( ckeckMtq ==0 ) mtq_ok = false; } if( _color != ME::iIRed && _color != ME::iBlue ){ std::cout << "MELaserPrim::init() -- Fatal Error -- Wrong Laser Color : " << _color << " ---- Abort " << std::endl; return; } apdpn_tree = (TTree*) apdpn_file->Get(apdpn_tree_name); assert( apdpn_tree!=0 ); apdpn_tree->SetMakeClass(1); apdpn_tree->SetBranchAddress("dccID", &apdpn_dccID, &b_apdpn_dccID); apdpn_tree->SetBranchAddress("towerID", &apdpn_towerID, &b_apdpn_towerID); apdpn_tree->SetBranchAddress("channelID", &apdpn_channelID, &b_apdpn_channelID); apdpn_tree->SetBranchAddress("moduleID", &apdpn_moduleID, &b_apdpn_moduleID); apdpn_tree->SetBranchAddress("side", &apdpn_side, &b_apdpn_side); apdpn_tree->SetBranchAddress("ieta", &apdpn_ieta, &b_apdpn_ieta); apdpn_tree->SetBranchAddress("iphi", &apdpn_iphi, &b_apdpn_iphi); apdpn_tree->SetBranchAddress("flag", &apdpn_flag, &b_apdpn_flag); if( apdpn_tree->GetBranchStatus("ShapeCor")) apdpn_tree->SetBranchAddress("ShapeCor", &apdpn_ShapeCor, &b_apdpn_ShapeCor); else apdpn_ShapeCor = 0.0; for( int jj=0; jj<iSizeArray_apdpn; jj++ ) { TString name_ = apdpn_arrayName[jj]; apdpn_tree->SetBranchAddress(name_, apdpn_apdpn[jj], &b_apdpn_apdpn[jj]); } if(ab_ok) { ab_tree = (TTree*) ab_file->Get(ab_tree_name); assert( ab_tree!=0 ); ab_tree->SetMakeClass(1); ab_tree->SetBranchAddress("dccID", &ab_dccID, &b_ab_dccID ); ab_tree->SetBranchAddress("towerID", &ab_towerID, &b_ab_towerID ); ab_tree->SetBranchAddress("channelID", &ab_channelID, &b_ab_channelID ); ab_tree->SetBranchAddress("ieta", &ab_ieta, &b_ab_ieta ); ab_tree->SetBranchAddress("iphi", &ab_iphi, &b_ab_iphi ); ab_tree->SetBranchAddress("flag", &ab_flag, &b_ab_flag ); for( int ii=0; ii<iSize_ab; ii++ ) { ab_tree->SetBranchAddress( ab_varName[ii], &ab_ab[ii], &b_ab_ab[ii] ); } } pn_tree = (TTree*) apdpn_file->Get(pn_tree_name); assert( pn_tree!=0 ); pn_tree->SetMakeClass(1); pn_tree->SetBranchAddress( "side", &pn_side, &b_pn_side ); pn_tree->SetBranchAddress( "pnID", &pn_pnID, &b_pn_pnID ); pn_tree->SetBranchAddress( "moduleID", &pn_moduleID, &b_pn_moduleID ); pn_tree->SetBranchAddress( "PN", pn_PN, &b_pn_PN ); pn_tree->SetBranchAddress( "PNoPN", pn_PNoPN, &b_pn_PNoPN ); pn_tree->SetBranchAddress( "PNoPNA", pn_PNoPNA, &b_pn_PNoPNA ); pn_tree->SetBranchAddress( "PNoPNB", pn_PNoPNB, &b_pn_PNoPNB ); if( mtq_ok ) { mtq_tree = (TTree*) mtq_file->Get(mtq_tree_name); assert( mtq_tree!=0 ); mtq_tree->SetMakeClass(1); mtq_tree->SetBranchAddress("side", &mtq_side, &b_mtq_side ); for( int ii=0; ii<iSize_mtq; ii++ ) { mtq_tree->SetBranchAddress( mtq_varName[ii], &mtq_mtq[ii], &b_mtq_mtq[ii] ); } } } else if( _type==ME::iTestPulse ) { TString _TPAPD_fname =cur; _TPAPD_fname += "APDPN_TESTPULSE.root"; bool tpapd_ok; tpapd_ok=false; FILE *test; test = fopen( _TPAPD_fname,"r"); if (test) { tpapd_ok = true; fclose( test ); } if(tpapd_ok) tpapd_file = TFile::Open( _TPAPD_fname ); if( verbose_ ) { std::cout << _TPAPD_fname << " ok=" << tpapd_ok << std::endl; } if (!tpapd_ok ) return; TString tpapd_tree_name; TString tppn_tree_name; tpapd_tree_name = "TPAPD"; tppn_tree_name = "TPPN"; tpapd_tree = (TTree*) tpapd_file->Get(tpapd_tree_name); assert( tpapd_tree!=0 ); tpapd_tree->SetMakeClass(1); tpapd_tree->SetBranchAddress("ieta", &tpapd_ieta, &b_tpapd_ieta); tpapd_tree->SetBranchAddress("iphi", &tpapd_iphi, &b_tpapd_iphi); tpapd_tree->SetBranchAddress("dccID", &tpapd_dccID, &b_tpapd_dccID); tpapd_tree->SetBranchAddress("side", &tpapd_side, &b_tpapd_side); tpapd_tree->SetBranchAddress("towerID", &tpapd_towerID, &b_tpapd_towerID); tpapd_tree->SetBranchAddress("channelID", &tpapd_channelID, &b_tpapd_channelID); tpapd_tree->SetBranchAddress("moduleID", &tpapd_moduleID, &b_tpapd_moduleID); tpapd_tree->SetBranchAddress("flag", &tpapd_flag, &b_tpapd_flag); tpapd_tree->SetBranchAddress("gain", &tpapd_gain, &b_tpapd_gain); tpapd_tree->SetBranchAddress("APD", tpapd_APD, &b_tpapd_APD ); tppn_tree = (TTree*) tpapd_file->Get(tppn_tree_name); assert( tppn_tree!=0 ); tppn_tree->SetMakeClass(1); tppn_tree->SetBranchAddress( "side", &tppn_side, &b_tppn_side ); tppn_tree->SetBranchAddress( "pnID", &tppn_pnID, &b_tppn_pnID ); tppn_tree->SetBranchAddress( "moduleID", &tppn_moduleID, &b_tppn_moduleID ); tppn_tree->SetBranchAddress( "gain", &tppn_gain, &b_tppn_gain ); tppn_tree->SetBranchAddress( "PN", tppn_PN, &b_tppn_PN ); } init_ok = true; }
TString MELaserPrim::lmfLaserName | ( | int | table, |
int | type, | ||
int | color = ME::iBlue |
||
) | [static] |
Definition at line 1025 of file MELaserPrim.cc.
References ME::iBlue, ME::iGreen, ME::iIRed, ME::iLaser, ME::iLmfLaserConfig, ME::iLmfLaserPnPrim, ME::iLmfLaserPrim, ME::iLmfLaserPulse, ME::iLmfLaserRun, ME::iLmfTestPulseConfig, ME::iLmfTestPulsePnPrim, ME::iLmfTestPulsePrim, ME::iLmfTestPulseRun, ME::iRed, ME::iSizeC, ME::iSizeLmf, and ME::iTestPulse.
Referenced by bookHistograms(), fillHistograms(), and MELaserPrim().
{ TString str("LMF_ERROR"); if( table<0 || table>=ME::iSizeLmf ) return str; if( color<0 || color>=ME::iSizeC ) return str; if( type==ME::iLaser ) { TString colstr; switch( color ) { case ME::iBlue: colstr = "_BLUE"; break; case ME::iGreen: colstr = "_GREEN"; break; case ME::iRed: colstr = "_RED"; break; case ME::iIRed: colstr = "_IRED"; break; default: abort(); } str = "LMF_LASER"; switch( table ) { case ME::iLmfLaserRun: str = "LMF_RUN"; break; case ME::iLmfLaserConfig: str += "_CONFIG"; break; case ME::iLmfLaserPulse: str += colstr; str += "_PULSE"; break; case ME::iLmfLaserPrim: str += colstr; str += "_PRIM"; break; case ME::iLmfLaserPnPrim: str += colstr; str += "_PN_PRIM"; break; default: abort(); } } else if( type==ME::iTestPulse ) { str = "LMF_TEST_PULSE"; switch( table ) { case ME::iLmfTestPulseRun: str = "LMF_RUN"; break; case ME::iLmfTestPulseConfig: str += "_CONFIG"; break; case ME::iLmfTestPulsePrim: str += "_PRIM"; break; case ME::iLmfTestPulsePnPrim: str += "_PN_PRIM"; break; default: abort(); } } str += "_DAT"; return str; }
int MELaserPrim::logicId | ( | int | channelView, |
int | id1, | ||
int | id2 = 0 |
||
) | [static] |
Definition at line 113 of file MELaserPrim.cc.
References iECAL, and iSize_cv.
Referenced by fillHistograms().
void MELaserPrim::print | ( | std::ostream & | o | ) |
void MELaserPrim::refresh | ( | ) | [private] |
Definition at line 1247 of file MELaserPrim.cc.
Referenced by bookHistograms().
{ std::map< TString, TH2* >::iterator it; for( it=i_h.begin(); it!=i_h.end(); it++ ) { delete it->second; it->second = 0; } i_h.clear(); for( it=f_h.begin(); it!=f_h.end(); it++ ) { delete it->second; it->second = 0; } f_h.clear(); std::map< TString, TTree* >::iterator it_t; for( it_t=t_t.begin(); it_t!=t_t.end(); it_t++ ) { delete it_t->second; it->second = 0; } t_t.clear(); }
void MELaserPrim::setHistoStyle | ( | TH1 * | h | ) | [private] |
Definition at line 1219 of file MELaserPrim.cc.
References a.
Referenced by bookHistoF(), and bookHistoI().
{ if( h==0 ) return; float _scale = 1; h->SetLineColor(4); h->SetLineWidth(1); h->SetFillColor(38); TAxis* axis[3]; axis[0] = h->GetXaxis(); axis[1] = h->GetYaxis(); axis[2] = h->GetZaxis(); for( int ii=0; ii<3; ii++ ) { TAxis* a = axis[ii]; if( !a ) continue; a->SetLabelFont(132); a->SetLabelOffset(_scale*0.005); a->SetLabelSize(_scale*0.04); a->SetTitleFont(132); a->SetTitleOffset(_scale*1); a->SetTitleSize(_scale*0.04); } h->SetStats( kTRUE ); }
bool MELaserPrim::setInt | ( | const char * | tname, |
const char * | vname, | ||
int | ival | ||
) |
bool MELaserPrim::setInt | ( | const char * | name, |
int | ix, | ||
int | iy, | ||
int | ival | ||
) |
Definition at line 1119 of file MELaserPrim.cc.
References _primStr, _tpPrimStr, _type, getInt(), i_h, ME::iLaser, ME::iTestPulse, and mergeVDriftHistosByStation::name.
Referenced by fillHistograms().
{ TString name_; if( _type==ME::iLaser ) name_=_primStr+name; else if( _type==ME::iTestPulse ) name_=_tpPrimStr+name; int _ival = getInt( name_, ix, iy ); assert( _ival!=-99 ); if( _ival!=0 ) return false; TH2I* h_ = (TH2I*) i_h[name_]; assert( h_!=0 ); h_->Fill( ix+0.5, iy+0.5, ival ); return true; }
bool MELaserPrim::setVal | ( | const char * | name, |
int | ix, | ||
int | iy, | ||
float | val | ||
) |
Definition at line 1137 of file MELaserPrim.cc.
References _primStr, _tpPrimStr, _type, f_h, getVal(), ME::iLaser, ME::iTestPulse, and mergeVDriftHistosByStation::name.
Referenced by fillHistograms().
{ TString name_; if( _type==ME::iLaser ) name_=_primStr+name; else if( _type==ME::iTestPulse ) name_=_tpPrimStr+name; float _val = getVal( name_, ix, iy ); assert( _val!=-99 ); if( _val!=0 ) return false; TH2F* h_ = (TH2F*) f_h[name_]; assert( h_!=0 ); h_->Fill( ix+0.5, iy+0.5, val ); return true; }
bool MELaserPrim::setVal | ( | const char * | tname, |
const char * | vname, | ||
float | val | ||
) |
Definition at line 1195 of file MELaserPrim.cc.
References gather_cfg::cout, f_t, and separator.
void MELaserPrim::writeHistograms | ( | ) |
Definition at line 933 of file MELaserPrim.cc.
References _outfile, f_h, i_h, init_ok, out_file, and t_t.
{ if( !init_ok ) return; out_file = new TFile( _outfile, "RECREATE" ); // out_file->cd(); std::map< TString, TH2* >::iterator it; for( it=i_h.begin(); it!=i_h.end(); it++ ) { it->second->Write(); delete it->second; } for( it=f_h.begin(); it!=f_h.end(); it++ ) { it->second->Write(); delete it->second; } std::map< TString, TTree* >::iterator it_t; for( it_t=t_t.begin(); it_t!=t_t.end(); it_t++ ) { it_t->second->Write(); delete it_t->second; } // std::cout << "Closing " << _outfile << std::endl; out_file->Close(); delete out_file; out_file=0; }
int MELaserPrim::_color [private] |
Definition at line 89 of file MELaserPrim.h.
Referenced by bookHistograms(), fillHistograms(), init(), and MELaserPrim().
int MELaserPrim::_dcc [private] |
Definition at line 82 of file MELaserPrim.h.
Referenced by MELaserPrim().
int MELaserPrim::_delay [private] |
Definition at line 92 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
int MELaserPrim::_ecal_region [private] |
Definition at line 103 of file MELaserPrim.h.
int MELaserPrim::_events [private] |
Definition at line 86 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
int MELaserPrim::_filter [private] |
Definition at line 91 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
TString MELaserPrim::_inpath [private] |
Definition at line 132 of file MELaserPrim.h.
Referenced by init().
bool MELaserPrim::_isBarrel [private] |
Definition at line 80 of file MELaserPrim.h.
Referenced by bookHistograms(), fillHistograms(), and MELaserPrim().
int MELaserPrim::_lb [private] |
Definition at line 85 of file MELaserPrim.h.
Referenced by MELaserPrim().
int MELaserPrim::_lmr [private] |
Definition at line 81 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
int MELaserPrim::_memgain [private] |
Definition at line 100 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
int MELaserPrim::_mgpagain [private] |
Definition at line 99 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
TString MELaserPrim::_outfile [private] |
Definition at line 135 of file MELaserPrim.h.
Referenced by writeHistograms().
TString MELaserPrim::_pnPrimStr [private] |
Definition at line 110 of file MELaserPrim.h.
Referenced by MELaserPrim().
int MELaserPrim::_power [private] |
Definition at line 90 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
TString MELaserPrim::_primStr [private] |
Definition at line 109 of file MELaserPrim.h.
Referenced by bookHistograms(), MELaserPrim(), setInt(), and setVal().
TString MELaserPrim::_pulseStr [private] |
Definition at line 111 of file MELaserPrim.h.
Referenced by MELaserPrim().
int MELaserPrim::_reg [private] |
Definition at line 79 of file MELaserPrim.h.
Referenced by MELaserPrim().
TString MELaserPrim::_regionStr [private] |
Definition at line 108 of file MELaserPrim.h.
Referenced by MELaserPrim().
int MELaserPrim::_run [private] |
Definition at line 84 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
TString MELaserPrim::_sectorStr [private] |
Definition at line 107 of file MELaserPrim.h.
Referenced by MELaserPrim().
int MELaserPrim::_side [private] |
Definition at line 83 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
int MELaserPrim::_sm [private] |
Definition at line 104 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
TString MELaserPrim::_tpPnPrimStr [private] |
Definition at line 113 of file MELaserPrim.h.
Referenced by MELaserPrim().
TString MELaserPrim::_tpPrimStr [private] |
Definition at line 112 of file MELaserPrim.h.
Referenced by bookHistograms(), MELaserPrim(), setInt(), and setVal().
ME::TimeStamp MELaserPrim::_ts [private] |
Definition at line 95 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
ME::TimeStamp MELaserPrim::_ts_beg [private] |
Definition at line 96 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
ME::TimeStamp MELaserPrim::_ts_end [private] |
Definition at line 97 of file MELaserPrim.h.
Referenced by fillHistograms(), and MELaserPrim().
int MELaserPrim::_type [private] |
Definition at line 88 of file MELaserPrim.h.
Referenced by bookHistograms(), fillHistograms(), init(), MELaserPrim(), setInt(), and setVal().
Double_t MELaserPrim::ab_ab[iSize_ab] [private] |
Definition at line 175 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Int_t MELaserPrim::ab_channelID [private] |
Definition at line 171 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::ab_dccID [private] |
Definition at line 169 of file MELaserPrim.h.
Referenced by init().
TFile* MELaserPrim::ab_file [private] |
Definition at line 117 of file MELaserPrim.h.
Referenced by init(), MELaserPrim(), and ~MELaserPrim().
Int_t MELaserPrim::ab_flag [private] |
Definition at line 174 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::ab_ieta [private] |
Definition at line 172 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::ab_iphi [private] |
Definition at line 173 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::ab_towerID [private] |
Definition at line 170 of file MELaserPrim.h.
Referenced by init().
TTree* MELaserPrim::ab_tree [private] |
Definition at line 125 of file MELaserPrim.h.
Referenced by fillHistograms(), init(), MELaserPrim(), and ~MELaserPrim().
TString MELaserPrim::ab_varName = { "alpha", "beta", "width", "chi2" } [static, private] |
Definition at line 270 of file MELaserPrim.h.
Referenced by init().
Double_t MELaserPrim::apdpn_apdpn[iSizeArray_apdpn][iSize_apdpn] [private] |
Definition at line 166 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
TString MELaserPrim::apdpn_arrayName = {"APD", "APDoPN", "APDoPNA", "APDoPNB","APDoAPD","APDoAPDA", "APDoAPDB", "Time"} [static, private] |
Definition at line 265 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::apdpn_channelID [private] |
Definition at line 158 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::apdpn_dccID [private] |
Definition at line 156 of file MELaserPrim.h.
Referenced by init().
TString MELaserPrim::apdpn_extraVarName = { "ShapeCor" } [static, private] |
Definition at line 268 of file MELaserPrim.h.
TString MELaserPrim::apdpn_extraVarUnit = { "" } [static, private] |
Definition at line 269 of file MELaserPrim.h.
TFile* MELaserPrim::apdpn_file [private] |
Definition at line 116 of file MELaserPrim.h.
Referenced by init(), MELaserPrim(), and ~MELaserPrim().
Int_t MELaserPrim::apdpn_flag [private] |
Definition at line 164 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Int_t MELaserPrim::apdpn_ieta [private] |
Definition at line 162 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Int_t MELaserPrim::apdpn_iphi [private] |
Definition at line 163 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Int_t MELaserPrim::apdpn_moduleID [private] |
Definition at line 159 of file MELaserPrim.h.
Referenced by init().
Double_t MELaserPrim::apdpn_ShapeCor [private] |
Definition at line 165 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Int_t MELaserPrim::apdpn_side [private] |
Definition at line 161 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Int_t MELaserPrim::apdpn_towerID [private] |
Definition at line 157 of file MELaserPrim.h.
Referenced by init().
TTree* MELaserPrim::apdpn_tree [private] |
Definition at line 124 of file MELaserPrim.h.
Referenced by fillHistograms(), init(), MELaserPrim(), and ~MELaserPrim().
TString MELaserPrim::apdpn_varName = { "Mean", "RMS", "M3", "Nevt", "Min", "Max"} [static, private] |
Definition at line 266 of file MELaserPrim.h.
TString MELaserPrim::apdpn_varUnit [static, private] |
{ { " (ADC Counts)", " (ADC Counts)", " (ADC Counts)" ,"", " (ADC Counts)", " (ADC Counts)"}, {"", "", "", "", "", ""}, {"", "", "", "", "", ""}, {"", "", "", "", "", ""}, {"", "", "", "", "", ""}, {"", "", "", "", "", ""}, {" (25 ns)", " (25 ns)", " (25 ns)", "", " (25 ns)", " (25 ns)"} }
Definition at line 267 of file MELaserPrim.h.
TBranch* MELaserPrim::b_ab_ab[iSize_ab] [private] |
Definition at line 230 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_ab_channelID [private] |
Definition at line 226 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_ab_dccID [private] |
Definition at line 224 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_ab_flag [private] |
Definition at line 229 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_ab_ieta [private] |
Definition at line 227 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_ab_iphi [private] |
Definition at line 228 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_ab_towerID [private] |
Definition at line 225 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_apdpn_apdpn[iSizeArray_apdpn] [private] |
Definition at line 221 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_apdpn_channelID [private] |
Definition at line 213 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_apdpn_dccID [private] |
Definition at line 211 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_apdpn_flag [private] |
Definition at line 219 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_apdpn_ieta [private] |
Definition at line 217 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_apdpn_iphi [private] |
Definition at line 218 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_apdpn_moduleID [private] |
Definition at line 214 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_apdpn_ShapeCor [private] |
Definition at line 220 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_apdpn_side [private] |
Definition at line 216 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_apdpn_towerID [private] |
Definition at line 212 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_mtq_color [private] |
Definition at line 243 of file MELaserPrim.h.
TBranch* MELaserPrim::b_mtq_mtq[iSize_mtq] [private] |
Definition at line 244 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_mtq_side [private] |
Definition at line 242 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_pn_moduleID [private] |
Definition at line 235 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_pn_PN [private] |
Definition at line 236 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_pn_pnID [private] |
Definition at line 234 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_pn_PNoPN [private] |
Definition at line 237 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_pn_PNoPNA [private] |
Definition at line 238 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_pn_PNoPNB [private] |
Definition at line 239 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_pn_side [private] |
Definition at line 233 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tpapd_APD [private] |
Definition at line 256 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tpapd_channelID [private] |
Definition at line 252 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tpapd_dccID [private] |
Definition at line 249 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tpapd_flag [private] |
Definition at line 254 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tpapd_gain [private] |
Definition at line 255 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tpapd_ieta [private] |
Definition at line 248 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tpapd_iphi [private] |
Definition at line 247 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tpapd_moduleID [private] |
Definition at line 253 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tpapd_side [private] |
Definition at line 250 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tpapd_towerID [private] |
Definition at line 251 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tppn_gain [private] |
Definition at line 262 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tppn_moduleID [private] |
Definition at line 261 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tppn_PN [private] |
Definition at line 263 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tppn_pnID [private] |
Definition at line 260 of file MELaserPrim.h.
Referenced by init().
TBranch* MELaserPrim::b_tppn_side [private] |
Definition at line 259 of file MELaserPrim.h.
Referenced by init().
std::map< TString, const char* > MELaserPrim::c_t [private] |
Definition at line 153 of file MELaserPrim.h.
Referenced by addBranchC(), and fillHistograms().
std::map< TString, TH2* > MELaserPrim::f_h [private] |
Definition at line 147 of file MELaserPrim.h.
Referenced by bookHistoF(), getVal(), refresh(), setVal(), and writeHistograms().
std::map< TString, float > MELaserPrim::f_t [private] |
Definition at line 152 of file MELaserPrim.h.
Referenced by addBranchF(), fillHistograms(), and setVal().
std::map< TString, TH2* > MELaserPrim::i_h [private] |
Definition at line 146 of file MELaserPrim.h.
Referenced by bookHistoI(), getInt(), refresh(), setInt(), and writeHistograms().
std::map< TString, int > MELaserPrim::i_t [private] |
Definition at line 151 of file MELaserPrim.h.
Referenced by addBranchI(), fillHistograms(), and setInt().
bool MELaserPrim::init_ok |
Definition at line 49 of file MELaserPrim.h.
Referenced by bookHistograms(), fillHistograms(), init(), and writeHistograms().
int MELaserPrim::ixmax [private] |
Definition at line 140 of file MELaserPrim.h.
Referenced by bookHistoF(), bookHistograms(), bookHistoI(), and MELaserPrim().
int MELaserPrim::ixmin [private] |
Definition at line 139 of file MELaserPrim.h.
Referenced by bookHistoF(), bookHistograms(), bookHistoI(), and MELaserPrim().
int MELaserPrim::iymax [private] |
Definition at line 143 of file MELaserPrim.h.
Referenced by bookHistoF(), bookHistograms(), bookHistoI(), and MELaserPrim().
int MELaserPrim::iymin [private] |
Definition at line 142 of file MELaserPrim.h.
Referenced by bookHistoF(), bookHistograms(), bookHistoI(), and MELaserPrim().
Int_t MELaserPrim::mtq_color [private] |
Definition at line 188 of file MELaserPrim.h.
TFile* MELaserPrim::mtq_file [private] |
Definition at line 119 of file MELaserPrim.h.
Referenced by init(), MELaserPrim(), and ~MELaserPrim().
Double_t MELaserPrim::mtq_mtq[iSize_mtq] [private] |
Definition at line 189 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Int_t MELaserPrim::mtq_side [private] |
Definition at line 187 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
TTree* MELaserPrim::mtq_tree [private] |
Definition at line 127 of file MELaserPrim.h.
Referenced by fillHistograms(), init(), MELaserPrim(), and ~MELaserPrim().
TString MELaserPrim::mtq_varName = {"peak", "sigma", "fit", "ampl", "trise", "fwhm", "fw20", "fw80", "sliding" } [static, private] |
Definition at line 271 of file MELaserPrim.h.
Referenced by init().
TString MELaserPrim::mtq_varUnit [static, private] |
{"(nanoseconds)", "(nanoseconds)", "(nanoseconds)", "(ADC counts)", "(nanoseconds)", "(nanoseconds)", "(nanoseconds)", "(nanoseconds)", "(ADC counts)"}
Definition at line 272 of file MELaserPrim.h.
int MELaserPrim::nx [private] |
Definition at line 138 of file MELaserPrim.h.
Referenced by bookHistoF(), bookHistograms(), and bookHistoI().
int MELaserPrim::ny [private] |
Definition at line 141 of file MELaserPrim.h.
Referenced by bookHistoF(), bookHistograms(), and bookHistoI().
TFile* MELaserPrim::out_file [private] |
Definition at line 121 of file MELaserPrim.h.
Referenced by writeHistograms().
TFile* MELaserPrim::pn_file [private] |
Definition at line 118 of file MELaserPrim.h.
Int_t MELaserPrim::pn_moduleID [private] |
Definition at line 180 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Double_t MELaserPrim::pn_PN[iSize_apdpn] [private] |
Definition at line 181 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Int_t MELaserPrim::pn_pnID [private] |
Definition at line 179 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Double_t MELaserPrim::pn_PNoPN[iSize_apdpn] [private] |
Definition at line 182 of file MELaserPrim.h.
Referenced by init().
Double_t MELaserPrim::pn_PNoPNA[iSize_apdpn] [private] |
Definition at line 183 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Double_t MELaserPrim::pn_PNoPNB[iSize_apdpn] [private] |
Definition at line 184 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
Int_t MELaserPrim::pn_side [private] |
Definition at line 178 of file MELaserPrim.h.
Referenced by fillHistograms(), and init().
TTree* MELaserPrim::pn_tree [private] |
Definition at line 126 of file MELaserPrim.h.
Referenced by fillHistograms(), init(), MELaserPrim(), and ~MELaserPrim().
TString MELaserPrim::separator = "__" [static] |
Definition at line 74 of file MELaserPrim.h.
Referenced by addBranchC(), addBranchF(), addBranchI(), fillHistograms(), MELaserPrim(), setInt(), and setVal().
std::map< TString, TTree* > MELaserPrim::t_t [private] |
Definition at line 150 of file MELaserPrim.h.
Referenced by addBranchC(), addBranchF(), addBranchI(), fill(), fillHistograms(), refresh(), and writeHistograms().
Double_t MELaserPrim::tpapd_APD[iSize_apdpn] [private] |
Definition at line 201 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tpapd_channelID [private] |
Definition at line 197 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tpapd_dccID [private] |
Definition at line 194 of file MELaserPrim.h.
Referenced by init().
TFile* MELaserPrim::tpapd_file [private] |
Definition at line 120 of file MELaserPrim.h.
Referenced by init(), MELaserPrim(), and ~MELaserPrim().
Int_t MELaserPrim::tpapd_flag [private] |
Definition at line 199 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tpapd_gain [private] |
Definition at line 200 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tpapd_ieta [private] |
Definition at line 193 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tpapd_iphi [private] |
Definition at line 192 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tpapd_moduleID [private] |
Definition at line 198 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tpapd_side [private] |
Definition at line 195 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tpapd_towerID [private] |
Definition at line 196 of file MELaserPrim.h.
Referenced by init().
TTree* MELaserPrim::tpapd_tree [private] |
Definition at line 128 of file MELaserPrim.h.
Referenced by init(), MELaserPrim(), and ~MELaserPrim().
Int_t MELaserPrim::tppn_gain [private] |
Definition at line 207 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tppn_moduleID [private] |
Definition at line 206 of file MELaserPrim.h.
Referenced by init().
Double_t MELaserPrim::tppn_PN[iSize_apdpn] [private] |
Definition at line 208 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tppn_pnID [private] |
Definition at line 205 of file MELaserPrim.h.
Referenced by init().
Int_t MELaserPrim::tppn_side [private] |
Definition at line 204 of file MELaserPrim.h.
Referenced by init().
TTree* MELaserPrim::tppn_tree [private] |
Definition at line 129 of file MELaserPrim.h.
Referenced by init(), MELaserPrim(), and ~MELaserPrim().