PandaRoot
PndRichRecoTask.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 #ifndef PNDRICHRECOTASK_H
14 #define PNDRICHRECOTASK_H 1
15 
16 #include "FairTask.h"
17 #include "TClonesArray.h"
18 #include "PndRichReco.h"
19 #include "TVector3.h"
20 #include "TH1F.h"
21 #include "TF1.h"
22 #include <vector>
23 #include "PndRichResolution.h"
24 
25 class TClonesArray;
26 
27 class PndRichRecoTask : public FairTask {
28 
29  public:
32 
35 
37  virtual InitStatus Init();
38 
40  virtual void Exec(Option_t *opt);
41 
43  void SetPersistence(Bool_t persistence) { fPersistence = persistence; }
44 
45  void SetGeoVersion(UInt_t version) { fGeoVersion = version; }
46  void SetParticleID(UInt_t pid) { fParticleID = pid; }
47  void SetTrackPosition(TVector3 pos) { fTrackPosition = pos; }
48  void SetTrackDirection(TVector3 dir) { fTrackDirection = dir; }
49  void SetTrackPositionSecond(TVector3 pos) { fTrackPositionSecond = pos; }
50  void SetTrackDirectionSecond(TVector3 dir) { fTrackDirectionSecond = dir; }
51  void SetNumberOfEvents(UInt_t events) { fNumberOfEvents = events; }
52  TF1 *GetPeakParameters(std::vector<Double_t> v, UInt_t nbins, Double_t xmin, Double_t xmax, Double_t sig);
53 
54  void FinishEvent();
55  void FinishTask();
56 
57  private:
59  Bool_t fPersistence;
60 
61  UInt_t fNumberOfEvents;
62  UInt_t fGeoVersion;
63  UInt_t fParticleID;
64  UInt_t fEvent;
65  PndRichReco *fRichReco;
66  TVector3 fTrackPosition;
67  TVector3 fTrackDirection;
68  TVector3 fTrackPositionSecond;
69  TVector3 fTrackDirectionSecond;
70  std::vector<UInt_t> vnhits;
71  std::vector<Double_t> vth;
72  std::vector<Double_t> vph;
73  std::vector<Double_t> vdth;
74  std::vector<Double_t> vmean;
75  std::vector<Double_t> vsigma;
76 
77  PndRichResolution *fRichResolution;
78 
79  TClonesArray *fRichBarPoint;
80 
81  ClassDef(PndRichRecoTask, 1);
82 };
83 
84 #endif
void SetTrackDirection(TVector3 dir)
TF1 * GetPeakParameters(std::vector< Double_t > v, UInt_t nbins, Double_t xmin, Double_t xmax, Double_t sig)
virtual void Exec(Option_t *opt)
void SetParticleID(UInt_t pid)
virtual InitStatus Init()
__m128 v
Definition: P4_F32vec4.h:15
void SetGeoVersion(UInt_t version)
void SetNumberOfEvents(UInt_t events)
void SetPersistence(Bool_t persistence)
void SetTrackPosition(TVector3 pos)
void SetTrackPositionSecond(TVector3 pos)
void SetTrackDirectionSecond(TVector3 dir)