StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StFgtLenTreeMaker.h
1 
3 #ifndef _ST_FGT_LEN_TREE_MAKER_
4 #define _ST_FGT_LEN_TREE_MAKER_
5 
6 #include "StMaker.h"
7 #include "StRoot/StFgtPool/StFgtQaMakers/StFgtQaMaker.h"
8 #include <TH2D.h>
9 #include <TH1F.h>
10 #include <TF1.h>
11 #include <TROOT.h>
12 #include <TStyle.h>
13 #include <TCanvas.h>
14 #include <TFile.h>
15 #include <TTree.h>
16 
17 class StFgtCollection;
18 class StFgtHitCollection;
19 class StFgtHit;
20 
22  public:
23  Float_t phi;
24  Float_t slope;
25  Float_t vtx;
26  Float_t chi2;
27  Int_t ncluster;
28  StFgtHit* clArray[6];
29 };
30 
32  public:
33  StFgtLenTreeMaker(const Char_t* name="FgtLenTreeMaker");
34 
35  virtual ~StFgtLenTreeMaker();
36 
37  Int_t Init();
38  Int_t Make();
39  Int_t Finish();
40  Int_t InitTree();
41  void FitFunc();
42  void InitFX();
43  TString fname;
44  Int_t fitThresh;
45  Int_t Ntimebin;
46  StFgtLenTrack getLenTrack( int iTrk );
47 
48  protected:
49  int runningEvtNr;
50  Int_t Ntrk;
51 
52  private:
53 
54  struct MyFunc;
55  /*
56  struct StFgtLenTrack {
57  Float_t phi;
58  Float_t slope;
59  Float_t vtx;
60  Float_t chi2;
61  Int_t ncluster;
62  StFgtHit* clArray[6];
63  };
64  */
65  StFgtLenTrack trkArray[4];
66 
67 
68  TFile* fFgt;
69 
70  TTree* tCl;
71 
72  Int_t iEvt;
73  Int_t Ncl[6];
74  Int_t cl_geoId[6][20];
75  Int_t cl_seedType[6][20];
76  Int_t cl_quad[6][20];
77  Float_t cl_z[6][20];
78  Float_t cl_ez[6][20];
79  Float_t cl_phi[6][20];
80  Float_t cl_ephi[6][20];
81  Float_t cl_r[6][20];
82  Float_t cl_er[6][20];
83  Float_t cl_charge[6][20];
84  Float_t cl_echarge[6][20];
85  Int_t cl_numStrips[6][20];
86  Int_t cl_tQuad[6][20];
87  Int_t cl_tStrip[6][20];
88  Char_t cl_layer[6][20];
89  Int_t cl_key[6][20];
90  Int_t maxadc[6][20];
91  Int_t seedadc[6][20];
92  Float_t tr_phi[4];
93  Float_t tr_slope[4];
94  Float_t tr_vtx[4];
95  Float_t tr_chi2[4];
96  Int_t tr_ncluster[4];
97  Int_t tr_iCl[4][6];
98 
99 
100  TTree* tFgt;
101 
102  Int_t rdo;
103  Int_t arm;
104  Int_t apv;
105  Int_t chn;
106  Short_t disk;
107  Short_t quad;
108  Short_t strip;
109  Short_t stat;
110  Double_t ordinate;
111  Double_t lowerSpan;
112  Double_t upperSpan;
113  Char_t layer;
114  Double_t ped;
115  Double_t pedSig;
116  Int_t adc[7];
117  Int_t adcmax;
118  Int_t mmax;
119  Int_t mmin;
120  Float_t chi2;
121  Float_t fmax;
122  Float_t norm;
123  Float_t tau;
124  Float_t t0;
125  Float_t beta;
126  Float_t offset;
127  Int_t errCode;
128 
129  TF1* FX;
130  TF1* fs;
131 
132  StFgtHit* cl_pointers[6][20];
133 
134  TH1F* htrk;
135  TF1* f0;
136  TH1F* hh;
137 
138  ClassDef(StFgtLenTreeMaker,1);
139 };
140 
141 inline StFgtLenTrack StFgtLenTreeMaker::getLenTrack( int iTrk ) {
142  return trkArray[iTrk];
143 };
144 
145 #endif