41 Double_t fErrX, fErrY;
48 TEfficiency *effTestEfficiencySingleHit, *effTestEfficiencyDoubleHit;
49 TH1D *htR, *h1TestDistance, *h1TestMass, *h1TestMassLong, *h1TestOccupancyTimeShift, *h1TestOccupancyPositionShift;
50 TH2D *h2TestNeighborPair, *h2TestXYSmeared, *h2TestXYSmeared2,*h2TestXYSmearedDouble, *h2TestXYSmearedDouble2, *h2TestEtaPhi, *h2TestStrips, *h2TestRZ, *h2TdetIdStripId;
52 Bool_t HitExist(Double_t val);
53 Bool_t DoubleHitExist(Double_t val);
55 BmnTofGeoUtils *pGeoUtils;
57 const char *fgeomFile;
59 const char *fMCTimeFile;
61 const char *fProtonTimeCorrectionFile;
63 const double fSignalVelosity;
66 Int_t MergeHitsOnStripNew(
void);
67 bool GetCrossPoint(
const TVector3& p1,
double time1,
const TVector3& p2,
double time2, TVector3& crossPoint);
68 bool GetCrossPoint(
const LStrip *pStrip,
double dtime, TVector3& crossPoint);
71 Int_t fMainStripSelection;
72 Int_t fSelectXYCalibration;
75 Double_t fDiffTimeMaxSmall;
76 Double_t fDiffTimeMaxBig;
79 BmnTofHitProducer(
const char *name =
"TOF HitProducer",
const char *geomFile =
"", Bool_t useMCdata =
true, Int_t verbose = 1, Bool_t DoTest =
false);
82 virtual InitStatus
Init();
83 virtual void Exec(Option_t* opt);
86 virtual void OnlineWrite(
const std::unique_ptr<TTree> &resultTree);
104 TString buf =
"\n Run parameters: fTimeSigma="; sprintf(s,
"%.5g", fTimeSigma); buf+=(s);
105 buf+=
" ns, fErrX="; sprintf(s,
"%.4g", fErrX); buf+=(s);
106 buf+=
" cm, fErrY="; sprintf(s,
"%.4g", fErrY); buf+=(s);
107 buf+=
" cm, fDoTest="; buf+=fDoTest; buf+=
", fDoMergeHits="; buf+=fDoMergeHits;
108 buf+=
", fDoINL="; buf+=fDoINL; buf+=
", fDoSlewing="; buf+=fDoSlewing;