PandaRoot
PndHypStripClusterTask.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 // ----- PndMvdStripClusterTask header file -----
15 // ----- Created 10/01/06 by V. Friese -----
16 // -------------------------------------------------------------------------
17 
18 #ifndef PNDHYPSTRIPCLUSTERTASK_H
19 #define PNDHYPSTRIPCLUSTERTASK_H
20 
21 #include "FairTask.h"
22 #include "PndGeoHypPar.h"
23 #include "PndHypStripDigiPar.h"
24 #include "PndHypHit.h"
25 #include "PndHypPoint.h"
26 //#include "PndHypPixel.h"
27 #include "PndHypCalcStrip.h"
28 #include "FairGeoVector.h"
29 #include "FairGeoTransform.h"
30 #include "TVector3.h"
31 #include "TRandom.h"
32 #include "TGeoMatrix.h"
33 #include "TGeoBBox.h"
34 //#include "PndHypHybridHitProducer.h"
35 #include "PndHypStripHitProducer.h"
36 
37 #include <string>
38 #include <vector>
39 
40 class TClonesArray;
41 
42 class PndHypStripClusterTask : public FairTask {
43  public:
46 
47  PndHypStripClusterTask(Double_t chargecut, TString geofile);
48 
50  virtual ~PndHypStripClusterTask();
51 
53  virtual void SetParContainers();
54  virtual InitStatus Init();
55  virtual InitStatus ReInit();
56 
58  virtual void Exec(Option_t *opt);
59 
60  private:
61  TVector2 CalcLineCross(TVector2 point1, TVector2 dir1, TVector2 point2, TVector2 dir2);
62 
63  TClonesArray *fDigiArray; // Input array of PndHypDigis
64  TClonesArray *fClusterArray; // Output array of PndHypClusters
65  TClonesArray *fHitArray; // Output array of PndHypHits
66 
67  void Register();
68  void Reset();
69  void ProduceHits();
70 
71  Double_t fRadius;
72  Int_t fFEcolumns;
73  Int_t fFErows;
74  TString fGeoFile;
75  Double_t fChargeCut;
76 
77  PndHypStripDigiPar *fDigiPar;
78  PndHypCalcStrip *fstripcalcTOP;
79  PndHypCalcStrip *fstripcalcBOT;
80  PndHypGeoHandling *fGeoH;
81  PndGeoHypPar *fGeoPar;
82  ClassDef(PndHypStripClusterTask, 3);
83 };
84 
85 #endif /* HYPCLUSTERTASK_H */
virtual void Exec(Option_t *opt)
virtual InitStatus Init()
Class to access the naming information of the MVD.
virtual ~PndHypStripClusterTask()
virtual void SetParContainers()
virtual InitStatus ReInit()