PandaRoot
PndEmc2DLocMaxFinderTEST.h
Go to the documentation of this file.
1 //--------------------------------------------------------------------------
2 // Description:
3 // Class EmcERatioLocMaxMaxFinder./
4 // Searches for local maxima in a cluster based on the ratio
5 // between the energy of the maxima crystal and that of
6 // its neighbours
7 //
8 // Environment:
9 // Software developed for the BaBar Detector at the SLAC B-Factory.
10 //
11 // Adapted for the PANDA experiment at GSI
12 //
13 // Author List:
14 // Phil Strother
15 // Helmut Schmuecker Ruhr-Uni Bochum
16 //
17 // Copyright Information:
18 // Copyright (C) 1997 Imperial College
19 // Modified:
20 // M. Babai
21 //------------------------------------------------------------------------
22 //#pragma once
23 #ifndef PNDEMC2DLOCALMAXFINDERTEST_H
24 #define PNDEMC2DLOCALMAXFINDERTEST_H
25 
26 #include "FairTask.h"
27 #include "TObject.h"
28 #include "TClonesArray.h"
29 #include "PndEmcDataTypes.h"
30 
31 class PndEmcDigi;
32 class PndEmcCluster;
34 class PndEmcGeoPar;
35 class PndEmcDigiPar;
36 class PndEmcRecoPar;
37 
42 class PndEmc2DLocMaxFinderTEST : public FairTask {
43  public:
44  // Constructors
45  PndEmc2DLocMaxFinderTEST(Int_t verbose = 0);
46  // Destructor
47  virtual ~PndEmc2DLocMaxFinderTEST();
48 
49  virtual InitStatus Init();
50  virtual void Exec(Option_t *opt);
51  virtual void FinishTask();
52 
53  void SetStorageOfData(Bool_t p = kTRUE) { fPersistance = p; };
54 
55  protected:
57  virtual void SetParContainers();
61  virtual bool isALocalMax(const PndEmcDigi *const, // const PndEmcCluster * const,
62  // const PndEmcCoordIndexSet &amongstTheseNeighbours ) const;
63  std::vector<Int_t> &amongstTheseNeighbours) const;
64 
65  private:
66  // Methods
67  // void getNeighbourDigis( PndEmcCoordIndexSet &, PndEmcCoordIndexSet &, int,
68  // std::map<Int_t, Int_t>) const;
69  void getNeighbourDigis(std::vector<Int_t> &, PndEmcCoordIndexSet &, int, Int_t, Int_t) const;
70 
71  // don't allow copying (-Weffc++)
72  PndEmc2DLocMaxFinderTEST(const PndEmc2DLocMaxFinderTEST &); // no implementation
73  PndEmc2DLocMaxFinderTEST &operator=(const PndEmc2DLocMaxFinderTEST &); // no implementation
74 
76  TClonesArray *fClusterArray;
78  TClonesArray *fDigiArray;
79  TClonesArray *fEmcDigi;
80 
81  PndEmcGeoPar *fGeoPar;
82  PndEmcDigiPar *fDigiPar;
83  PndEmcRecoPar *fRecoPar;
84 
85  Bool_t fPersistance;
86 
87  // Data members
88  Double_t fMaxECut;
89  Double_t fNeighbourECut;
90  Double_t fCutSlope;
91  Double_t fCutOffset;
92  Double_t fERatioCorr;
93  Int_t fTheNeighbourLevel;
94 
95  /* Verbosity level */
96  // Int_t fVerbose; //do not shadow FairTask::fVerbose
97 
98  ClassDef(PndEmc2DLocMaxFinderTEST, 2);
99 };
100 #endif // PNDEMC2DLOCALMAXFINDERTEST_HH
Searches for local maxima in a cluster.
virtual bool isALocalMax(const PndEmcDigi *const, std::vector< Int_t > &amongstTheseNeighbours) const
virtual void FinishTask()
stores crystal index coordinates (x,y) or (theta,phi)
virtual void Exec(Option_t *opt)
PndEmc2DLocMaxFinderTEST(Int_t verbose=0)
virtual ~PndEmc2DLocMaxFinderTEST()
virtual void SetParContainers()
parameter set of Emc digitisation
Definition: PndEmcDigiPar.h:12
std::set< PndEmcTwoCoordIndex * > PndEmcCoordIndexSet
virtual InitStatus Init()
void SetStorageOfData(Bool_t p=kTRUE)
Parameter set for Emc Reco.
Definition: PndEmcRecoPar.h:12