BOSS 7.0.6
BESIII Offline Software System
Loading...
Searching...
No Matches
BesGeoTrack.h
Go to the documentation of this file.
1
2#ifndef BESGEOTRACK_H
3#define BESGEOTRACK_H
4
5#include <vector>
6#include "TPaveText.h"
7#include "TGeoTrack.h"
8
9#include "BesMarker2D.h"
10#include "BesPaveText.h"
11
12class BesGeoTrack : public TGeoTrack {
13
14 public:
15
17 BesGeoTrack(Int_t id, Int_t pdgcode, TVirtualGeoTrack *parent=0, TObject *particle=0);
18 virtual ~BesGeoTrack();
19
20 virtual void Init();
21 virtual void AddHit(TObject* obj) { fHits.Add(obj); }
22 virtual void Add3DHit(TObject* obj) { f3DHits.Add(obj); } //Long Peixun's update: for 3D track display
23 virtual void AddInfo(TString info) { fInfoCon.push_back(info); }
24 virtual void CloseInfo();
25 virtual void SetCharge(Int_t charge);
26 virtual void SetTrackType(Int_t type) { fType = type; }
27
28 virtual void AddPoint(Double_t x, Double_t y, Double_t z, Double_t t);
29 virtual void SetMarker(Double_t x, Double_t y, Double_t z);
30 virtual void Construct3DLine(); //Long Peixun's update: construct but not draw
31 //BesMarker2D *GetMarker() { return fMarker; }
32
33 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
34 virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
35 virtual void Draw(Option_t *option = "");
36 virtual void Paint(Option_t *option = "");
37 virtual char *GetObjectInfo(Int_t px, Int_t py) const;
38
39 private:
40
41 TObjArray fHits;
42 TObjArray f3DHits; //Long Peixun's update: for 3D track display
43 std::vector<TString> fInfoCon;
44 Int_t fCharge;
45 Int_t fType; // 1: Mdc, 2: Tof, 3: Emc, 4: Muc, 5: Ext
46 //Long Peixun's update: 6: cluster in CGEM view, 7: cluster in CGEM UF view
47
48 BesPaveText *fTip;
49 TPolyLine3D *fPolyLine3D;
50 BesMarker2D *fMarker;
51
52 ClassDef(BesGeoTrack,1) // BesGeoTrack
53};
54
55#endif
56
57
TTree * t
Definition: binning.cxx:23
virtual void CloseInfo()
Definition: BesGeoTrack.cxx:54
virtual void SetTrackType(Int_t type)
Definition: BesGeoTrack.h:26
virtual void AddPoint(Double_t x, Double_t y, Double_t z, Double_t t)
Definition: BesGeoTrack.cxx:63
virtual char * GetObjectInfo(Int_t px, Int_t py) const
virtual void Construct3DLine()
virtual void SetMarker(Double_t x, Double_t y, Double_t z)
Definition: BesGeoTrack.cxx:68
virtual void Paint(Option_t *option="")
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual void Init()
Definition: BesGeoTrack.cxx:45
virtual void AddInfo(TString info)
Definition: BesGeoTrack.h:23
virtual ~BesGeoTrack()
Definition: BesGeoTrack.cxx:36
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
Definition: BesGeoTrack.cxx:96
virtual void AddHit(TObject *obj)
Definition: BesGeoTrack.h:21
virtual void Add3DHit(TObject *obj)
Definition: BesGeoTrack.h:22
virtual void SetCharge(Int_t charge)
double y[1000]
legend Draw()
float charge