FairRoot/PandaRoot
PndEmcMakeClusterOnline.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------
2 // File and Version Information:
3 // $Id: $
4 // STUB FOR MARCEL TIEMENS to implement online clustering algorithm in pandaroot
5 //---------------------------------------------------------------------
6 //#pragma once
7 #ifndef PNDEMCMAKECLUSTERONLINE_H
8 #define PNDEMCMAKECLUSTERONLINE_H
9 
10 #include <PndPersistencyTask.h>
11 #include <vector>
12 
13 #include "FairTSBufferFunctional.h"
14 #include "TStopwatch.h"
15 
16 class TClonesArray;
17 class TObjectArray;
18 class PndEmcDigi;
19 class PndEmcCluster;
20 class PndEmcGeoPar;
21 class PndEmcRecoPar;
22 class BinaryFunctor;
23 
24 
26 {
27 public:
28 
29  // Constructors
30 
31  PndEmcMakeClusterOnline(Int_t verbose=0, Bool_t storeclusters=kTRUE);
32 
33  // Destructor
34 
35  virtual ~PndEmcMakeClusterOnline( );
36 
38  virtual InitStatus Init();
39 
41  virtual void Exec(Option_t* opt);
42 
43  virtual void FinishTask();
44 
46 
49 
52 
53 
54 protected:
55  virtual void FinishClusters();
56  void FinishCluster(PndEmcCluster* tmpcluster);
57 
58 private:
60  TClonesArray* fDigiArray;
61 
63  TClonesArray* fClusterArray;
64 
72 
74  BinaryFunctor* fDigiFunctor;
75 
76  Bool_t fStoreClusterBase; //restore digis in case of a timebased run
77 
79  virtual void SetParContainers();
80 
83 
84  TStopwatch fTimer;
85 
86  ClassDef(PndEmcMakeClusterOnline, 1)
87 };
88 #endif // PNDEMCMAKECLUSTERONLINE_HH
represents the reconstructed hit of one emc crystal
Definition: PndEmcDigi.h:40
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11
#define verbose
Double_t
void FinishCluster(PndEmcCluster *tmpcluster)
PndEmcMakeClusterOnline & operator=(const PndEmcMakeClusterOnline &)
a cluster (group of neighboring crystals) of hit emc crystals
Definition: PndEmcCluster.h:29
TClonesArray * fClusterArray
active clusters
virtual void Exec(Option_t *opt)
Double_t fClusterActiveTime
Defines how long clusters are kept open in timebased reconstruction.
void SetStorageOfData(Bool_t val)
Method to specify whether clusters are stored or not.
void SetClusterActiveTime(Double_t time)
Override EmcRecoPar cluster active time parameter ..to be set in ns!!!
Parameter set for Emc Reco.
Definition: PndEmcRecoPar.h:12
void StoreClusterBaseDigis(Bool_t val=kTRUE)
Restoring digis makes only sense if reconstruction is done timebased.
PndEmcMakeClusterOnline(Int_t verbose=0, Bool_t storeclusters=kTRUE)