1 #ifndef StTpcHitErrors_h
2 #define StTpcHitErrors_h
3 #include "TMDFParameters.h"
9 StTpcHitErrors(Int_t nXZ = 2, Int_t Sec = 2, Int_t Row = 2, Int_t MS = 2, Int_t Prompt = 2) :
10 fXZ(nXZ), fSec(Sec), fRow(Row), fMS(MS), fPrompt(Prompt),
11 fNxz(fXZ*fSec*fRow*fMS*fPrompt), fMDFXZ(fNxz) {
12 fgInstance =
this; fMDFXZ.SetOwner(kTRUE);
15 Int_t Index(Int_t iXZ, Int_t sec, Int_t row, Int_t ms, Int_t prompt) {
16 Int_t indx = prompt + fPrompt*(ms + fMS*(row + fRow*(sec + fSec*iXZ)));
19 TMDFParameters *Get(Int_t iXZ, Int_t sec, Int_t row, Int_t ms, Int_t prompt) {
20 Int_t indx = Index(iXZ,sec,row,ms,prompt);
24 TMDFParameters *GetMu (Int_t iXZ, Int_t sec, Int_t row, Int_t prompt) {
return Get(iXZ,sec,row,0,prompt);}
25 TMDFParameters *GetSigmaSQ(Int_t iXZ, Int_t sec, Int_t row, Int_t prompt) {
return Get(iXZ,sec,row,1,prompt);}
26 Double_t calcError(Int_t iXZ, Int_t sec, Int_t row, Double_t _z, Double_t _eta, Double_t _tanl, Int_t Npads, Int_t Ntmbks, Double_t AdcL, Double_t xPad);
27 void Set(Int_t iXZ, Int_t sec, Int_t row, Int_t ms, Int_t prompt,
TMDFParameters *mdfX) {fMDFXZ.AddAtAndExpand(mdfX,Index(iXZ,sec,row,ms,prompt));}