#ifndef TTALITASK_H #define TTALITASK_H // Base Class Headers ---------------- #include "FairTask.h" #include #include #include "TH1F.h" #include "TVector2.h" // Collaborating Class Headers ------- #include #include "TString.h" #include using namespace std; // Collaborating Class Declarations -- class TClonesArray; class TGeoManager; class TtAliTask : public FairTask { public: // Constructors/Destructors --------- TtAliTask(); TtAliTask(Int_t ExcludedBox); TtAliTask(Int_t ExcludedBox,Double_t X1,Double_t Y1,Double_t X2,Double_t Y3,Double_t X4,Double_t Y5,Double_t X6,Double_t Y6 ); TtAliTask(const TtAliTask& o){}; TtAliTask& operator=(const TtAliTask& o) { return *this;}; virtual ~TtAliTask(); virtual InitStatus Init(); virtual void Exec(Option_t* opt); virtual void FinishTask(); void SetExcludedBox(Int_t excl){ if (excl > 0 && excl < 7) fExclBox = excl; else cout << "Set a wrong value!!! Leaving fExclBox as it was" << std::endl; }; void PrintVal(); void PrintMeanResiduals(); void PrintSigmaResiduals(); TVector2 GetRes(); void PrintHistos(); void FlagPrint(Int_t flag){fPrint = flag;}; // 1 to print residuals private: // Input Data------------ TClonesArray* fTCandArray; TString fTCandBranchName; //Bool_t firstIt; Int_t fTrackcount; Int_t fEvent; Int_t fExclBox; Int_t fPrint; // flag Double_t sX[4],sY[4]; // shifts Double_t sigX[4],sigY[4]; // shifts Double_t m_X[4],m_Y[4]; // residuals TH1F *hx; TH1F *hy; // Fitting ------------ void MyFit(Double_t *x,Double_t *y,Double_t *z,Double_t *Erx,Double_t *Ery,Double_t *Erz,Double_t realX, Double_t realY, Double_t realZ, Double_t &DELTAX, Double_t &DELTAY); ClassDef(TtAliTask,1); }; #endif