FairRoot/PandaRoot
PndEmcExpClusterSplitter.h
Go to the documentation of this file.
1 //--------------------------------------------------------------------------
2 // File and Version Information:
3 // $Id:$
4 //
5 // Description:
6 // Class PndEmcExpClusterSplitter.
7 // Concrete implementation of EmcAbsClusterSplitter which splits
8 // on the basis of exponential distance from the bump centroid.
9 //
10 // Environment:
11 // Software developed for the BaBar Detector at the SLAC B-Factory.
12 //
13 // Adapted for the PANDA experiment at GSI
14 //
15 // Author List:
16 // Phil Strother
17 //
18 // Copyright Information:
19 // Copyright (C) 1997 Imperial College
20 //
21 // Modified:
22 // M. Babai
23 //------------------------------------------------------------------------
24 //#pragma once
25 #ifndef PNDEMCEXPCLUSTERSPLITTER_H
26 #define PNDEMCEXPCLUSTERSPLITTER_H
27 
28 //---------------
29 // C++ Headers --
30 //---------------
31 #include <PndPersistencyTask.h>
32 #include <vector>
33 #include <map>
34 
35 #include "TObject.h"
36 #include "PndEmcDataTypes.h"
37 #include "PndEmcDigiCalibrator.h"
38 //------------------------------------
39 // Collaborating Class Declarations --
40 //------------------------------------
41 
42 class PndEmcCluster;
43 class PndEmcBump;
44 class PndEmcDigi;
45 class PndEmcSharedDigi;
47 
48 class PndEmcGeoPar;
49 class PndEmcDigiPar;
50 class PndEmcRecoPar;
51 
52 
58 {
59 public:
60  // Constructor
62  // Destructor
63  virtual ~PndEmcExpClusterSplitter( );
64 
65  // Methods
66  virtual InitStatus Init();
67  virtual void Exec(Option_t* opt);
68  virtual void FinishTask();
69 
73 
74 protected:
76  virtual void SetParContainers();
77 
78 private:
79  // don't allow copying (-Weffc++)
80  PndEmcExpClusterSplitter(const PndEmcExpClusterSplitter&); // no implementation
81  PndEmcExpClusterSplitter& operator= (const PndEmcExpClusterSplitter&); // no implementation
82 
83 private:
85  TClonesArray* fDigiArray;
86  TClonesArray* fClusterArray;
87 
89  TClonesArray* fBumpArray;
90  TClonesArray* fSharedDigiArray;
91 
95 
96  std::vector<Double_t> fClusterPosParam;
97 
98  // Data members
104  Int_t fMaxBumps;
106 
107  /* Verbosity level */
108  // Int_t fVerbose; //do not shadow PndPersistencyTask::fVerbose
109 
110  //added for time information
113 
115 };
116 #endif // EMCABSCLUSTERSPLITTER_HH
std::vector< Double_t > fClusterPosParam
PndEmcExpClusterSplitter & operator=(const PndEmcExpClusterSplitter &)
represents the reconstructed hit of one emc crystal
Definition: PndEmcDigi.h:40
virtual void Exec(Option_t *opt)
Runs the task.
#define verbose
void SetPersistency(Bool_t val=kTRUE)
stores crystal index coordinates (x,y) or (theta,phi)
PndEmcRecoPar * fRecoPar
Reconstruction parameter container.
Double_t p
Definition: anasim.C:58
PndEmcDigiCalibrator digiCalibrator
Double_t
used to share PndEmcDigis between bumps
splits clusters on the basis of exponential distance from the bump centroid
parameter set of Emc digitisation
Definition: PndEmcDigiPar.h:12
PndEmcGeoPar * fGeoPar
Geometry parameter container.
PndEmcDigiPar * fDigiPar
Digitisation parameter container.
a cluster (group of neighboring crystals) of hit emc crystals
Definition: PndEmcCluster.h:29
ClassDef(PndEmcExpClusterSplitter, 2)
virtual InitStatus Init()
Init Task.
virtual void FinishTask()
Called at end of task.
void SetStorageOfData(Bool_t p=kTRUE)
PndEmcSharedDigi * AddSharedDigi(PndEmcDigi *, Double_t weight)
Adds a new PndEmcSharedDigi to fSharedDigiArray and returns it.
PndEmcBump * AddBump()
Adds a new PndEmcBump to fBumpArray and returns it.
represents a reconstructed (splitted) emc cluster
Definition: PndEmcBump.h:34
Parameter set for Emc Reco.
Definition: PndEmcRecoPar.h:12