CMS 3D CMS Logo

FWRPZView.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_FWRPZView_h
2 #define Fireworks_Core_FWRPZView_h
3 // -*- C++ -*-
4 //
5 // Package: Core
6 // Class : FWRPZView
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Tue Feb 19 10:33:21 EST 2008
19 //
20 
21 // system include files
22 #include <string>
23 
24 // user include files
29 #include "TEveVector.h"
30 
31 // forward declarations
32 class TEveProjectionManager;
33 class TGLMatrix;
34 class TEveCalo2D;
35 class TEveProjectionAxes;
36 class TEveWindowSlot;
37 class FWColorManager;
38 class FWRPZViewGeometry;
39 
40 class FWRPZView : public FWEveView {
41 public:
42  FWRPZView(TEveWindowSlot* iParent, FWViewType::EType);
43  ~FWRPZView() override;
44 
45  // ---------- const member functions ---------------------
46 
47  void addTo(FWConfiguration&) const override;
48  void populateController(ViewerParameterGUI&) const override;
49  TEveCaloViz* getEveCalo() const override;
50 
51  // ---------- member functions ---------------------------
52  void setContext(const fireworks::Context&) override;
53  void setFrom(const FWConfiguration&) override;
54  void voteCaloMaxVal() override;
55 
56  void eventBegin() override;
57  void eventEnd() override;
58  void setupEventCenter() override;
59 
60  //returns the new element created from this import
61  void importElements(TEveElement* iProjectableChild, float layer, TEveElement* iProjectedParent = nullptr);
62 
63  void shiftOrigin(TEveVector& center);
64  void resetOrigin();
65 
66  FWRPZView(const FWRPZView&) = delete; // stop default
67  const FWRPZView& operator=(const FWRPZView&) = delete; // stop default
68 
69 private:
70  void doPreScaleDistortion();
71  void doFishEyeDistortion();
72  void doCompression(bool);
74 
75  void setEtaRng();
76 
77  void showProjectionAxes();
79 
80  // ---------- member data --------------------------------
81  const static float s_distortF;
82  const static float s_distortFInv;
83 
85  TEveProjectionManager* m_projMgr;
86  TEveProjectionAxes* m_axes;
87  TEveCalo2D* m_calo;
88 
89  // parameters
90 
98 
102 
108 
111 };
112 
113 #endif
void doShiftOriginToBeamSpot()
Definition: FWRPZView.cc:211
void doFishEyeDistortion()
Definition: FWRPZView.cc:252
FWBoolParameter m_shiftOrigin
Definition: FWRPZView.h:99
void setupEventCenter() override
Definition: FWRPZView.cc:204
FWBoolParameter m_showProjectionAxes
Definition: FWRPZView.h:105
FWRPZView(TEveWindowSlot *iParent, FWViewType::EType)
Definition: FWRPZView.cc:46
TEveCalo2D * m_calo
Definition: FWRPZView.h:87
TEveCaloViz * getEveCalo() const override
Definition: FWRPZView.cc:137
FWBoolParameter m_showME0
Definition: FWRPZView.h:97
FWDoubleParameter m_projectionAxesLabelSize
Definition: FWRPZView.h:106
void voteCaloMaxVal() override
Definition: FWRPZView.cc:329
void eventEnd() override
Definition: FWRPZView.cc:197
void setFrom(const FWConfiguration &) override
Definition: FWRPZView.cc:301
void setContext(const fireworks::Context &) override
Definition: FWRPZView.cc:139
void populateController(ViewerParameterGUI &) const override
Definition: FWRPZView.cc:368
TEveProjectionAxes * m_axes
Definition: FWRPZView.h:86
constexpr std::array< uint8_t, layerIndexSize > layer
FWBoolParameter * m_showHF
Definition: FWRPZView.h:109
void addTo(FWConfiguration &) const override
Definition: FWRPZView.cc:294
TEveProjectionManager * m_projMgr
Definition: FWRPZView.h:85
FWDoubleParameter m_fishEyeR
Definition: FWRPZView.h:101
void resetOrigin()
Definition: FWRPZView.cc:239
FWBoolParameter m_showRpcEndcap
Definition: FWRPZView.h:95
void doCompression(bool)
Definition: FWRPZView.cc:278
const FWRPZView & operator=(const FWRPZView &)=delete
void setEtaRng()
Definition: FWRPZView.cc:315
FWBoolParameter m_showTrackerBarrel
Definition: FWRPZView.h:93
void showProjectionAxes()
Definition: FWRPZView.cc:357
~FWRPZView() override
Definition: FWRPZView.cc:128
void eventBegin() override
Definition: FWRPZView.cc:176
FWBoolParameter m_compressMuon
Definition: FWRPZView.h:107
FWRPZViewGeometry * m_geometryList
Definition: FWRPZView.h:84
void shiftOrigin(TEveVector &center)
Definition: FWRPZView.cc:223
void doPreScaleDistortion()
Definition: FWRPZView.cc:263
FWBoolParameter * m_showEndcaps
Definition: FWRPZView.h:110
FWBoolParameter m_showGEM
Definition: FWRPZView.h:96
static const float s_distortFInv
Definition: FWRPZView.h:82
FWDoubleParameter m_fishEyeDistortion
Definition: FWRPZView.h:100
void importElements(TEveElement *iProjectableChild, float layer, TEveElement *iProjectedParent=nullptr)
Definition: FWRPZView.cc:285
FWBoolParameter m_showTrackerEndcap
Definition: FWRPZView.h:94
FWDoubleParameter m_muonDistortion
Definition: FWRPZView.h:104
FWBoolParameter m_showPixelEndcap
Definition: FWRPZView.h:92
FWDoubleParameter m_caloDistortion
Definition: FWRPZView.h:103
FWBoolParameter m_showPixelBarrel
Definition: FWRPZView.h:91
static const float s_distortF
Definition: FWRPZView.h:81
void projectionAxesLabelSize()
Definition: FWRPZView.cc:363