FairRoot/PandaRoot
PndMissingPzCleanerTask.h
Go to the documentation of this file.
1 /*
2  * PndMissingPzCleanerTask.h
3  *
4  * \brief Task to flag or to remove tracks with missing Pz information
5  *
6  * This task takes as an input any PndTrack branch. It goes through all the tracks. For those tracks only consisting of STTHits
7  * and with a ParamFirst::pz value between 0.015 and 0.025 it either sets the PndTrack::fFlag to -30 or deletes the track.
8  * What action is taken is selected by SetRemoveTrack(). If SetRemoveTrack is set to kTRUE the track is deleted otherwise flaged.
9  * The filtered PndTracks are written in an output branch either with a given name by SetOutputTrackBranch() of, if no branch name is
10  * given by InputTrackBranchName + "_filtered".
11  *
12  * Created on: 22.3.2017
13  * Author: t.stockmanns
14  */
15 
16 #ifndef PndMissingPzCleanerTask_H_
17 #define PndMissingPzCleanerTask_H_
18 
19 #include "PndPersistencyTask.h"
20 #include "TString.h"
21 
22 class TClonesArray;
23 
25 public:
27  : PndPersistencyTask("Missing Pz Track Cleaner Task"), fInputTrackBranch(""), fOutputTrackBranch(""),
28  fTracks(0), fFilteredTracks(0), fRemoveTrack(kFALSE){SetPersistency(kTRUE); };
29  PndMissingPzCleanerTask(const TString& branchName)
30  : PndPersistencyTask("Missing Pz Track Cleaner Task"), fInputTrackBranch(branchName), fOutputTrackBranch(""),
31  fTracks(0), fFilteredTracks(0), fRemoveTrack(kFALSE){SetPersistency(kTRUE); };
33 
35  virtual void SetParContainers();
36  virtual InitStatus Init();
37 
39  virtual void Exec(Option_t* opt);
40  virtual void FinishEvent();
41  virtual void Finish();
42 
45  void SetRemoveTrack(const Bool_t& remove) { fRemoveTrack = remove; }
46  void SetPersistence(const Bool_t& val) { SetPersistency(val); }
47 
48 private:
51 
52  TClonesArray* fTracks;
53  TClonesArray* fFilteredTracks;
54 
56 
58 
59 
60 };
61 
62 #endif /* PndMissingPzCleanerTask_H_ */
virtual void Exec(Option_t *opt)
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11
PndMissingPzCleanerTask(const TString &branchName)
ClassDef(PndMissingPzCleanerTask, 1)
void SetPersistency(Bool_t val=kTRUE)
void SetOutputTrackBranch(const TString &name)
void SetPersistence(const Bool_t &val)
TString name
Bool_t fRemoveTrack
if this flag is set than the track will not be written to the output branch. Otherwise the flag -30 w...
void SetInputTrackBranch(const TString &name)
void SetRemoveTrack(const Bool_t &remove)