CbmMvdHitfinderTB.h 2.13 KB
Newer Older
1
/* Copyright (C) 2017 Institut fuer Kernphysik, Goethe-Universitaet Frankfurt, Frankfurt
2
3
   SPDX-License-Identifier: GPL-3.0-only
   Authors: Philipp Sitzmann [committer] */
4

5
6
7
8
9
10
11
12
13
14
// ----------------------------------------------------------------------------
// -----                    CbmMvdHitfinderTB header file                    -----
// -----                   Created by C. Dritsa (2009)                    -----
// -----                   Maintained by M.Deveaux (m.deveaux(att)gsi.de) -----
// ----------------------------------------------------------------------------

#ifndef CBMMVDHITFINDERTB_H
#define CBMMVDHITFINDERTB_H 1

#include "FairTask.h"
15

16
17
18
19
20
#include "TStopwatch.h"

class CbmMvdDetector;


Administrator's avatar
Administrator committed
21
class CbmMvdHitfinderTB : public FairTask {
22

Administrator's avatar
Administrator committed
23
24
public:
  /** Default constructor **/
25
26
27
28
29
30
31
  CbmMvdHitfinderTB();


  /** Standard constructor 
  *@param name  Task name

  **/
Administrator's avatar
Administrator committed
32
33
  CbmMvdHitfinderTB(const char* name, Int_t iVerbose = 1);
  CbmMvdHitfinderTB(const char* name, Int_t mode, Int_t iVerbose);
34
35
36
37
38

  /** Destructor **/
  virtual ~CbmMvdHitfinderTB();

  void Exec(Option_t* opt);
39
40
  void UseClusterfinder(Bool_t clusterfinderFlag)
  {
Administrator's avatar
Administrator committed
41
42
43
    useClusterfinder = clusterfinderFlag;
  };  //* enable use of external clusterfinder
  void ShowDebugHistos() { fShowDebugHistos = kTRUE; }
44
45
46

protected:
private:
Administrator's avatar
Administrator committed
47
  CbmMvdDetector* fDetector;
48

Administrator's avatar
Administrator committed
49
50
51
  TClonesArray* fInputDigis;
  TClonesArray* fInputCluster;
  TClonesArray* fHits;
52

Administrator's avatar
Administrator committed
53
54
55
56
57
  UInt_t fHitfinderPluginNr;
  Bool_t useClusterfinder;
  Bool_t fShowDebugHistos;
  TStopwatch fTimer;  ///< ROOT timer
  Int_t fmode;
58

Administrator's avatar
Administrator committed
59
60
  // -----   Private methods   ---------------------------------------------
  /** Intialisation **/
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
  virtual InitStatus Init();


  /** Reinitialisation **/
  virtual InitStatus ReInit();


  /** Virtual method Finish **/
  virtual void Finish();


  /** Register the output arrays to the IOManager **/
  void Register();


  /** Clear the hit arrays **/
Administrator's avatar
Administrator committed
77
  void Reset();
78
79
80
81
82
83
84
85
86
87

  void GetMvdGeometry();

  /** Print digitisation parameters **/
  void PrintParameters();

private:
  CbmMvdHitfinderTB(const CbmMvdHitfinderTB&);
  CbmMvdHitfinderTB operator=(const CbmMvdHitfinderTB&);

Administrator's avatar
Administrator committed
88
  ClassDef(CbmMvdHitfinderTB, 1);
89
};
Administrator's avatar
Administrator committed
90
91
92


#endif