CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
FWTrackResidualDetailView.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: TRacks
4 // Class : FWTrackDetailView
5 //
6 // Original Author: Chad Jarvis
7 // Created: Wed Mar 7 09:13:47 EST 2008
8 //
9 // Implementation:
10 // use following table pasted from HitPattern.h
11 //
12 // +-----+-----+-----+-----+-----+-----+-----+-----+----------------+-----+-----+
13 // |tk/mu| sub-structure | sub-sub-structure | stereo | hit type |
14 // +-----+-----+-----+-----+-----+-----+-----+-----+----------------+-----+-----+
15 // | 10 | 9 8 7 | 6 5 4 3 | 2 | 1 0 | bit
16 //
17 // |tk = 1 PXB = 1 layer = 1-3 hit type = 0-3
18 // |tk = 1 PXF = 2 disk = 1-2 hit type = 0-3
19 // |tk = 1 TIB = 3 layer = 1-4 0=rphi,1=stereo hit type = 0-3
20 // |tk = 1 TID = 4 wheel = 1-3 0=rphi,1=stereo hit type = 0-3
21 // |tk = 1 TOB = 5 layer = 1-6 0=rphi,1=stereo hit type = 0-3
22 // |tk = 1 TEC = 6 wheel = 1-9 0=rphi,1=stereo hit type = 0-3
23 // |mu = 0 DT = 1 layer hit type = 0-3
24 // |mu = 0 CSC = 2 layer hit type = 0-3
25 // |mu = 0 RPC = 3 layer hit type = 0-3
26 //
27 // hit type, see DataFormats/TrackingRecHit/interface/TrackingRecHit.h
28 // valid = valid hit = 0
29 // missing = detector is good, but no rec hit found = 1
30 // inactive = detector is off, so there was no hope = 2
31 // bad = there were many bad strips within the ellipse = 3
32 //
33 
34 #include "Rtypes.h"
36 
37 class FWGeometry;
38 class FWModelId;
39 class TEveWindowSlot;
40 class TEveWindow;
41 
42 namespace reco {
43  class Track;
44 }
45 
46 class FWTrackResidualDetailView : public FWDetailViewCanvas<reco::Track>{
47 public:
50 
51 private:
53  const FWTrackResidualDetailView& operator=(const FWTrackResidualDetailView&); // stop default
54 
56  virtual void build (const FWModelId &id, const reco::Track*);
58  virtual void setTextInfo(const FWModelId &id, const reco::Track*);
59 
60  double getSignedResidual (const FWGeometry *geom, unsigned int id, double resX);
61  void prepareData(const FWModelId &id, const reco::Track*);
62  void printDebug();
63 
64  int m_ndet;
65  int m_nhits;
66  int m_det[64];
67  float res[2][64];
68  int hittype[64];
69  int stereo[64];
70  int substruct[64];
71  int subsubstruct[64];
72  int m_detector[64];
73 
74  Int_t m_resXFill;
75  Color_t m_resXCol;
76  Int_t m_resYFill;
77  Color_t m_resYCol;
78  Int_t m_stereoFill;
79  Color_t m_stereoCol;
81  Color_t m_invalidCol;
82 
83  const static char* m_det_tracker_str[];
84 };
double getSignedResidual(const FWGeometry *geom, unsigned int id, double resX)
void prepareData(const FWModelId &id, const reco::Track *)
virtual void build(const FWModelId &id, const reco::Track *)
const FWTrackResidualDetailView & operator=(const FWTrackResidualDetailView &)
static const char * m_det_tracker_str[]
virtual void setTextInfo(const FWModelId &id, const reco::Track *)