PandaRoot
PndMvdIdealRecoTask.h
Go to the documentation of this file.
1 // -------------------------------------------------------------------------
2 // ----- PndMvdIdealRecoTask header file -----
3 // ----- Created 20/03/07 by R.Kliemt -----
4 // -------------------------------------------------------------------------
5 
13 #ifndef PNDMVDIDEALRECOTASK_H
14 #define PNDMVDIDEALRECOTASK_H
15 
16 // Root includes
17 #include "TVector3.h"
18 #include "TRandom.h"
19 #include "TString.h"
20 #include "TGeoManager.h"
21 
22 // framework includes
23 #include "FairTask.h"
24 
25 // PndMvd includes
26 #include "PndSdsMCPoint.h"
27 #include "PndGeoHandling.h"
28 
29 class TClonesArray;
30 
31 class PndMvdIdealRecoTask : public FairTask {
32  public:
35 
36  PndMvdIdealRecoTask(Double_t sx, Double_t sy, Double_t sz);
37 
39  virtual ~PndMvdIdealRecoTask();
40 
41  PndMvdIdealRecoTask(const PndMvdIdealRecoTask &) = delete;
43 
45  virtual void SetParContainers();
46  virtual InitStatus Init();
47 
49  virtual void Exec(Option_t *opt);
50 
51  void SetPersistance(Bool_t p = kTRUE) { fPersistance = p; };
52  Bool_t GetPersistance() { return fPersistance; };
53 
54  private:
55  Bool_t fPersistance; // switch to turn on/off storing the arrays to a file
56 
57  TString fBranchName;
58  PndGeoHandling *fGeoH;
60  TClonesArray *fPointArray;
61  TClonesArray *fMctruthArray;
62 
64  TClonesArray *fHitOutputArray;
66  Double_t fSigmaX; // Variance vector of sensor smearing
67  Double_t fSigmaY; // Variance vector of sensor smearing
68  Double_t fSigmaZ; // Variance vector of sensor smearing
69  PndSdsMCPoint *fCurrentPndMvdMCPoint;
70  TGeoHMatrix *fCurrentTransMat;
71  TMatrixT<Double_t> fHitCovMatrix;
73  void InitTransMat();
74  void smear(TVector3 &pos);
75  void smearLocal(TVector3 &pos);
76  void CalcDetPlane(TVector3 &o, TVector3 &u, TVector3 &v);
77 
78  void Register();
79 
80  void Reset();
81 
82  void ProduceHits();
83 
84  ClassDef(PndMvdIdealRecoTask, 1);
85 };
86 
87 #endif
virtual InitStatus Init()
virtual void Exec(Option_t *opt)
virtual ~PndMvdIdealRecoTask()
__m128 v
Definition: P4_F32vec4.h:3
Class to access the naming information of the MVD.
virtual void SetParContainers()
void SetPersistance(Bool_t p=kTRUE)
PndMvdIdealRecoTask & operator=(const PndMvdIdealRecoTask &)=delete