CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
FWTauProxyBuilderBase.h
Go to the documentation of this file.
1 #ifndef Fireworks_Calo_FWTauProxyBuilderBase_h
2 #define Fireworks_Calo_FWTauProxyBuilderBase_h
3 
4 // -*- C++ -*-
5 //
6 // Package: Calo
7 // Class : FWTauProxyBuilderBase
8 //
17 //
18 // Original Author: Alja Mrak-Tadel
19 // Created: Thu Oct 21 20:40:32 CEST 2010
20 //
21 
25 #include <vector>
26 
27 class TEveScalableStraightLineSet;
28 class FWViewContext;
29 
30 namespace reco {
31  class Jet;
32  class BaseTau;
33 } // namespace reco
34 
35 namespace fireworks {
36  class Context;
37 }
38 
40 public:
42  ~FWTauProxyBuilderBase() override;
43 
44  bool haveSingleProduct() const override { return false; }
45  bool havePerViewProduct(FWViewType::EType) const override { return true; }
46  void scaleProduct(TEveElementList* parent, FWViewType::EType, const FWViewContext* vc) override;
47  void cleanLocal() override;
48 
49  void setItem(const FWEventItem* iItem) override;
50 
51 protected:
52  float m_minTheta;
53  float m_maxTheta;
54  std::vector<double> m_phis;
55  void buildBaseTau(const reco::BaseTau& iTau,
56  const reco::Jet* iJet,
57  TEveElement* comp,
59  const FWViewContext* vc);
60 
61  void localModelChanges(const FWModelId& iId,
62  TEveElement* iCompound,
63  FWViewType::EType viewType,
64  const FWViewContext* vc) override;
65 
66 public:
67  FWTauProxyBuilderBase(const FWTauProxyBuilderBase&) = delete; // stop default
68 
69  const FWTauProxyBuilderBase& operator=(const FWTauProxyBuilderBase&) = delete; // stop default
70 private:
71  // ---------- member data --------------------------------
72  // Add Tracks which passed quality cuts and
73  // are inside a tracker signal cone around leading Track
74  void addConstituentTracks(const reco::BaseTau& tau, class TEveElement* product);
75  // Add leading Track
76  void addLeadTrack(const reco::BaseTau& tau, class TEveElement* product);
77 };
78 
79 #endif
void scaleProduct(TEveElementList *parent, FWViewType::EType, const FWViewContext *vc) override
void addLeadTrack(const reco::BaseTau &tau, class TEveElement *product)
Base class for all types of Jets.
Definition: Jet.h:20
void setItem(const FWEventItem *iItem) override
void addConstituentTracks(const reco::BaseTau &tau, class TEveElement *product)
void buildBaseTau(const reco::BaseTau &iTau, const reco::Jet *iJet, TEveElement *comp, FWViewType::EType type, const FWViewContext *vc)
bool havePerViewProduct(FWViewType::EType) const override
void localModelChanges(const FWModelId &iId, TEveElement *iCompound, FWViewType::EType viewType, const FWViewContext *vc) override
const FWTauProxyBuilderBase & operator=(const FWTauProxyBuilderBase &)=delete
constexpr char Jet[]
Definition: modules.cc:9
std::vector< double > m_phis
bool haveSingleProduct() const override