PandaRoot
PndHypDPatternRecoTask.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 //-----------------------------------------------------------
14 // File and Version Information:
15 // $Id$
16 //
17 // Description:
18 // An ideal pattern recognition
19 //
20 // Environment:
21 // Software developed for the PANDA Detector at FAIR.
22 //
23 // Author List:
24 // Sebastian Neubert TUM (original author)
25 // adapted by A. Sanchez for HYP purpose
26 //
27 //-----------------------------------------------------------
28 
29 #ifndef PNDHYPDPATTERNRECOTASK_HH
30 #define PNDHYPDPATTERNRECOTASK_HH
31 
32 // Base Class Headers ----------------
33 #include "FairTask.h"
34 #include <map>
35 
36 // Collaborating Class Headers -------
37 
38 // Collaborating Class Declarations --
39 class TClonesArray;
40 class GFRecoHitFactory;
41 class AbsBFieldIfc;
42 class FairField;
43 class FairGeanePro;
44 
45 class PndHypDPatternRecoTask : public FairTask {
46  public:
47  // Constructors/Destructors ---------
50 
51  // Operators
52 
53  // Accessors -----------------------
54 
55  // Modifiers -----------------------
56  void SetVtxAbsName(TString name)
57  {
58  fVtx = true;
59  fVtxName = name;
60  }
61  void AddHitBranch(unsigned int detId, const TString &m) { fHitBranchNameMap[detId] = m; };
62  void SetPersistence(Bool_t opt = kTRUE) { fPersistence = opt; }
63  void SetField(FairField *f) { fField = f; }
64  void SetHitFL(Bool_t opt) { fMCvalue = opt; }
65  void UseGeane(bool f = true) { fUseGeane = f; }
66  void UseMVD(bool mvd) { fUseMVD = mvd; }
67 
68  // Operations ----------------------
69 
70  virtual InitStatus Init();
71 
72  virtual void Exec(Option_t *opt);
73 
74  private:
75  // Private Data Members ------------
76  // TString _pointBranchName;
77  TClonesArray *fPointArray;
78  TClonesArray *fSdsArray;
79  TClonesArray *fTrackArray;
80  TClonesArray *fHitArray;
81  TClonesArray *fMcArray;
82 
83  // TGeoManager* fGeom;
84 
85  std::map<unsigned int, TString> fHitBranchNameMap;
86  std::map<unsigned int, TClonesArray *> fHitBranchMap;
87  int fEventNr;
88 
89  TString fVtxName;
90  Bool_t fPersistence;
91  Bool_t fUseGeane;
92  bool fUseMVD;
93  Bool_t fMCvalue;
94  Bool_t fVtx;
95 
96  GFRecoHitFactory *fTheRecoHitFactory;
97 
98  FairField *fField;
99  FairGeanePro *fGeanePro;
100 
101  // Private Methods -----------------
102 
103  Int_t GetChargeIon(Int_t ion);
104 
105  public:
106  ClassDef(PndHypDPatternRecoTask, 4)
107 };
108 
109 #endif
110 
111 //--------------------------------------------------------------
112 // $Log$
113 //--------------------------------------------------------------
void SetPersistence(Bool_t opt=kTRUE)
__m128 m
Definition: P4_F32vec4.h:38
void SetVtxAbsName(TString name)
Factory object to create RecoHits from digitized and clustered data.
virtual InitStatus Init()
virtual void Exec(Option_t *opt)
void AddHitBranch(unsigned int detId, const TString &m)
float f
Definition: P4_F32vec4.h:32