#include <EcalTPCondAnalyzer.h>
Public Member Functions | |
virtual void | analyze (const edm::Event &, const edm::EventSetup &) |
virtual void | beginJob () |
void | beginRun (const edm::Run &run, const edm::EventSetup &es) |
EcalTPCondAnalyzer (const edm::ParameterSet &) | |
virtual void | endJob () |
~EcalTPCondAnalyzer () | |
Private Member Functions | |
unsigned long long | getRecords (edm::EventSetup const &setup) |
void | printComment () const |
void | printCRYSTAL (const EcalTPGPedestals *ecaltpPed, const EcalTPGLinearizationConst *ecaltpLin) |
void | printEcalTPGFineGrainEBIdMap (const EcalTPGFineGrainEBIdMap *ecaltpgFineGrainEB) const |
void | printEcalTPGLutIdMap (const EcalTPGLutIdMap *ecaltpgLut) const |
void | printEcalTPGPhysicsConst (const EcalTPGPhysicsConst *) const |
void | printSTRIP (const EcalTPGSlidingWindow *ecaltpgSlidW, const EcalTPGWeightGroup *ecaltpgWeightGroup, const EcalTPGFineGrainStripEE *ecaltpgFgStripEE) const |
void | printTOWEREB (const EcalTPGFineGrainEBGroup *ecaltpgFgEBGroup, const EcalTPGLutGroup *ecaltpgLutGroup) const |
void | printTOWEREE (const EcalTPGFineGrainTowerEE *ecaltpgFineGrainTowerEE, const EcalTPGLutGroup *ecaltpgLutGroup) const |
void | printWEIGHT (const EcalTPGWeightIdMap *ecaltpgWeightMap) const |
Private Attributes | |
unsigned long long | cacheID_ |
const CaloSubdetectorGeometry * | theBarrelGeometry_ |
const CaloSubdetectorGeometry * | theEndcapGeometry_ |
Description: prints the TPG conditions coming from the conditions DB Prints in exactly the same format as TPG.txt, such that a "diff" is possible.
Definition at line 52 of file EcalTPCondAnalyzer.h.
EcalTPCondAnalyzer::EcalTPCondAnalyzer | ( | const edm::ParameterSet & | iConfig | ) | [explicit] |
Definition at line 51 of file EcalTPCondAnalyzer.cc.
{}
EcalTPCondAnalyzer::~EcalTPCondAnalyzer | ( | ) |
Definition at line 71 of file EcalTPCondAnalyzer.cc.
{ }
void EcalTPCondAnalyzer::analyze | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [virtual] |
void EcalTPCondAnalyzer::beginJob | ( | void | ) | [virtual] |
void EcalTPCondAnalyzer::beginRun | ( | const edm::Run & | run, |
const edm::EventSetup & | es | ||
) | [virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 55 of file EcalTPCondAnalyzer.cc.
References cacheID_, edm::EventSetup::get(), getRecords(), theBarrelGeometry_, and theEndcapGeometry_.
{ // get geometry edm::ESHandle<CaloSubdetectorGeometry> theEndcapGeometry_handle, theBarrelGeometry_handle; evtSetup.get<EcalEndcapGeometryRecord>().get("EcalEndcap",theEndcapGeometry_handle); evtSetup.get<EcalBarrelGeometryRecord>().get("EcalBarrel",theBarrelGeometry_handle); theEndcapGeometry_ = &(*theEndcapGeometry_handle); theBarrelGeometry_ = &(*theBarrelGeometry_handle); cacheID_=this->getRecords(evtSetup); }
void EcalTPCondAnalyzer::endJob | ( | void | ) | [virtual] |
unsigned long long EcalTPCondAnalyzer::getRecords | ( | edm::EventSetup const & | setup | ) | [private] |
Definition at line 74 of file EcalTPCondAnalyzer.cc.
References gather_cfg::cout, edm::EventSetup::get(), printComment(), printCRYSTAL(), printEcalTPGFineGrainEBIdMap(), printEcalTPGLutIdMap(), printEcalTPGPhysicsConst(), printSTRIP(), printTOWEREB(), printTOWEREE(), printWEIGHT(), and edm::ESHandle< T >::product().
Referenced by beginRun().
{ // // get Eventsetup records and print them // printComment(); edm::ESHandle<EcalTPGPhysicsConst> theEcalTPGPhysConst_handle; setup.get<EcalTPGPhysicsConstRcd>().get(theEcalTPGPhysConst_handle); const EcalTPGPhysicsConst * ecaltpPhysConst = theEcalTPGPhysConst_handle.product(); printEcalTPGPhysicsConst(ecaltpPhysConst); // for EcalFenixStrip... // get parameter records for xtals edm::ESHandle<EcalTPGLinearizationConst> theEcalTPGLinearization_handle; setup.get<EcalTPGLinearizationConstRcd>().get(theEcalTPGLinearization_handle); const EcalTPGLinearizationConst * ecaltpLin = theEcalTPGLinearization_handle.product(); edm::ESHandle<EcalTPGPedestals> theEcalTPGPedestals_handle; setup.get<EcalTPGPedestalsRcd>().get(theEcalTPGPedestals_handle); const EcalTPGPedestals * ecaltpPed = theEcalTPGPedestals_handle.product(); printCRYSTAL(ecaltpPed,ecaltpLin ); //weight edm::ESHandle<EcalTPGWeightIdMap> theEcalTPGWEightIdMap_handle; setup.get<EcalTPGWeightIdMapRcd>().get(theEcalTPGWEightIdMap_handle); const EcalTPGWeightIdMap * ecaltpgWeightMap = theEcalTPGWEightIdMap_handle.product(); printWEIGHT(ecaltpgWeightMap); // .. and for EcalFenixTcp edm::ESHandle<EcalTPGFineGrainEBIdMap> theEcalTPGFineGrainEBIdMap_handle; setup.get<EcalTPGFineGrainEBIdMapRcd>().get(theEcalTPGFineGrainEBIdMap_handle); const EcalTPGFineGrainEBIdMap * ecaltpgFineGrainEB = theEcalTPGFineGrainEBIdMap_handle.product(); printEcalTPGFineGrainEBIdMap(ecaltpgFineGrainEB); edm::ESHandle<EcalTPGLutIdMap> theEcalTPGLutIdMap_handle; setup.get<EcalTPGLutIdMapRcd>().get(theEcalTPGLutIdMap_handle); const EcalTPGLutIdMap * ecaltpgLut = theEcalTPGLutIdMap_handle.product(); printEcalTPGLutIdMap(ecaltpgLut); //for strips edm::ESHandle<EcalTPGSlidingWindow> theEcalTPGSlidingWindow_handle; setup.get<EcalTPGSlidingWindowRcd>().get(theEcalTPGSlidingWindow_handle); const EcalTPGSlidingWindow * ecaltpgSlidW = theEcalTPGSlidingWindow_handle.product(); edm::ESHandle<EcalTPGFineGrainStripEE> theEcalTPGFineGrainStripEE_handle; setup.get<EcalTPGFineGrainStripEERcd>().get(theEcalTPGFineGrainStripEE_handle); const EcalTPGFineGrainStripEE * ecaltpgFgStripEE = theEcalTPGFineGrainStripEE_handle.product(); edm::ESHandle<EcalTPGWeightGroup> theEcalTPGWEightGroup_handle; setup.get<EcalTPGWeightGroupRcd>().get(theEcalTPGWEightGroup_handle); const EcalTPGWeightGroup * ecaltpgWeightGroup = theEcalTPGWEightGroup_handle.product(); printSTRIP(ecaltpgSlidW,ecaltpgWeightGroup,ecaltpgFgStripEE); // get parameter records for towers edm::ESHandle<EcalTPGLutGroup> theEcalTPGLutGroup_handle; setup.get<EcalTPGLutGroupRcd>().get(theEcalTPGLutGroup_handle); const EcalTPGLutGroup * ecaltpgLutGroup = theEcalTPGLutGroup_handle.product(); edm::ESHandle<EcalTPGFineGrainEBGroup> theEcalTPGFineGrainEBGroup_handle; setup.get<EcalTPGFineGrainEBGroupRcd>().get(theEcalTPGFineGrainEBGroup_handle); const EcalTPGFineGrainEBGroup * ecaltpgFgEBGroup = theEcalTPGFineGrainEBGroup_handle.product(); printTOWEREB(ecaltpgFgEBGroup,ecaltpgLutGroup); edm::ESHandle<EcalTPGFineGrainTowerEE> theEcalTPGFineGrainTowerEE_handle; setup.get<EcalTPGFineGrainTowerEERcd>().get(theEcalTPGFineGrainTowerEE_handle); const EcalTPGFineGrainTowerEE * ecaltpgFineGrainTowerEE = theEcalTPGFineGrainTowerEE_handle.product(); printTOWEREE(ecaltpgFineGrainTowerEE,ecaltpgLutGroup); std::cout<<"EOF"<<std::endl; return setup.get<EcalTPGFineGrainTowerEERcd>().cacheIdentifier(); }
void EcalTPCondAnalyzer::printComment | ( | ) | const [private] |
Definition at line 277 of file EcalTPCondAnalyzer.cc.
References gather_cfg::cout.
Referenced by getRecords().
{ std::cout<<"COMMENT put your comments here\n"<< "COMMENT =================================\n"<< "COMMENT physics EB structure\n"<< "COMMENT\n"<< "COMMENT EtSaturation (GeV), ttf_threshold_Low (GeV), ttf_threshold_High (GeV)\n"<< "COMMENT FG_lowThreshold (GeV), FG_highThreshold (GeV), FG_lowRatio, FG_highRatio\n"<< "COMMENT =================================\n"<< "COMMENT\n"<< "COMMENT =================================\n"<< "COMMENT physics EE structure\n"<< "COMMENT\n"<< "COMMENT EtSaturation (GeV), ttf_threshold_Low (GeV), ttf_threshold_High (GeV)\n"<< "COMMENT FG_Threshold (GeV), dummy, dummy, dummy\n"<< "COMMENT =================================\n"<< "COMMENT\n"<< "COMMENT =================================\n"<< "COMMENT crystal structure (same for EB and EE)\n"<< "COMMENT\n"<< "COMMENT ped, mult, shift [gain12]\n"<< "COMMENT ped, mult, shift [gain6]\n"<< "COMMENT ped, mult, shift [gain1]\n"<< "COMMENT =================================\n"<< "COMMENT\n"<< "COMMENT =================================\n"<< "COMMENT strip EB structure\n"<< "COMMENT\n"<< "COMMENT sliding_window\n"<< "COMMENT weightGroupId\n"<< "COMMENT =================================\n"<< "COMMENT\n"<< "COMMENT =================================\n"<< "COMMENT strip EE structure\n"<< "COMMENT\n"<< "COMMENT sliding_window\n"<< "COMMENT weightGroupId\n"<< "COMMENT threshold_fg strip_lut_fg\n"<< "COMMENT =================================\n"<< "COMMENT\n"<< "COMMENT =================================\n"<< "COMMENT tower EB structure\n"<< "COMMENT\n"<< "COMMENT LUTGroupId\n"<< "COMMENT FgGroupId\n"<< "COMMENT =================================\n"<< "COMMENT\n"<< "COMMENT =================================\n"<< "COMMENT tower EE structure\n"<< "COMMENT\n"<< "COMMENT LUTGroupId\n"<< "COMMENT tower_lut_fg\n"<< "COMMENT =================================\n"<< "COMMENT\n"<< "COMMENT =================================\n"<< "COMMENT Weight structure\n"<< "COMMENT\n"<< "COMMENT weightGroupId\n"<< "COMMENT w0, w1, w2, w3, w4\n"<< "COMMENT =================================\n"<< "COMMENT\n"<< "COMMENT =================================\n"<< "COMMENT lut structure\n"<< "COMMENT\n"<< "COMMENT LUTGroupId\n"<< "COMMENT LUT[1-1024]\n"<< "COMMENT =================================\n"<< "COMMENT\n"<< "COMMENT =================================\n"<< "COMMENT fg EB structure\n"<< "COMMENT\n"<< "COMMENT FgGroupId\n"<< "COMMENT el, eh, tl, th, lut_fg\n"<< "COMMENT =================================\n"<< "COMMENT"<<std::endl; }
void EcalTPCondAnalyzer::printCRYSTAL | ( | const EcalTPGPedestals * | ecaltpPed, |
const EcalTPGLinearizationConst * | ecaltpLin | ||
) | [private] |
Definition at line 246 of file EcalTPCondAnalyzer.cc.
References gather_cfg::cout, DetId::Ecal, EcalBarrel, EcalEndcap, EcalCondObjectContainer< T >::getMap(), CaloSubdetectorGeometry::getValidDetIds(), ExpressReco_HICollisions_FallBack::id, EcalTPGPedestal::mean_x1, EcalTPGPedestal::mean_x12, EcalTPGPedestal::mean_x6, EcalTPGLinearizationConstant::mult_x1, EcalTPGLinearizationConstant::mult_x12, EcalTPGLinearizationConstant::mult_x6, EcalTPGLinearizationConstant::shift_x1, EcalTPGLinearizationConstant::shift_x12, EcalTPGLinearizationConstant::shift_x6, theBarrelGeometry_, and theEndcapGeometry_.
Referenced by getRecords().
{ std::cout<<std::endl; const EcalTPGPedestalsMap pedMap=ecaltpPed->getMap(); const EcalTPGLinearizationConstMap linMap=ecaltpLin->getMap(); const std::vector<DetId> & ebCells = theBarrelGeometry_->getValidDetIds(DetId::Ecal, EcalBarrel); std::cout<<"COMMENT ====== barrel crystals ====== "<<std::endl; for (std::vector<DetId>::const_iterator it = ebCells.begin(); it != ebCells.end(); ++it) { EBDetId id(*it) ; std::cout <<"CRYSTAL "<<std::dec<<id.rawId()<<std::endl; const EcalTPGPedestal &ped=pedMap[id.rawId()]; const EcalTPGLinearizationConstant &lin=linMap[id.rawId()]; std::cout<<std::hex<<" 0x"<<ped.mean_x12<<" 0x"<<lin.mult_x12<<" 0x"<<lin.shift_x12<<std::endl; std::cout<<std::hex<<" 0x"<<ped.mean_x6 <<" 0x"<<lin.mult_x6 <<" 0x"<<lin.shift_x6<<std::endl; std::cout<<std::hex<<" 0x"<<ped.mean_x1 <<" 0x"<<lin.mult_x1 <<" 0x"<<lin.shift_x1<<std::endl; } const std::vector<DetId> & eeCells = theEndcapGeometry_->getValidDetIds(DetId::Ecal, EcalEndcap); std::cout<<"COMMENT ====== endcap crystals ====== "<<std::endl; for (std::vector<DetId>::const_iterator it = eeCells.begin(); it != eeCells.end(); ++it) { EEDetId id(*it) ; std::cout <<"CRYSTAL "<<std::dec<<id.rawId()<<std::endl; const EcalTPGPedestal &ped=pedMap[id.rawId()]; const EcalTPGLinearizationConstant &lin=linMap[id.rawId()]; std::cout<<std::hex<<" 0x"<<ped.mean_x12<<" 0x"<<lin.mult_x12<<" 0x"<<lin.shift_x12<<std::endl; std::cout<<std::hex<<" 0x"<<ped.mean_x6 <<" 0x"<<lin.mult_x6 <<" 0x"<<lin.shift_x6<<std::endl; std::cout<<std::hex<<" 0x"<<ped.mean_x1 <<" 0x"<<lin.mult_x1 <<" 0x"<<lin.shift_x1<<std::endl; } }
void EcalTPCondAnalyzer::printEcalTPGFineGrainEBIdMap | ( | const EcalTPGFineGrainEBIdMap * | ecaltpgFineGrainEB | ) | const [private] |
Definition at line 220 of file EcalTPCondAnalyzer.cc.
References gather_cfg::cout, and EcalTPGFineGrainEBIdMap::getMap().
Referenced by getRecords().
{ EcalTPGFineGrainEBIdMap::EcalTPGFineGrainEBMapItr it; const EcalTPGFineGrainEBIdMap::EcalTPGFineGrainEBMap map=ecaltpgFineGrainEB->getMap(); uint32_t ThresholdETLow, ThresholdETHigh, RatioLow, RatioHigh, LUT; std::cout<<std::endl; for (it=map.begin();it!=map.end();++it) { std::cout <<"FG "<<(*it).first<<std::endl; (*it).second.getValues(ThresholdETLow, ThresholdETHigh, RatioLow, RatioHigh, LUT); std::cout <<std::hex<<"0x"<<ThresholdETLow<<" 0x"<<ThresholdETHigh<<" 0x"<<RatioLow<<" 0x"<<RatioHigh<<" 0x"<<LUT<<std::endl; } }
void EcalTPCondAnalyzer::printEcalTPGLutIdMap | ( | const EcalTPGLutIdMap * | ecaltpgLut | ) | const [private] |
Definition at line 234 of file EcalTPCondAnalyzer.cc.
References gather_cfg::cout, EcalTPGLutIdMap::getMap(), and i.
Referenced by getRecords().
{ EcalTPGLutIdMap::EcalTPGLutMapItr it; const EcalTPGLutIdMap::EcalTPGLutMap map=ecaltpgLut->getMap(); std::cout<<std::endl; for (it=map.begin();it!=map.end();++it) { std::cout <<"LUT "<<(*it).first<<std::endl; const unsigned int * lut=(*it).second.getLut(); for (unsigned int i=0;i<1024;++i) std::cout <<std::hex<<"0x"<<*lut++<<std::endl; } }
void EcalTPCondAnalyzer::printEcalTPGPhysicsConst | ( | const EcalTPGPhysicsConst * | ecaltpgPhysConst | ) | const [private] |
Definition at line 156 of file EcalTPCondAnalyzer.cc.
References gather_cfg::cout, and EcalTPGPhysicsConst::getMap().
Referenced by getRecords().
{ EcalTPGPhysicsConstMapIterator it; const EcalTPGPhysicsConstMap mymap=ecaltpgPhysConst->getMap(); for (it=mymap.begin();it!=mymap.end();++it) { if (it==mymap.begin()) { std::cout<<"\nPHYSICS_EB "<<(*it).first<<std::endl; } else { std::cout<<"\nPHYSICS_EE "<<(*it).first<<std::endl; } std::cout<<(*it).second.EtSat<<" "<<(*it).second.ttf_threshold_Low<<" "<<(*it).second.ttf_threshold_High<<std::endl; std::cout<<(*it).second.FG_lowThreshold<<" "<<(*it).second.FG_highThreshold<<" "<<(*it).second.FG_lowRatio<<" "<<(*it).second.FG_highRatio<<std::endl; } }
void EcalTPCondAnalyzer::printSTRIP | ( | const EcalTPGSlidingWindow * | ecaltpgSlidW, |
const EcalTPGWeightGroup * | ecaltpgWeightGroup, | ||
const EcalTPGFineGrainStripEE * | ecaltpgFgStripEE | ||
) | const [private] |
Definition at line 170 of file EcalTPCondAnalyzer.cc.
References gather_cfg::cout, EcalTPGFineGrainStripEE::getMap(), EcalTPGGroups::getMap(), EcalTPGFineGrainStripEE::Item::lut, EcalTriggerElectronicsId::subdet(), and EcalTPGFineGrainStripEE::Item::threshold.
Referenced by getRecords().
{ // print STRIP information const EcalTPGSlidingWindowMap &slwinmap = slWin -> getMap(); const EcalTPGFineGrainStripEEMap &fgstripEEmap= ecaltpgFgStripEE->getMap(); EcalTPGSlidingWindowMapIterator it; const EcalTPGGroups::EcalTPGGroupsMap &gMap=ecaltpgWeightGroup->getMap(); EcalTPGGroups::EcalTPGGroupsMapItr groupId; std::cout<<std::endl; for (int mysub=1;mysub<=2;++mysub) { std::cout<<std::endl; for (it=slwinmap.begin();it!=slwinmap.end();++it) { EcalTriggerElectronicsId elid((*it).first); groupId=gMap.find((*it).first); int subdet =elid.subdet(); if (subdet==mysub) { if (subdet==1) { std::cout<<"STRIP_EB "<<std::dec<<(*it).first<<std::endl; std::cout << std::hex << "0x" <<(*it).second<<std::endl ; std::cout <<" " <<(*groupId).second<< std::endl ; //weightgroupid }else if (subdet==2) { std::cout<<"STRIP_EE "<<std::dec<<(*it).first<<std::endl; std::cout << std::hex << "0x" <<(*it).second<<std::endl ; std::cout <<" " <<(*groupId).second<<std::endl ;//weightgroupid EcalTPGFineGrainStripEEMapIterator it2=fgstripEEmap.find((*it).first); if (it2==fgstripEEmap.end()) { edm::LogWarning("EcalTPGCondAnalyzer") <<" could not find strip Id "<<(*it).first<<", given in sliding window, inside the EcalTPGFineGranStripEEMap!!!"; } else { EcalTPGFineGrainStripEE::Item item=(*it2).second; std::cout<<std::hex<<"0x"<<item.threshold<<" 0x"<<item.lut<<std::endl ; } } } } } }
void EcalTPCondAnalyzer::printTOWEREB | ( | const EcalTPGFineGrainEBGroup * | ecaltpgFgEBGroup, |
const EcalTPGLutGroup * | ecaltpgLutGroup | ||
) | const [private] |
Definition at line 353 of file EcalTPCondAnalyzer.cc.
References gather_cfg::cout, and EcalTPGGroups::getMap().
Referenced by getRecords().
{ const EcalTPGGroups::EcalTPGGroupsMap &lutMap=ecaltpgLutGroup->getMap(); EcalTPGGroups::EcalTPGGroupsMapItr lutGroupId; const EcalTPGGroups::EcalTPGGroupsMap &fgMap=ecaltpgFgEBGroup->getMap(); EcalTPGGroups::EcalTPGGroupsMapItr it; std::cout<<std::endl; for (it=fgMap.begin();it!=fgMap.end();++it) { std::cout <<"TOWER_EB "<<std::dec<<(*it).first<<std::endl; lutGroupId=lutMap.find((*it).first); std::cout <<" "<<(*it).second<<std::endl; std::cout <<" "<<(*lutGroupId).second<<std::endl; } }
void EcalTPCondAnalyzer::printTOWEREE | ( | const EcalTPGFineGrainTowerEE * | ecaltpgFineGrainTowerEE, |
const EcalTPGLutGroup * | ecaltpgLutGroup | ||
) | const [private] |
Definition at line 369 of file EcalTPCondAnalyzer.cc.
References gather_cfg::cout, EcalTPGFineGrainTowerEE::getMap(), and EcalTPGGroups::getMap().
Referenced by getRecords().
{ EcalTPGFineGrainTowerEEMapIterator it; const EcalTPGFineGrainTowerEEMap map=ecaltpgFineGrainTowerEE->getMap(); const EcalTPGGroups::EcalTPGGroupsMap &lutMap=ecaltpgLutGroup->getMap(); EcalTPGGroups::EcalTPGGroupsMapItr lutGroupId; std::cout<<std::endl; for (it=map.begin();it!=map.end();++it) { std::cout <<"TOWER_EE "<<std::dec<<(*it).first<<std::endl; lutGroupId=lutMap.find((*it).first); std::cout <<" "<<(*lutGroupId).second<<std::endl; std::cout <<std::hex<<"0x"<<(*it).second<<std::endl; } }
void EcalTPCondAnalyzer::printWEIGHT | ( | const EcalTPGWeightIdMap * | ecaltpgWeightMap | ) | const [private] |
Definition at line 207 of file EcalTPCondAnalyzer.cc.
References gather_cfg::cout, EcalTPGWeightIdMap::getMap(), w2, w3, and w4.
Referenced by getRecords().
{ std::cout<<std::endl; EcalTPGWeightIdMap::EcalTPGWeightMapItr it; uint32_t w0,w1,w2,w3,w4; const EcalTPGWeightIdMap::EcalTPGWeightMap map=ecaltpgWeightIdMap->getMap(); for (it=map.begin();it!=map.end();++it) { std::cout <<"WEIGHT "<<(*it).first<<std::endl; (*it).second.getValues(w0,w1,w2,w3,w4); std::cout <<std::hex<<"0x"<<w0<<" 0x"<<w1<<" 0x"<<w2<<" 0x"<<w3<<" 0x"<<w4<<" "<<std::endl; } }
unsigned long long EcalTPCondAnalyzer::cacheID_ [private] |
Definition at line 66 of file EcalTPCondAnalyzer.h.
Referenced by beginRun().
const CaloSubdetectorGeometry* EcalTPCondAnalyzer::theBarrelGeometry_ [private] |
Definition at line 69 of file EcalTPCondAnalyzer.h.
Referenced by beginRun(), and printCRYSTAL().
const CaloSubdetectorGeometry* EcalTPCondAnalyzer::theEndcapGeometry_ [private] |
Definition at line 68 of file EcalTPCondAnalyzer.h.
Referenced by beginRun(), and printCRYSTAL().