![]() |
![]() |
00001 #include "DataFormats/ParticleFlowReco/interface/PFLayer.h" 00002 00003 #include <assert.h> 00004 #include <iostream> 00005 00006 using namespace reco; 00007 using namespace std; 00008 00009 CaloID PFLayer::toCaloID( Layer layer) { 00010 00011 switch(layer) { 00012 case PS2 : return CaloID(CaloID::DET_PS2); 00013 case PS1 : return CaloID(CaloID::DET_PS1); 00014 case ECAL_ENDCAP : return CaloID(CaloID::DET_ECAL_ENDCAP); 00015 case ECAL_BARREL : return CaloID(CaloID::DET_ECAL_BARREL); 00016 case HCAL_BARREL1 : return CaloID(CaloID::DET_HCAL_BARREL); 00017 case HCAL_BARREL2 : return CaloID(CaloID::DET_HO); 00018 case HCAL_ENDCAP : return CaloID(CaloID::DET_HCAL_ENDCAP); 00019 case HCAL_HF : return CaloID(CaloID::DET_HF); 00020 default : return CaloID(); 00021 } 00022 } 00023 00024 00025 PFLayer::Layer PFLayer::fromCaloID( const CaloID& id) { 00026 00027 // cout<<"PFLayer::fromCaloID "<<id<<" "<<id.detector()<<endl; 00028 if( !id.isSingleDetector() ) { 00029 assert(0); 00030 } 00031 00032 switch( id.detector() ) { 00033 case CaloID::DET_ECAL_BARREL : return ECAL_BARREL; 00034 case CaloID::DET_ECAL_ENDCAP : return ECAL_ENDCAP; 00035 case CaloID::DET_PS1 : return PS1; 00036 case CaloID::DET_PS2 : return PS2; 00037 case CaloID::DET_HCAL_BARREL : return HCAL_BARREL1; 00038 case CaloID::DET_HCAL_ENDCAP : return HCAL_ENDCAP; 00039 case CaloID::DET_HF : return HCAL_HF; 00040 case CaloID::DET_HO : return HCAL_BARREL2; 00041 default : return NONE; 00042 } 00043 }