Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:11:29

0001 #ifndef Fireworks_Calo_FWCandTowerProxyBuilder_h
0002 #define Fireworks_Calo_FWCandTowerProxyBuilder_h
0003 // -*- C++ -*-
0004 //
0005 // Package:     Calo
0006 #include "Rtypes.h"
0007 #include <string>
0008 
0009 #include "Fireworks/Calo/interface/FWCaloDataHistProxyBuilder.h"
0010 #include "DataFormats/Candidate/interface/CandidateFwd.h"
0011 #include "DataFormats/Candidate/interface/Candidate.h"
0012 
0013 #include "DataFormats/PatCandidates/interface/PackedCandidate.h"
0014 #include "Fireworks/Core/interface/FWSimpleProxyHelper.h"
0015 
0016 class FWHistSliceSelector;
0017 
0018 class FWCandidateTowerProxyBuilder : public FWCaloDataHistProxyBuilder {
0019 public:
0020   FWCandidateTowerProxyBuilder();
0021   ~FWCandidateTowerProxyBuilder() override;
0022   static std::string typeOfBuilder() { return std::string("simple#"); }
0023   virtual double getEt(const reco::Candidate& cand) const { return cand.pt(); }
0024 
0025   REGISTER_PROXYBUILDER_METHODS();
0026 
0027 protected:
0028   void fillCaloData() override;
0029   FWHistSliceSelector* instantiateSliceSelector() override;
0030   void build(const FWEventItem* iItem, TEveElementList* product, const FWViewContext*) override;
0031 
0032 public:
0033   FWCandidateTowerProxyBuilder(const FWCandidateTowerProxyBuilder&) = delete;                   // stop default
0034   const FWCandidateTowerProxyBuilder& operator=(const FWCandidateTowerProxyBuilder&) = delete;  // stop default
0035 
0036 private:
0037   virtual void itemChangedImp(const FWEventItem*);
0038   // ---------- member data --------------------------------
0039   FWSimpleProxyHelper m_helper;
0040 };
0041 
0042 #endif