10 #ifndef STAR_StSpaceChargeEbyEMaker
11 #define STAR_StSpaceChargeEbyEMaker
21 #include "StPhysicalHelixD.hh"
23 class St_spaceChargeCor;
38 virtual Int_t DecideSpaceCharge(
int time);
40 void DoQAmode() { QAmode = kTRUE; }
41 void DoPrePassmode() { PrePassmode = kTRUE; }
42 void DoNtuple() { doNtuple = kTRUE; DoGaps(); }
43 void DoGaps() { doGaps = kTRUE; }
44 void DoSecGaps() { doSecGaps = kTRUE; DoGaps(); }
45 void DontReset() { doReset = kFALSE; }
46 void DoCalib() { Calibmode = kTRUE; DoQAmode(); DoNtuple(); }
47 float EvalCalib(TDirectory* hdir=0);
48 void DoTrackInfo(Int_t mode=1) { TrackInfomode = mode; }
49 void DoAsym() { Asymmode = kTRUE; }
51 void setVtxVpdAgree(
float x) { vtxVpdAgree = x; }
52 void setVtxPCTs(UInt_t x) { vtxPCTs = x; }
53 void setVtxEmcMatch(UInt_t x) { vtxEmcMatch = x; }
54 void setVtxTofMatch(UInt_t x) { vtxTofMatch = x; }
55 void setVtxMinTrks(UInt_t x) { vtxMinTrks = x; }
57 void setMinTpcHits(UInt_t x) { minTpcHits = x; }
58 void setReqEmcMatch(Bool_t match = kTRUE)
59 { reqEmcMatch = match; reqEmcOrTofMatch = kFALSE; }
60 void setReqTofMatch(Bool_t match = kTRUE)
61 { reqTofMatch = match; reqEmcOrTofMatch = kFALSE; }
62 void setReqEmcOrTofMatch(Bool_t match = kTRUE)
63 { reqEmcOrTofMatch = match; reqEmcMatch = kFALSE; reqTofMatch = kFALSE; }
65 virtual const char *GetCVS()
const
66 {
static const char cvs[]=
"Tag $Name: $ $Id: StSpaceChargeEbyEMaker.h,v 1.21 2015/05/23 04:26:07 genevb Exp $ built " __DATE__
" " __TIME__ ;
return cvs;}
109 Bool_t reqEmcOrTofMatch;
117 void BuildHist(
int i, TH1F* aschist, TH1F** aschists);
118 void FindSpaceCharge(TH1F* aschist,
float& asc,
float& aesc);
119 double FindPeak(TH1*,
float&);
120 float oldness(
int i,
int j=-1);
122 float FakeAutoSpaceCharge();
129 TH1F* schistsE[SCHN];
130 TH1F* schistsW[SCHN];
137 float evtstbin[SCHN];
139 TNamed* SCcorrection;
140 TNamed* GLcorrection;
146 void WriteTableToFile();
147 St_spaceChargeCor* SCTable();
171 TH2F* gapZhistnegS[24];
172 TH2F* gapZhistposS[24];
181 float gapZfitintercept;
182 float egapZfitintercept;
185 float gapZfitslopeneg;
186 float gapZfitinterceptneg;
187 float gapZdivslopeneg;
188 float gapZfitslopepos;
189 float gapZfitinterceptpos;
190 float gapZdivslopepos;
191 float gapZfitslopeeast;
192 float gapZfitintercepteast;
193 float gapZdivslopeeast;
194 float gapZfitslopewest;
195 float gapZfitinterceptwest;
196 float gapZdivslopewest;
198 float gapZfitslopeS[24];
199 float gapZfitinterceptS[24];
200 float gapZdivslopeS[24];
201 float gapZfitslopenegS[24];
202 float gapZfitinterceptnegS[24];
203 float gapZdivslopenegS[24];
204 float gapZfitslopeposS[24];
205 float gapZfitinterceptposS[24];
206 float gapZdivslopeposS[24];
213 void DetermineGaps();
214 TString DetermineGapHelper(TH2F*,
float&,
float&,
float&);