CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
FWPFClusterLegoProxyBuilder.h
Go to the documentation of this file.
1 #ifndef _FWPFCLUSTERLEGOPROXYBUILDER_H_
2 #define _FWPFCLUSTERLEGOPROXYBUILDER_H_
3 
4 // -*- C++ -*-
5 //
6 // Package: ParticleFlow
7 // Class : FWPFClusterLegoProxyBuilder, FWPFEcalClusterLegoProxyBuilder, FWPFHcalClusterLegoProxyBuilder
8 //
9 // Implementation:
10 // <Notes on implementation>
11 //
12 // Original Author: Simon Harris
13 //
14 
15 // System include files
16 #include <math.h>
17 #include "TEveBox.h"
18 
19 // User include files
26 
27 //-----------------------------------------------------------------------------
28 // FWPFClusterLegoProxyBuilder
29 //-----------------------------------------------------------------------------
30 
32 {
33  public:
34  static std::string typeOfBuilder() { return "simple#"; }
35 
36  // ---------------- Constructor(s)/Destructor ----------------------
39 
40  // --------------------- Member Functions --------------------------
42  virtual void scaleProduct( TEveElementList *parent, FWViewType::EType, const FWViewContext *vc );
44  virtual bool havePerViewProduct(FWViewType::EType) const { return true; }
46  virtual void localModelChanges( const FWModelId &iId, TEveElement *el,
47  FWViewType::EType viewType, const FWViewContext *vc );
48 
50 
51  protected:
52  // --------------------- Member Functions --------------------------
53  void sharedBuild( const reco::PFCluster&, TEveElement&, const FWViewContext* );
54  float calculateEt( const reco::PFCluster &cluster, float E );
55 
56  private:
57  // Disable default copy constructor
59  // Disable default assignment operator
61 };
62 //=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_
63 
64 //-----------------------------------------------------------------------------
65 // FWPFEcalClusterLegoProxyBuilder
66 //-----------------------------------------------------------------------------
67 
69 {
70  public:
71  // ---------------- Constructor(s)/Destructor ----------------------
74 
75  // --------------------- Member Functions --------------------------
77  virtual void build( const reco::PFCluster&, unsigned int, TEveElement&, const FWViewContext* );
78 
80 
81  private:
84 };
85 //=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_
86 
87 //-----------------------------------------------------------------------------
88 // FWPFHcalClusterLegoProxyBuilder
89 //-----------------------------------------------------------------------------
90 
92 {
93  public:
94  // ---------------- Constructor(s)/Destructor ----------------------
97 
98  // --------------------- Member Functions --------------------------
100  virtual void build( const reco::PFCluster&, unsigned int, TEveElement&, const FWViewContext* );
101 
103 
104  private:
107 };
108 #endif
109 //=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_
#define REGISTER_PROXYBUILDER_METHODS()
Particle flow cluster, see clustering algorithm in PFClusterAlgo.
Definition: PFCluster.h:47
const FWPFClusterLegoProxyBuilder & operator=(const FWPFClusterLegoProxyBuilder &)
virtual void scaleProduct(TEveElementList *parent, FWViewType::EType, const FWViewContext *vc)
const FWPFHcalClusterLegoProxyBuilder & operator=(const FWPFHcalClusterLegoProxyBuilder &)
void sharedBuild(const reco::PFCluster &, TEveElement &, const FWViewContext *)
virtual bool havePerViewProduct(FWViewType::EType) const
virtual void localModelChanges(const FWModelId &iId, TEveElement *el, FWViewType::EType viewType, const FWViewContext *vc)
float calculateEt(const reco::PFCluster &cluster, float E)
const FWPFEcalClusterLegoProxyBuilder & operator=(const FWPFEcalClusterLegoProxyBuilder &)