FairRoot/PandaRoot
PndEmcHitsToWaveform.h
Go to the documentation of this file.
1 //----------------------------------------------------------------------
2 // File and Version Information:
3 // $Id: Exp $
4 //
5 // Description:
6 // Class PndEmcHitsToWaveform. 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 // Copyright Information:
16 // Copyright (C) 1996 Imperial College
17 //----------------------------------------------------------------------
18 //#pragma once
19 #ifndef PndEmcHitsToWaveform_H
20 #define PndEmcHitsToWaveform_H
21 
22 #include <PndPersistencyTask.h>
23 #include "PndEmcWaveform.h"
24 #include "PndEmcTwoCoordIndex.h"
25 
26 
27 //class PndEmcTwoCoordIndex;
28 //class PndEmcWaveform;
29 class PndEmcMapper;
30 
31 class TClonesArray;
32 class PndEmcDigiPar;
33 class PndEmcGeoPar;
36 
42 {
43 public:
44  // Constructors
45  PndEmcHitsToWaveform(Int_t verbose=0, Bool_t storewaves=kTRUE);
46  // Destructor
47  virtual ~PndEmcHitsToWaveform();
48 
49  virtual InitStatus Init();
50  virtual void Exec(Option_t* opt);
51 
52  //PndEmcWaveform * AddWaveform(Int_t detId,Int_t hitIndex,Int_t numOfSamples);
53  PndEmcWaveform * AddWaveform(Int_t detId,Int_t hitIndex,Int_t numOfSamples, Double_t timeStamp, Double_t sampleRate, Int_t MCTrackID);
54 
55  void SetStorageOfData(Bool_t val); // Method to specify whether waveforms are stored or not.
56 
58 
59  void FinishTask();
60 protected:
62  virtual void SetParContainers();
63 private:
64  // don't allow copying (-Weffc++)
65  PndEmcHitsToWaveform(const PndEmcHitsToWaveform&); // no implementation
66  PndEmcHitsToWaveform& operator= (const PndEmcHitsToWaveform&); // no implementation
67 
68 private:
70  TClonesArray* fHitArray;
71 
73  TClonesArray* fWaveformArray;
76 
81 
82  Int_t fNBits;
119  Int_t fMapVersion;
120 
122 
126 
131  Int_t fVerbose;
132 
133  //counters for task
134  Int_t HowManyHit;
137 
138  //pulse shapes
142 
144 };
145 
146 #endif
147 
148 
149 
150 
151 
Takes list of PndEmcHits and creates PndEmcWaveform.
virtual InitStatus Init()
Init Task.
PndEmcHitsToWaveform(Int_t verbose=0, Bool_t storewaves=kTRUE)
Double_t fIncoherent_elec_noise_width_GeV_VPT
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11
#define verbose
TClonesArray * fWaveformArray
Emc geometry mapper.
Definition: PndEmcMapper.h:22
PndEmcAbsPulseshape * pulseshape2
PndEmcWaveformWriteoutBuffer * fDataBuffer
PndEmcHitsToWaveform & operator=(const PndEmcHitsToWaveform &)
ClassDef(PndEmcHitsToWaveform, 2)
void SetStorageOfData(Bool_t val)
Double_t fNPhotoElectronsPerMeVAPDBarrel
Double_t fIncoherent_elec_noise_width_GeV_APD
Double_t
parameter set of Emc digitisation
Definition: PndEmcDigiPar.h:12
represents a simulated waveform in an emc crystal
PndEmcAbsPulseshape * pulseshape1
virtual void Exec(Option_t *opt)
Runs the task.
PndEmcWaveform * AddWaveform(Int_t detId, Int_t hitIndex, Int_t numOfSamples, Double_t timeStamp, Double_t sampleRate, Int_t MCTrackID)
Create a new PndEmcWaveform from the passed parameters.
pulseshape interface
PndEmcAbsPulseshape * pulseshape3
void FinishTask()
Called at end of task.