FairRoot/PandaRoot
PndEmcWaveformBuffer.h
Go to the documentation of this file.
1 /*
2  * PndEmcWaveformBuffer.h
3  */
4 
5 #ifndef PNDEMCWAVEFORMBUFFER_H_
6 #define PNDEMCWAVEFORMBUFFER_H_
7 
8 #include "FairWriteoutBuffer.h"
9 
10 class FairTimeStamp;
11 class PndEmcWaveformData;
12 
13 class TClonesArray;
14 
20 class PndEmcWaveformBuffer : public FairWriteoutBuffer
21 {
22 public:
24  PndEmcWaveformBuffer(TString branchName, TString className, TString folderName, Bool_t persistance);
25 
26  virtual ~PndEmcWaveformBuffer();
27 
28  virtual void AddNewDataToTClonesArray(FairTimeStamp*);
29  virtual double FindTimeForData(FairTimeStamp* data) ;
30  virtual void FillDataMap(FairTimeStamp* data, double activeTime) ;
31  virtual void EraseDataFromDataMap(FairTimeStamp* data);
32 
33  virtual void DeleteOldData();
34  virtual void StoreWaveformData(TString branchName, TString folderName, bool persistance);
35 
36  virtual void FillNewData(PndEmcWaveformData*);
37 
38 private:
39  // don't allow copying (-Weffc++)
40  PndEmcWaveformBuffer(const PndEmcWaveformBuffer&); // no implementation
41  PndEmcWaveformBuffer& operator= (const PndEmcWaveformBuffer&); // no implementation
42 
43 protected:
44 
45  std::map<PndEmcWaveformData, double> fData_map;
46  std::vector<std::pair<double, FairTimeStamp*> > Modify(std::pair<double, FairTimeStamp*> oldData, std::pair<double, FairTimeStamp* > newData);
47 
49 
51  TClonesArray* fWfDataArray;
53 };
54 
55 #endif /* PNDEMCWAVEFORMBUFFER_H*/
virtual void EraseDataFromDataMap(FairTimeStamp *data)
std::map< PndEmcWaveformData, double > fData_map
virtual void StoreWaveformData(TString branchName, TString folderName, bool persistance)
std::vector< std::pair< double, FairTimeStamp * > > Modify(std::pair< double, FairTimeStamp * > oldData, std::pair< double, FairTimeStamp * > newData)
virtual void AddNewDataToTClonesArray(FairTimeStamp *)
PndEmcWaveformBuffer & operator=(const PndEmcWaveformBuffer &)
virtual double FindTimeForData(FairTimeStamp *data)
buffer for waveforms, used by PndEmcFWEndcapTimebasedWaveforms
ClassDef(PndEmcWaveformBuffer, 0)
virtual void FillNewData(PndEmcWaveformData *)
represents a simulated waveform in an emc crystal, used by PndEmcFWEndcapTimebasedWaveforms ...
virtual void FillDataMap(FairTimeStamp *data, double activeTime)