StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StMuRHICfHit.h
1 #ifndef StMuRHICfHit_hh
2 #define StMuRHICfHit_hh
3 
4 #include <TObject.h>
5 #include <TArrayI.h>
6 #include <TArrayF.h>
8 
9 class StMuRHICfHit : public TObject
10 {
11  public:
12  StMuRHICfHit();
13  ~StMuRHICfHit();
14 
15  void clear();
16 
17  void initDataArray();
18  Bool_t isSaveDataArray();
19 
20  void setPlateEnergy(Int_t tower, Int_t plate, Float_t val);
21  void setGSOBarEnergy(Int_t tower, Int_t layer, Int_t xy, Int_t bar, Float_t val);
22 
23  void setL20(Int_t tower, Float_t val);
24  void setL90(Int_t tower, Float_t val);
25 
26  void setPointNum(Int_t tower, Int_t val);
27  void setGSOMaxLayer(Int_t tower, Int_t order, Int_t val);
28  void setMaxPeakBin(Int_t tower, Int_t layer, Int_t xy, Int_t val);
29 
30  void setSingleHitNum(Int_t tower, Int_t layer, Int_t xy, Int_t val);
31  void setSingleHitPos(Int_t tower, Int_t layer, Int_t xy, Float_t val);
32  void setSinglePeakHeight(Int_t tower, Int_t layer, Int_t xy, Float_t val);
33  void setSingleFitChi2(Int_t tower, Int_t layer, Int_t xy, Float_t val);
34 
35  void setMultiHitNum(Int_t tower, Int_t val);
36  void setMultiHitPos(Int_t tower, Int_t layer, Int_t xy, Int_t order, Float_t val);
37  void setMultiPeakHeight(Int_t tower, Int_t layer, Int_t xy, Int_t order, Float_t val);
38  void setMultiPeakRaw(Int_t tower, Int_t layer, Int_t xy, Int_t order, Float_t val);
39  void setMultiEnergySum(Int_t tower, Int_t layer, Int_t xy, Int_t order, Float_t val);
40  void setMultiFitChi2(Int_t tower, Int_t layer, Int_t xy, Float_t val);
41 
42  Float_t getPlateEnergy(Int_t tower, Int_t plate);
43  Float_t getGSOBarEnergy(Int_t tower, Int_t layer, Int_t xy, Int_t bar);
44 
45  Float_t getL20(Int_t tower);
46  Float_t getL90(Int_t tower);
47 
48  Int_t getPointNum(Int_t tower);
49  Int_t getGSOMaxLayer(Int_t tower, Int_t order);
50  Int_t getMaxPeakBin(Int_t tower, Int_t layer, Int_t xy);
51 
52  Int_t getSingleHitNum(Int_t tower, Int_t layer, Int_t xy);
53  Float_t getSingleHitPos(Int_t tower, Int_t layer, Int_t xy);
54  Float_t getSinglePeakHeight(Int_t tower, Int_t layer, Int_t xy);
55  Float_t getSingleFitChi2(Int_t tower, Int_t layer, Int_t xy);
56 
57  Int_t getMultiHitNum(Int_t tower);
58  Float_t getMultiHitPos(Int_t tower, Int_t layer, Int_t xy, Int_t order);
59  Float_t getMultiPeakHeight(Int_t tower, Int_t layer, Int_t xy, Int_t order);
60  Float_t getMultiPeakRaw(Int_t tower, Int_t layer, Int_t xy, Int_t order);
61  Float_t getMultiEnergySum(Int_t tower, Int_t layer, Int_t xy, Int_t order);
62  Float_t getMultiFitChi2(Int_t tower, Int_t layer, Int_t xy);
63 
64  private:
65  Float_t mPlateE[kRHICfNtower][kRHICfNplate];
66  Float_t mGSOBarSmallE[kRHICfNlayer][kRHICfNxy][kRHICfNbarSmall];
67  Float_t mGSOBarLargeE[kRHICfNlayer][kRHICfNxy][kRHICfNbarLarge];
68 
69  TArrayF* mL20 = nullptr;
70  TArrayF* mL90 = nullptr;
71 
72  TArrayI* mGSOMaxLayer = nullptr;
73  TArrayI* mMaxPeakBin = nullptr;
74 
75  TArrayI* mSingleHitNum = nullptr;
76  TArrayF* mSingleHitPos = nullptr;
77  TArrayF* mSinglePeakHeight = nullptr;
78  TArrayF* mSingleChiSquare = nullptr;
79 
80  TArrayI* mMultiHitNum = nullptr;
81  TArrayF* mMultiHitPos = nullptr;
82  TArrayF* mMultiPeakHeight = nullptr;
83  TArrayF* mMultiPeakRaw = nullptr;
84  TArrayF* mMultiEnergySum = nullptr;
85  TArrayF* mMultiChiSquare = nullptr;
86 
87  Bool_t mIsSaveDataArray;
88 
89  ClassDef(StMuRHICfHit,1)
90 };
91 
92 #endif