PandaRoot
PndRecoKalmanTask2.h
Go to the documentation of this file.
1 //-----------------------------------------------------------
2 // File and Version Information:
3 // $Id$
4 //
5 // Description:
6 // Kalman Filter Task
7 //
8 // Environment:
9 // Software developed for the PANDA Detector at FAIR.
10 //
11 // Author List:
12 // Sebastian Neubert TUM (original author)
13 // Stefano Spataro, UNI Torino
14 // modified by Elisabetta Prencipe 19/05/2014
15 //-----------------------------------------------------------
16 
17 #ifndef PNDRECOKALMANTASK2_HH
18 #define PNDRECOKALMANTASK2_HH
19 
20 // Base Class Headers ----------------
21 #include "PndPersistencyTask.h"
22 
23 // Collaborating Class Headers -------
24 #include "TString.h"
25 #include "PndRecoKalmanFit2.h"
26 #include "PndRecoDafFit2.h"
27 
28 // Collaborating Class Declarations --
29 class TClonesArray;
30 class MeasurementFactory;
31 
33  public:
34  // Constructors/Destructors ---------
35  PndRecoKalmanTask2(const char *name = "Genfit", Int_t iVerbose = 0);
37 
38  // Operators
39 
40  // Accessors -----------------------
41 
42  // Modifiers -----------------------
43  void SetTrackInBranchName(const TString &name) { fTrackInBranchName = name; }
44  // void SetTrackInIDBranchName(const TString& name) { fTrackInIDBranchName = name;}
45  void SetTrackOutBranchName(const TString &name) { fTrackOutBranchName = name; }
46  void SetMvdBranchName(const TString &name) { fMvdBranchName = name; }
47  void SetCentralTrackerBranchName(const TString &name) { fCentralTrackerBranchName = name; }
48  void SetGeane(Bool_t opt = kTRUE) { fUseGeane = opt; }
49  void SetIdealHyp(Bool_t opt = kTRUE) { fIdealHyp = opt; }
50  void SetDaf(Bool_t opt = kTRUE) { fDaf = opt; }
51  void SetPropagateToIP(Bool_t opt = kTRUE) { fPropagateToIP = opt; }
52  void SetPropagateDistance(Float_t opt = -1.) { fPropagateDistance = opt; }
53  void SetPerpPlane(Bool_t opt = kTRUE) { fPerpPlane = opt; }
54  void SetNumIterations(Int_t num) { fNumIt = num; }
55  void SetParticleHypo(TString s);
56  void SetParticleHypo(Int_t h);
57  void SetBusyCut(Int_t b) { fBusyCut = b; }
58 
59  // Operations ----------------------
60  virtual InitStatus Init();
61  void SetParContainers();
62  virtual void Exec(Option_t *opt);
63 
64  protected:
65  // Private Data Members ------------
66  TClonesArray *fTrackArray;
67  // TClonesArray* fTrackIDArray; //! Input TCA for PndTrackID
68  TClonesArray *fMCTrackArray;
69  TClonesArray *fFitTrackArray;
70 
72  // TString fTrackInIDBranchName; //! Name of the input TCA
74 
75  TString fMvdBranchName;
77 
80  TDatabasePDG *pdg;
81 
82  Bool_t fUseGeane;
83  Bool_t fSmoothing;
84  Bool_t fIdealHyp;
85  Bool_t fDaf;
86  Bool_t fPropagateToIP;
88  Bool_t fPerpPlane;
89  Int_t fNumIt;
90  Int_t fPDGHyp;
91  Int_t fBusyCut;
92 
94 };
95 
96 #endif
PndRecoDafFit2 * fDafFitter
Standard Kalman Filter class.
void SetPropagateToIP(Bool_t opt=kTRUE)
ClassDef(PndRecoKalmanTask2, 1)
Skip too busy events with more tracks.
TString fTrackInBranchName
Output TCA for track.
TClonesArray * fMCTrackArray
Input TCA for PndTrack.
void SetParticleHypo(TString s)
Bool_t fPropagateToIP
Flag to use Deterministic Annealing.
TDatabasePDG * pdg
Deterministic Annealing class.
TString fTrackOutBranchName
Name of the input TCA.
void SetTrackInBranchName(const TString &name)
Bool_t fPerpPlane
Distance in [cm] to back-propagate the parameters, negative number means no backpropagation.
TClonesArray * fTrackArray
Bool_t fSmoothing
Flag to use Geane.
Bool_t fUseGeane
Particle DB.
void SetMvdBranchName(const TString &name)
void SetPropagateDistance(Float_t opt=-1.)
Float_t fPropagateDistance
Flag to propagate the parameters to the interaction point (kTRUE)
virtual InitStatus Init()
Int_t fBusyCut
Hypothesis.
Int_t fNumIt
Flag to use as initial plane the one perpendicular to the track (kFALSE)
TString fMvdBranchName
Name of the output TCA.
void SetCentralTrackerBranchName(const TString &name)
void SetTrackOutBranchName(const TString &name)
PndRecoKalmanFit2 * fFitter
Name of the TCA for central tracker.
Bool_t fIdealHyp
Flag to set on smoothing (not used)
void SetDaf(Bool_t opt=kTRUE)
PndRecoKalmanTask2(const char *name="Genfit", Int_t iVerbose=0)
void SetNumIterations(Int_t num)
Int_t fPDGHyp
Number of iterations.
void SetGeane(Bool_t opt=kTRUE)
void SetPerpPlane(Bool_t opt=kTRUE)
TClonesArray * fFitTrackArray
Input TCA for PndMCTrack.
TString fCentralTrackerBranchName
Name of the TCA for MVD.
Bool_t fDaf
Flag to use MC particle hypothesis.
virtual void Exec(Option_t *opt)
void SetBusyCut(Int_t b)
void SetIdealHyp(Bool_t opt=kTRUE)