![]() |
![]() |
00001 /* 00002 * FWCastorRecHitProxyBuilder.cc 00003 * cmsShow 00004 * 00005 * Created by Ianna Osborne on 7/8/10. 00006 * 00007 */ 00008 #include "Fireworks/Calo/plugins/FWCaloRecHitDigitSetProxyBuilder.h" 00009 #include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h" 00010 00011 class FWCastorRecHitProxyBuilder : public FWCaloRecHitDigitSetProxyBuilder 00012 { 00013 public: 00014 FWCastorRecHitProxyBuilder( void ) {} 00015 virtual ~FWCastorRecHitProxyBuilder( void ) {} 00016 00017 00018 virtual float scaleFactor(const FWViewContext* vc) { return 10 * FWCaloRecHitDigitSetProxyBuilder::scaleFactor(vc); } 00019 00020 REGISTER_PROXYBUILDER_METHODS(); 00021 00022 private: 00023 FWCastorRecHitProxyBuilder( const FWCastorRecHitProxyBuilder& ); 00024 const FWCastorRecHitProxyBuilder& operator=( const FWCastorRecHitProxyBuilder& ); 00025 }; 00026 00027 REGISTER_FWPROXYBUILDER( FWCastorRecHitProxyBuilder, CastorRecHitCollection, "Castor RecHit", FWViewType::kISpyBit ); 00028 00029 // AMT:: scale box round center. Scaleing and e/et added now. Previously used fireworks::energyTower3DCorners(); 00030 00031 /* 00032 void FWCastorRecHitProxyBuilder::build(const FWEventItem* iItem, TEveElementList* product, const FWViewContext*) 00033 { 00034 const CastorRecHitCollection* collection = 0; 00035 iItem->get( collection ); 00036 if (! collection) 00037 return; 00038 00039 00040 TEveBoxSet* boxSet = addBoxSetToProduct(product); 00041 int index = 0; 00042 for (std::vector<CastorRecHit>::const_iterator it = collection->begin() ; it != collection->end(); ++it) 00043 { 00044 const float* corners = item()->getGeom()->getCorners((*it).detid()); 00045 if (corners == 0) 00046 continue; 00047 00048 std::vector<float> scaledCorners(24); 00049 fireworks::energyTower3DCorners(corners, (*it).energy() * 10, scaledCorners); 00050 00051 addBox(boxSet, &scaledCorners[0], iItem->modelInfo(index++).displayProperties()); 00052 } 00053 } 00054 */