File indexing completed on 2024-04-06 12:11:53
0001
0002
0003
0004
0005
0006 #include "Rtypes.h"
0007 #include "TVector3.h"
0008 #include "Fireworks/Core/interface/FWDetailViewGL.h"
0009 #include "Fireworks/Core/interface/CSGActionSupervisor.h"
0010
0011 class TGLEmbeddedViewer;
0012 class FWIntValueListener;
0013 class TGSlider;
0014 namespace reco {
0015 class Track;
0016 }
0017
0018 class FWTrackHitsDetailView : public FWDetailViewGL<reco::Track>, public CSGActionSupervisor {
0019 public:
0020 FWTrackHitsDetailView();
0021 ~FWTrackHitsDetailView() override;
0022
0023 void pickCameraCenter();
0024 void transparencyChanged(int);
0025 void rnrLabels();
0026
0027 void setBackgroundColor(Color_t) override;
0028
0029 protected:
0030 TEveElementList* m_modules;
0031 TEveElementList* m_moduleLabels;
0032 TEveElementList* m_hits;
0033 TGSlider* m_slider;
0034 FWIntValueListener* m_sliderListener;
0035
0036 public:
0037 FWTrackHitsDetailView(const FWTrackHitsDetailView&) = delete;
0038 const FWTrackHitsDetailView& operator=(const FWTrackHitsDetailView&) = delete;
0039
0040 private:
0041 using FWDetailView<reco::Track>::build;
0042 void build(const FWModelId& id, const reco::Track*) override;
0043 using FWDetailView<reco::Track>::setTextInfo;
0044 void setTextInfo(const FWModelId& id, const reco::Track*) override;
0045 void makeLegend(void);
0046
0047 void addTrackerHits3D(std::vector<TVector3>& points, class TEveElementList* tList, Color_t color, int size);
0048
0049 void addHits(const reco::Track& track, const FWEventItem* iItem, TEveElement* trkList, bool addNearbyHits);
0050 void addModules(const reco::Track& track, const FWEventItem* iItem, TEveElement* trkList, bool addLostHits);
0051
0052 TLegend* m_legend;
0053 };