Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-10-25 09:46:32

0001 // -*- C++ -*-
0002 #ifndef Fireworks_Electrons_FWElectronDetailView_h
0003 #define Fireworks_Electrons_FWElectronDetailView_h
0004 
0005 //
0006 // Package:     Electrons
0007 // Class  :     FWElectronDetailView
0008 //
0009 // Implementation:
0010 //     <Notes on implementation>
0011 //
0012 // Original Author:
0013 //         Created:  Sun Jan  6 23:57:00 EST 2008
0014 //
0015 
0016 // user include files
0017 #include "Fireworks/Core/interface/FWDetailViewGL.h"
0018 #include "DataFormats/EgammaReco/interface/BasicCluster.h"
0019 
0020 class TEveCaloDataVec;
0021 class TEveCaloLego;
0022 class TLegend;
0023 class FWECALDetailViewBuilder;
0024 class TEveCaloData;
0025 class TGSlider;
0026 
0027 namespace reco {
0028   class GsfElectron;
0029 }
0030 
0031 class FWElectronDetailView : public FWDetailViewGL<reco::GsfElectron> {
0032 public:
0033   FWElectronDetailView();
0034   ~FWElectronDetailView() override;
0035 
0036   FWElectronDetailView(const FWElectronDetailView &) = delete;                   // stop default
0037   const FWElectronDetailView &operator=(const FWElectronDetailView &) = delete;  // stop default
0038 
0039 private:
0040   using FWDetailViewGL<reco::GsfElectron>::build;
0041   void build(const FWModelId &id, const reco::GsfElectron *) override;
0042 
0043   using FWDetailViewGL<reco::GsfElectron>::setTextInfo;
0044   void setTextInfo(const FWModelId &id, const reco::GsfElectron *) override;
0045 
0046   double deltaEtaSuperClusterTrackAtVtx(const reco::GsfElectron &);
0047   double deltaPhiSuperClusterTrackAtVtx(const reco::GsfElectron &);
0048   void addTrackPointsInCaloData(const reco::GsfElectron *, TEveCaloLego *);
0049 
0050   void addSceneInfo(const reco::GsfElectron *i, TEveElementList *tList);
0051   void drawCrossHair(const reco::GsfElectron *, TEveCaloLego *, TEveElementList *);
0052 
0053   Bool_t checkRange(Double_t &, Double_t &, Double_t &, Double_t &, Double_t, Double_t);
0054 
0055   TEveCaloData *m_data;
0056   FWECALDetailViewBuilder *m_builder;
0057   TLegend *m_legend;
0058 };
0059 
0060 #endif