CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_2_9_HLT1_bphpatch4/src/Fireworks/Electrons/plugins/FWElectronDetailView.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #ifndef Fireworks_Electrons_FWElectronDetailView_h
00003 #define Fireworks_Electrons_FWElectronDetailView_h
00004 
00005 //
00006 // Package:     Electrons
00007 // Class  :     FWElectronDetailView
00008 //
00009 // Implementation:
00010 //     <Notes on implementation>
00011 //
00012 // Original Author:
00013 //         Created:  Sun Jan  6 23:57:00 EST 2008
00014 // $Id: FWElectronDetailView.h,v 1.22 2011/02/28 10:32:01 amraktad Exp $
00015 //
00016 
00017 // user include files
00018 #include "Fireworks/Core/interface/FWDetailViewGL.h"
00019 #include "DataFormats/EgammaReco/interface/BasicCluster.h"
00020 
00021 class TEveCaloDataVec;
00022 class TEveCaloLego;
00023 class TLegend;
00024 class FWECALDetailViewBuilder;
00025 
00026 namespace reco {
00027   class GsfElectron;
00028 }
00029 
00030 
00031 class FWElectronDetailView : public FWDetailViewGL<reco::GsfElectron>
00032 {
00033 public:
00034    FWElectronDetailView();
00035    virtual ~FWElectronDetailView();
00036 
00037 private:
00038    FWElectronDetailView(const FWElectronDetailView&); // stop default
00039    const FWElectronDetailView& operator=(const FWElectronDetailView&); // stop default
00040 
00041    virtual void build (const FWModelId &id, const reco::GsfElectron*);
00042    virtual void setTextInfo(const FWModelId &id, const reco::GsfElectron*);
00043 
00044    double deltaEtaSuperClusterTrackAtVtx (const reco::GsfElectron &);
00045    double deltaPhiSuperClusterTrackAtVtx (const reco::GsfElectron &);
00046    void addTrackPointsInCaloData(const reco::GsfElectron*, TEveCaloLego*);
00047 
00048    void   addSceneInfo(const reco::GsfElectron *i, TEveElementList* tList);
00049    void   drawCrossHair(const reco::GsfElectron*, TEveCaloLego*, TEveElementList*);
00050 
00051    Bool_t checkRange(Double_t &, Double_t&, Double_t &, Double_t&, Double_t, Double_t);
00052 
00053    TEveCaloData            *m_data;
00054    FWECALDetailViewBuilder *m_builder;
00055    TLegend                 *m_legend;
00056 };
00057 
00058 #endif