![]() |
![]() |
00001 #include "Fireworks/Calo/plugins/FWCaloRecHitDigitSetProxyBuilder.h" 00002 #include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h" 00003 00004 class FWHBHERecHitProxyBuilder : public FWCaloRecHitDigitSetProxyBuilder 00005 { 00006 public: 00007 FWHBHERecHitProxyBuilder( void ) { invertBox(true); } 00008 virtual ~FWHBHERecHitProxyBuilder( void ) {} 00009 00010 REGISTER_PROXYBUILDER_METHODS(); 00011 00012 private: 00013 FWHBHERecHitProxyBuilder( const FWHBHERecHitProxyBuilder& ); 00014 const FWHBHERecHitProxyBuilder& operator=( const FWHBHERecHitProxyBuilder& ); 00015 }; 00016 00017 REGISTER_FWPROXYBUILDER( FWHBHERecHitProxyBuilder, HBHERecHitCollection, "HBHE RecHit", FWViewType::kISpyBit ); 00018 00019 00020 // AMT: Refelct box. Previously used energyScaledBox3DCorners() 00021 00022 /* 00023 void 00024 FWHBHERecHitProxyBuilder::build( const FWEventItem* iItem, TEveElementList* product, const FWViewContext* vc) 00025 { 00026 m_plotEt = vc->getEnergyScale()->getPlotEt(); 00027 00028 const HBHERecHitCollection* collection = 0; 00029 iItem->get( collection ); 00030 00031 if( 0 == collection ) 00032 { 00033 return; 00034 } 00035 std::vector<HBHERecHit>::const_iterator it = collection->begin(); 00036 std::vector<HBHERecHit>::const_iterator itEnd = collection->end(); 00037 std::vector<float> scaledCorners(24); 00038 00039 for( ; it != itEnd; ++it ) 00040 { 00041 if(( *it ).energy() > m_maxEnergy ) 00042 m_maxEnergy = ( *it ).energy(); 00043 } 00044 00045 TEveBoxSet* boxSet = addBoxSetToProduct(product); 00046 int index = 0; 00047 for (std::vector<HBHERecHit>::const_iterator it = collection->begin() ; it != collection->end(); ++it) 00048 { 00049 const float* corners = context().getGeom()->getCorners((*it).detid()); 00050 if (corners) 00051 { 00052 if (m_plotEt) 00053 fireworks::etScaledBox3DCorners(corners, (*it).energy(), m_maxEnergy, scaledCorners, true); 00054 else 00055 fireworks::energyScaledBox3DCorners(corners, (*it).energy() / m_maxEnergy, scaledCorners, true); 00056 } 00057 addBox(boxSet, &scaledCorners[0], iItem->modelInfo(index++).displayProperties()); 00058 } 00059 } 00060 */