ROOT logo
#ifndef HMDCTRACKGCORRPAR_H
#define HMDCTRACKGCORRPAR_H
#include "TString.h"
#include "TObject.h"
#include "TNamed.h"
#include "hparcond.h"
#include "hmdcseg.h"
#include "hmdcsegsim.h"
//CORRECTION PARAMETERS FOR MOMENTUM RECONSTRUCTION
class HMdcTrackGField;
class HMdcTrackGCorrections;
class HMdcTrackGSpline;
class HMdcTrackGFieldPar;
class HGeomVector;

class HMdcTrackGCorrPar:public HParCond {
protected:
    Int_t doCorrections;
   //    HMdcTrackGField* field; //!
   HMdcTrackGCorrections* corr;
   HMdcTrackGCorrections* corr1;
   HMdcTrackGCorrections* corrScan0, *corrScan1, *corrScan2;
   
    HMdcTrackGSpline* spline;  //!
    HMdcTrackGFieldPar *fieldmap; //!
public:
   
   HMdcTrackGCorrPar(const Char_t* name="MdcTrackGCorrPar",
		     const Char_t* title="Correction parameters for Spline fitting",
		     const Char_t* context="MdcTrackGCorrParProduction");
    ~HMdcTrackGCorrPar();
    void    putParams(HParamList*);
    Bool_t  getParams(HParamList*);//{return kTRUE;}
    void    clear();
   void    setCorrectionFlag(Int_t flag){ doCorrections=flag;}
   Int_t   getCorrectionFlag(){ return doCorrections;}
   void    initCorrections(TString, TString,TString,TString);
   void    initCorrections1(TString, TString,TString,TString);
   void    initCorrectionsScan(TString *, TString *,TString *,TString *);
   Double_t calcMomentum(HGeomVector*,Bool_t cond=kTRUE,Double_t targetz=0.);
   Double_t calcMomentum(HMdcSeg *seg[2],Bool_t cond=kTRUE,Double_t targetz=0.);
   
   Double_t calcMomentum123(HMdcSeg *seg[2],Bool_t cond=kTRUE,Double_t targetz=0.);
   void getDistance(Double_t *);
   Double_t getMetaDistance(Double_t,Double_t,Double_t);
   //    void    calcField(Double_t *a,Double_t *b,Int_t i);
   
   //  HMdcTrackGField* getField(){return field;}
   HMdcTrackGCorrections* getCorr(){return corr;}
   HMdcTrackGSpline* getSPline() {return spline;}
   HMdcTrackGCorrections* getCorr1(){return corr1;}
   
   void  getCorrScan(HMdcTrackGCorrections *corrScanAll[]);
   
   ClassDef(HMdcTrackGCorrPar,3)
      };
#endif
 hmdctrackgcorrpar.h:1
 hmdctrackgcorrpar.h:2
 hmdctrackgcorrpar.h:3
 hmdctrackgcorrpar.h:4
 hmdctrackgcorrpar.h:5
 hmdctrackgcorrpar.h:6
 hmdctrackgcorrpar.h:7
 hmdctrackgcorrpar.h:8
 hmdctrackgcorrpar.h:9
 hmdctrackgcorrpar.h:10
 hmdctrackgcorrpar.h:11
 hmdctrackgcorrpar.h:12
 hmdctrackgcorrpar.h:13
 hmdctrackgcorrpar.h:14
 hmdctrackgcorrpar.h:15
 hmdctrackgcorrpar.h:16
 hmdctrackgcorrpar.h:17
 hmdctrackgcorrpar.h:18
 hmdctrackgcorrpar.h:19
 hmdctrackgcorrpar.h:20
 hmdctrackgcorrpar.h:21
 hmdctrackgcorrpar.h:22
 hmdctrackgcorrpar.h:23
 hmdctrackgcorrpar.h:24
 hmdctrackgcorrpar.h:25
 hmdctrackgcorrpar.h:26
 hmdctrackgcorrpar.h:27
 hmdctrackgcorrpar.h:28
 hmdctrackgcorrpar.h:29
 hmdctrackgcorrpar.h:30
 hmdctrackgcorrpar.h:31
 hmdctrackgcorrpar.h:32
 hmdctrackgcorrpar.h:33
 hmdctrackgcorrpar.h:34
 hmdctrackgcorrpar.h:35
 hmdctrackgcorrpar.h:36
 hmdctrackgcorrpar.h:37
 hmdctrackgcorrpar.h:38
 hmdctrackgcorrpar.h:39
 hmdctrackgcorrpar.h:40
 hmdctrackgcorrpar.h:41
 hmdctrackgcorrpar.h:42
 hmdctrackgcorrpar.h:43
 hmdctrackgcorrpar.h:44
 hmdctrackgcorrpar.h:45
 hmdctrackgcorrpar.h:46
 hmdctrackgcorrpar.h:47
 hmdctrackgcorrpar.h:48
 hmdctrackgcorrpar.h:49
 hmdctrackgcorrpar.h:50
 hmdctrackgcorrpar.h:51
 hmdctrackgcorrpar.h:52
 hmdctrackgcorrpar.h:53
 hmdctrackgcorrpar.h:54
 hmdctrackgcorrpar.h:55
 hmdctrackgcorrpar.h:56
 hmdctrackgcorrpar.h:57