BOSS 7.0.2
BESIII Offline Software System
Loading...
Searching...
No Matches
InstallArea/include/BesVisLib/BesVisLib/Mdc2DWire.h
Go to the documentation of this file.
1
2#ifndef MDC_2D_WIRE_H
3#define MDC_2D_WIRE_H
4
5#include <TNamed.h>
6#include <TAttLine.h>
7#include <TAttFill.h>
8#include <TPaveLabel.h>
9#include <TPaveText.h>
10#include <TVector3.h>
11
12#include "BesCircle2D.h"
13#include "BesPolygon2D.h"
14#include "BesMarker2D.h"
15#include "BesPaveText.h"
16
17class Mdc2DWire : public TNamed, public TAttLine, public TAttFill
18{
19 public:
20
22 Mdc2DWire(const char* name, const char* title, Double_t rmin, Double_t rmax, Double_t dz,
23 Double_t phi, Double_t *center );
24 Mdc2DWire(const char* name, const char* title, Int_t N, Double_t *P);
26
27 virtual void Init();
28 virtual void SetStyle();
29 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
30 virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
31
32 virtual void SetHighlighted(bool status = true) { fHighlighted = status; }
33 virtual void SetFired(bool status = true) { fFired = status; }
34 virtual bool IsHighlighted() { return fHighlighted; }
35 virtual bool IsFired() { return fFired; }
36
37 virtual void AddInfo(TString info) { fInfoCon.push_back(info); }
38 virtual void CloseInfo();
39 virtual void ClearInfo();
40
41 virtual void Draw(Option_t *option = "");
42 virtual void Paint(Option_t *option = "");
43 virtual char *GetObjectInfo(Int_t px, Int_t py) const;
44
45 virtual bool HasZRSection();
46 Double_t Range360(Double_t input);
47 void SetTime(Double_t time);
48 void SetCharge(Double_t charge);
49 void SetColorfulWire(Bool_t colorfulWire, Bool_t subEvTime);
50 void SetQOverflow(Bool_t qOvfl);
51 void SetEvTime(Double_t time);
52
53 private:
54
55 Int_t fWireType; // 1: Axial wire 2: Stereo wire
56
57 BesPolygon2D *fTube;
58 BesCircle2D *fWireCircle;
59 BesPolygon2D *fWireCone;
60 BesMarker2D *fZRPosMarker2D;
61
62 Double_t fWestHole[3], fEastHole[3];
63 Double_t fWestPhi, fEastPhi;
64 Double_t fZRSectionPos[3];
65 Bool_t fZRSectionFlag;
66
67 std::vector<TString> fInfoCon;
68 BesPaveText *fTip;
69 Bool_t fHighlighted;
70 Bool_t fFired;
71 Bool_t fColorfulWire;
72 Bool_t qOverflow;
73
74 // style
75 Int_t lcTube;
76 Int_t lwTube;
77 Int_t fcTube;
78 Int_t fsTube;
79
80 Int_t lcWire;
81 Int_t lwCircle;
82 Int_t lwCone;
83 Int_t fcCircle;
84 Int_t fcCone;
85 Int_t fsCircle;
86 Int_t fsCone;
87
88 Int_t lcWireFired;
89 Int_t lwCircleFired;
90 Int_t lwConeFired;
91 Int_t fcCircleFired;
92 Int_t fcConeFired;
93 Int_t fsCircleFired;
94 Int_t fsConeFired;
95
96 Int_t lcWireHL;
97 Int_t lwCircleHL;
98 Int_t lwConeHL;
99 Int_t fcCircleHL;
100 Int_t fcConeHL;
101 Int_t fsCircleHL;
102 Int_t fsConeHL;
103
104 Int_t sizeMarker;
105 Int_t cMarker;
106 Int_t cMarkerFired;
107 Int_t cMarkerHL;
108 Int_t sMarker;
109 Int_t sMarkerFired;
110 Int_t sMarkerHL;
111
112 Double_t mdcTime;
113 Double_t mdcCharge;
114 Double_t evTime;
115
116 ClassDef(Mdc2DWire,1) // Mdc 2D Wire
117};
118
119#endif
double P(RecMdcKalTrack *trk)
Double_t time
titledef title[20]
virtual void CloseInfo()
void SetQOverflow(Bool_t qOvfl)
Mdc2DWire(const char *name, const char *title, Double_t rmin, Double_t rmax, Double_t dz, Double_t phi, Double_t *center)
virtual void SetHighlighted(bool status=true)
virtual void ClearInfo()
virtual void SetStyle()
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
void SetTime(Double_t time)
void SetColorfulWire(Bool_t colorfulWire, Bool_t subEvTime)
Mdc2DWire(const char *name, const char *title, Int_t N, Double_t *P)
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
Double_t Range360(Double_t input)
virtual char * GetObjectInfo(Int_t px, Int_t py) const
void SetEvTime(Double_t time)
virtual void Init()
virtual void Draw(Option_t *option="")
virtual void Paint(Option_t *option="")
virtual void SetFired(bool status=true)
void SetCharge(Double_t charge)
virtual bool HasZRSection()