FairRoot/PandaRoot
PndEmcMultiWaveformToCalibratedDigi.h
Go to the documentation of this file.
1 //----------------------------------------------------------------------
2 // File and Version Information:
3 // $Id: Exp $
4 //
5 // Description:
6 // Class PndEmcMultiWaveformToCalibratedDigi. Module to take the hit list for the
7 // calorimeter and make ADC waveforms from them.
8 //
9 // Software developed for the BaBar Detector at the SLAC B-Factory.
10 // Adapted for the PANDA experiment at GSI
11 //
12 // Author List:
13 // Phil Strother Original Author
14 // Dima Melnichuk - adaption for PANDA
15 //
16 // Copyright Information:
17 // Copyright (C) 1996 Imperial College
18 //
19 //----------------------------------------------------------------------
20 //#pragma once
21 #ifndef PndEmcMultiWaveformToCalibratedDigi_H
22 #define PndEmcMultiWaveformToCalibratedDigi_H
23 
24 #include <PndPersistencyTask.h>
25 #include <string>
26 #include <map>
27 #include "TString.h"
28 //#include <vector>
29 
30 class PndEmcHit;
33 class PndEmcWaveform;
34 
35 class TClonesArray;
36 class PndEmcDigiPar;
37 class PndEmcRecoPar;
38 class PndEmcAbsPSA;
40 
48 {
49 
50 public:
51 
52  // Constructors
53 
54  PndEmcMultiWaveformToCalibratedDigi(Int_t verbose=0, Bool_t storedigis=kTRUE);
55 
56  // Destructor
57 
59 
61  virtual InitStatus Init();
62 
63  void SetCalibrationFile(const char* calibrationfilename){fCalibrationFileName = calibrationfilename;};
64 
66  virtual void Exec(Option_t* opt);
67 
68  void SetStorageOfData(Bool_t val); // Method to specify whether digis are stored or not.
69 
70  virtual void SetPSAAlgorithm(PndEmcAbsPSA *psa){fpsaAlgorithm=psa;}
72 
73 private:
74  void ReadCalibrationFile();
76  TClonesArray* fWaveformArray;
77 
79  TClonesArray* fDigiArray;
80 
91 
92  //std::string fDigiPosMethod;// "surface" or "depth"
97 
102 
106  virtual void SetParContainers();
107 
109  Int_t fVerbose;
110 
111  Double_t fWfNormalisation; // Waveform normalisation constant
114 
115  std::map<Int_t,Double_t> fCalibrationMap;
116  std::map<Int_t,Double_t> fGainMap;
118 
120 
121 
122 };
123 
124 #endif
125 
126 
127 
128 
129 
ClassDef(PndEmcMultiWaveformToCalibratedDigi, 2)
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11
Module to take the hit list for the calorimeter and make ADC waveforms from them. ...
#define verbose
stores crystal index coordinates (x,y) or (theta,phi)
Double_t
parameter set of Emc digitisation
Definition: PndEmcDigiPar.h:12
void SetCalibrationFile(const char *calibrationfilename)
represents a simulated waveform in an emc crystal
Class to hold multiple waveforms from one Emc Hit / ADC readout.
Baseclass for pulseshapeanalysis ( featureextraction )
Definition: PndEmcAbsPSA.h:21
represents the deposited energy of one emc crystal from simulation
Definition: PndEmcHit.h:26
pulseshape interface
PndEmcMultiWaveformToCalibratedDigi(Int_t verbose=0, Bool_t storedigis=kTRUE)
Parameter set for Emc Reco.
Definition: PndEmcRecoPar.h:12