PandaRoot
PndDrcHitFinder.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 
18 #ifndef PNDDRCHITFINDER_H
19 #define PNDDRCHITFINDER_H
20 
21 #include <PndPersistencyTask.h>
22 #include "PndDrcDigi.h"
23 #include "FairTSBufferFunctional.h"
24 #include "FairGeoVector.h"
25 #include "FairGeoTransform.h"
26 #include "FairMCEventHeader.h"
27 #include "TVector3.h"
28 //#include "TRandom.h"
29 #include "TGeoMatrix.h"
30 #include "TGeoBBox.h"
31 #include "PndGeoHandling.h"
32 
33 #include "PndGeoDrc.h"
34 #include "PndDrcPDHit.h"
35 #include <string>
36 #include <vector>
37 
38 class TClonesArray;
39 
41  public:
44 
46  PndDrcHitFinder(Int_t iVerbose);
47 
49  PndDrcHitFinder(const char *name, Int_t iVerbose);
50 
52  virtual ~PndDrcHitFinder();
53 
55  virtual void SetParContainers();
56  virtual InitStatus Init();
57  virtual InitStatus ReInit();
58 
60  virtual void Exec(Option_t *opt);
61 
62  virtual void FinishEvent();
63  virtual void FinishTask();
64 
65  void SetPixelFactor(Int_t factor) { fPixelFactor = factor; }
66 
67  protected:
68  Bool_t fDigiPixelMCInfo; // switch to turn on/off storing additional MC Info of Digis
69 
71  TClonesArray *fDigiArray;
72 
74  TClonesArray *fPdHitArray;
75 
76  FairMCEventHeader *fMCEventHeader;
77 
78  void Register();
79  void Reset();
80  void ProduceHits();
81 
82  TString fInBranchName;
83  Int_t fPixelFactor;
84  Double_t fPixelSize; // pixel size;
85  Double_t fPixelGap; // gap betwen neighboring pixels
86  Double_t fPixelStep;
87  Double_t fMcpActiveArea; // dimension of the active area of one MCP
88  Int_t fNpix; // pixel rows in one one MCP
89  Int_t fPixelHits;
92  Int_t fEventNr;
94 
95  BinaryFunctor *fStopFunctor;
96  BinaryFunctor *fGapFunctor;
97 
98  std::vector<PndDrcPDHit> fPDHitList;
99 
101 };
102 
103 #endif
PndGeoDrc * fGeo
virtual InitStatus Init()
BinaryFunctor * fGapFunctor
TClonesArray * fPdHitArray
FairMCEventHeader * fMCEventHeader
virtual ~PndDrcHitFinder()
TClonesArray * fDigiArray
virtual InitStatus ReInit()
Class to access the naming information of the MVD.
virtual void SetParContainers()
virtual void Exec(Option_t *opt)
BinaryFunctor * fStopFunctor
PndGeoHandling * fGeoH
void SetPixelFactor(Int_t factor)
PndDrcDigi * fDigi
std::vector< PndDrcPDHit > fPDHitList
virtual void FinishEvent()
Double_t fMcpActiveArea
virtual void FinishTask()
ClassDef(PndDrcHitFinder, 1)