24 #ifndef STVPDANALYSISMAKER_H
25 #define STVPDANALYSISMAKER_H
31 #define VHRBIN2PS 24.4140625 // Very High resolution mode, pico-second per bin
33 #define HRBIN2PS 97.65625 // High resolution mode, pico-second per bin
35 #define TMAX 51200. // tdc limit
39 #ifndef ST_NO_NAMESPACES
50 #include "StTofUtil/StTofrDaqMap.h"
51 #include "StTofUtil/StTofINLCorr.h"
52 #include "StTofUtil/StSortTofRawData.h"
54 #if !defined(ST_NO_TEMPLATE_DEF_ARGS) || defined(__CINT__)
55 typedef vector<Int_t> IntVec;
56 typedef vector<Double_t> DoubleVec;
58 typedef vector<Int_t, allocator<Int_t>> IntVec;
59 typedef vector<Double_t, allocator<Double_t>> DoubleVec;
84 void setVPDHitsCut(
const Int_t,
const Int_t);
90 void tsum(
const Double_t *tot,
const Double_t *time);
92 Int_t numberOfVpdEast()
const;
93 Int_t numberOfVpdWest()
const;
94 Double_t tstart()
const;
95 Double_t tdiff()
const;
96 Double_t vzVpd()
const;
100 static const Int_t mNTDIG = 8;
101 static const Int_t mNTray8 = 5;
102 static const Int_t mNVPD = 19;
103 static const Int_t mWestVpdTrayId = 121;
104 static const Int_t mEastVpdTrayId = 122;
105 static const Int_t mNValidTrays_Run8 = 5;
106 static const Int_t mNBinMax = 60;
111 Double_t mVPDTotEdge[2*mNVPD][mNBinMax];
112 Double_t mVPDTotCorr[2*mNVPD][mNBinMax];
113 Double_t mVPDTZero[2*mNVPD];
115 Double_t mPhaseOffset8;
117 Double_t mVPDLeTime[2*mNVPD];
118 Double_t mVPDTot[2*mNVPD];
122 UInt_t mVPDHitPatternEast;
123 UInt_t mVPDHitPatternWest;
141 Bool_t mValidCalibPar;
143 Double_t mVPDEastHitsCut;
144 Double_t mVPDWestHitsCut;
146 virtual const char *GetCVS()
const
147 {
static const char cvs[]=
"Tag $Name: $ $Id: StVpdAnalysisMaker.h,v 1.2 2014/08/06 11:43:48 jeromel Exp $ built " __DATE__
" " __TIME__ ;
return cvs;}
152 inline void StVpdAnalysisMaker::setVPDHitsCut(
const Int_t ieast,
const Int_t iwest) { mVPDEastHitsCut=ieast ; mVPDWestHitsCut=iwest; }
156 inline Int_t StVpdAnalysisMaker::numberOfVpdEast()
const {
return mNEast; }
158 inline Int_t StVpdAnalysisMaker::numberOfVpdWest()
const {
return mNWest; }
160 inline Double_t StVpdAnalysisMaker::tstart()
const {
return mTStart; }
162 inline Double_t StVpdAnalysisMaker::tdiff()
const {
return mTDiff; }
164 inline Double_t StVpdAnalysisMaker::vzVpd()
const {
return mVPDVtxZ; }
void tsum(const Double_t *tot, const Double_t *time)
Run 8++ ->
StVpdAnalysisMaker(const char *name="vpdAna")
Default constructor.
void resetCalibPars()
Reset the calibration parameters.
~StVpdAnalysisMaker()
Destructor.
Int_t processEventYear8()
void setSlewingCorr(const bool)
switch to turn on slewing correction or not - maybe only T0 in the first step.
Int_t initParameters(int)
Initialize the calibration parameters from dbase.