PandaRoot
PndEmcWaveformWriteoutBuffer.h
Go to the documentation of this file.
1 /*
2  * PndEmcWaveformWriteoutBuffer.h
3  */
4 
5 #ifndef PNDEMCWAVEFORMWRITEOUTBUFFER_H_
6 #define PNDEMCWAVEFORMWRITEOUTBUFFER_H_
7 
8 #include "FairWriteoutBuffer.h"
9 #include "PndEmcWaveform.h"
10 #include "TFile.h"
11 #include "TTree.h"
12 class FairTimeStamp;
13 
14 class PndEmcWaveformWriteoutBuffer : public FairWriteoutBuffer {
15 
16  public:
18  PndEmcWaveformWriteoutBuffer(TString branchName, TString folderName, Bool_t persistance);
19  void AddNewDataToTClonesArray(FairTimeStamp *);
20 
22 
23  virtual double FindTimeForData(FairTimeStamp *data);
24  virtual void FillDataMap(FairTimeStamp *data, double activeTime);
25  virtual void EraseDataFromDataMap(FairTimeStamp *data);
26 
27  virtual void SaveToTree(bool flag);
28  virtual void Write();
29  // virtual void FillDataToDeadTimeMap(FairTimeStamp* data, double activeTime);
30  virtual std::vector<std::pair<double, FairTimeStamp *>> Modify(std::pair<double, FairTimeStamp *> oldData, std::pair<double, FairTimeStamp *> newData);
31 
32  protected:
33  void WriteToFile(PndEmcWaveform *theWaveform);
34  std::map<PndEmcWaveform, double> fData_map;
35  // std::map<long, double> fData_map;
36 
38 
39  Bool_t fSaveToFile;
40  TFile *fWave;
41  TTree *tWave;
42  Int_t fMod;
43  Double_t fEnergy;
44  Double_t fPeak;
45  Int_t fXcor;
46  Int_t fYcor;
47  Int_t fIdx;
48  Int_t fDetID;
49  Double_t fDiffTime;
50  Double_t fOverlap;
51  Int_t fPileupCount;
52 };
53 
54 #endif /* PNDEMCWAVEFORMWRITEOUTBUFFER_H_ */
virtual double FindTimeForData(FairTimeStamp *data)
std::map< PndEmcWaveform, double > fData_map
virtual std::vector< std::pair< double, FairTimeStamp * > > Modify(std::pair< double, FairTimeStamp *> oldData, std::pair< double, FairTimeStamp *> newData)
void WriteToFile(PndEmcWaveform *theWaveform)
ClassDef(PndEmcWaveformWriteoutBuffer, 1)
void AddNewDataToTClonesArray(FairTimeStamp *)
represents a simulated waveform in an emc crystal
virtual void FillDataMap(FairTimeStamp *data, double activeTime)
virtual void EraseDataFromDataMap(FairTimeStamp *data)
virtual void SaveToTree(bool flag)