FairRoot/PandaRoot
PndEmcWaveformData.h
Go to the documentation of this file.
1 //#pragma once
2 #ifndef PNDEMCWAVEFORMDATA_H
3 #define PNDEMCWAVEFORMDATA_H
4 
5 #include "FairTimeStamp.h"
6 #include "FairLink.h"
8 
9 #include "TRef.h"
10 #include "TObject.h"
11 
12 
13 #include <ostream>
14 #include <map>
15 
16 class PndEmcWaveform;
17 
23 class PndEmcWaveformData : public FairTimeStamp {
24 
25  public:
27  PndEmcWaveformData(Int_t detId, PndEmcAbsWaveformSimulator* wfSimulator);
28 
29  virtual ~PndEmcWaveformData() {};
30 
31  virtual bool operator <(const PndEmcWaveformData& wfData) const;
33  virtual PndEmcWaveformData& operator+=(const PndEmcWaveformData& toAdd);
34 
35  virtual bool equal(FairTimeStamp* data);
36 
37  virtual void AddHit(const FairLink& linkToHit, Double_t absEventTime, Double_t energy);
38 
39  Int_t GetDetectorId() { return fDetectorId; };
40  Int_t GetNHits() { return fHitMap.size(); };
41  const std::map<Double_t, Double_t>& GetHitMap() { return fHitMap; };
44  void GetHitParameter(Int_t hitNo, Double_t& time, Double_t& energy);
45 
46  void SetWaveformSimulator(PndEmcAbsWaveformSimulator* wfSimulator) { fWfSimulator.SetObject(wfSimulator); };
48 
49  protected:
50  Int_t fDetectorId;
52 
54  std::map<Double_t, Double_t> fHitMap;
55 
56  ClassDef(PndEmcWaveformData, 1)
57 };
58 
59 #endif
void SetTimeOfLastSample(Double_t time)
void GetHitParameter(Int_t hitNo, Double_t &time, Double_t &energy)
virtual bool operator<(const PndEmcWaveformData &wfData) const
void SetWaveformSimulator(PndEmcAbsWaveformSimulator *wfSimulator)
virtual PndEmcWaveformData & operator+=(const PndEmcWaveformData &toAdd)
const std::map< Double_t, Double_t > & GetHitMap()
Abstract base class for waveform simulator.
Double_t
TFile * out
Definition: reco_muo.C:20
PndEmcAbsWaveformSimulator * GetWaveformSimulator()
represents a simulated waveform in an emc crystal
virtual void AddHit(const FairLink &linkToHit, Double_t absEventTime, Double_t energy)
virtual bool equal(FairTimeStamp *data)
Double_t GetTimeOfLastSample()
std::map< Double_t, Double_t > fHitMap
represents a simulated waveform in an emc crystal, used by PndEmcFWEndcapTimebasedWaveforms ...
friend std::ostream & operator<<(std::ostream &out, PndEmcWaveformData &wfData)
Double_t energy
Definition: plot_dirc.C:15