2#ifndef EMC_2D_CRYSTAL_H
3#define EMC_2D_CRYSTAL_H
18class Emc2DCrystal :
public TNamed,
public TAttLine,
public TAttFill {
27 virtual void ExecuteEvent( Int_t event, Int_t px, Int_t py );
30 virtual void SetFired(
bool status =
true ) { fFired = status; }
34 virtual void AddInfo( TString info ) { fInfoCon.push_back( info ); }
39 virtual void SetCharge( Double_t charge ) { fCharge = charge; }
40 virtual Double_t
GetTime() {
return fTime; }
47 virtual void Draw( Option_t* option =
"" );
48 virtual void Paint( Option_t* option =
"" );
54 Double_t
GetAngle( Double_t x, Double_t y );
59 virtual void SetXYPoint( Double_t*
p1, Double_t*
p2, Double_t* newP, Double_t z );
60 virtual void SetZRPoint( Double_t*
p1, Double_t*
p2, Double_t* newP, Double_t r );
73 static const Int_t fChargeMax = 300;
74 Double_t fTime, fCharge;
76 Double_t fZRSectionTolerance[3];
77 Double_t fPhiMin, fPhiMax;
83 static const Int_t ecXYPointZ = 1420;
84 static const Int_t brZRPointR =
86 static const Int_t sideDeltaPhi = 21;
88 std::vector<TString> fInfoCon;
100 Int_t lcCrystalFired;
101 Int_t lwCrystalFired;
102 Int_t fcCrystalFired;
103 Int_t fsCrystalFired;
110 Int_t lcCrystalFiredHL;
111 Int_t lwCrystalFiredHL;
112 Int_t fcCrystalFiredHL;
113 Int_t fsCrystalFiredHL;
double P(RecMdcKalTrack *trk)
virtual void SetFired(bool status=true)
virtual void ProjectECToSide(Double_t *p1, Double_t *newP)
virtual void SetZRPoint(Double_t *p1, Double_t *p2, Double_t *newP, Double_t r)
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual bool IsSideVisible()
virtual void ResetTimeCharge()
Double_t GetAngle(Double_t x, Double_t y)
virtual char * GetObjectInfo(Int_t px, Int_t py) const
virtual Double_t GetTime()
virtual void SetTime(Double_t time)
virtual void AddInfo(TString info)
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
virtual bool HasZRSection()
Double_t Range360(Double_t input)
virtual void SetHighlighted(bool status=true)
virtual bool IsXYVisible()
virtual void Paint(Option_t *option="")
virtual bool IsHighlighted()
virtual void SetCharge(Double_t charge)
virtual Double_t GetCharge()
virtual void SetXYPoint(Double_t *p1, Double_t *p2, Double_t *newP, Double_t z)