24 #ifndef PNDWRITEOUTBUFFER_H_
25 #define PNDWRITEOUTBUFFER_H_
31 #include "FairWriteoutBuffer.h"
32 #include "FairTimeStamp.h"
49 virtual std::vector<FairTimeStamp*>
GetAllData();
50 virtual void FillNewData(FairTimeStamp* data,
double activeTime);
55 TClonesArray* myArray = FairRootManager::Instance()->GetTClonesArray(
fBranchName);
60 virtual void FillDataMap(FairTimeStamp* data,
double activeTime) = 0;
68 virtual std::vector<std::pair<double, FairTimeStamp*> >
Modify(std::pair<double, FairTimeStamp*> oldData, std::pair<double, FairTimeStamp*> newData){
69 std::vector<std::pair<double, FairTimeStamp*> > result;
70 result.push_back(oldData);
virtual void FillDataMap(FairTimeStamp *data, double activeTime)=0
add a new element in the search buffer
virtual void DeleteOldData()
std::multimap< double, FairTimeStamp * > fDeadTime_map
virtual std::vector< FairTimeStamp * > GetRemoveOldData(double time)
virtual std::vector< std::pair< double, FairTimeStamp * > > Modify(std::pair< double, FairTimeStamp * > oldData, std::pair< double, FairTimeStamp * > newData)
Double_t val[nBoxes][nFEBox]
virtual ~PndWriteoutBuffer()
virtual void EraseDataFromDataMap(FairTimeStamp *data)=0
delete the element from the search buffer (see PndSdsDigiPixelWriteoutBuffer)
virtual void FillNewData(FairTimeStamp *data, double activeTime)
virtual void WriteOutData(double time)
virtual void AddNewDataToTClonesArray(FairTimeStamp *data)=0
store the data from the FairTimeStamp pointer in a TClonesArray (you have to cast it to your type of ...
Bool_t fActivateBuffering
virtual double FindTimeForData(FairTimeStamp *data)=0
if the same data object (like a pad or a pixel) is already present in the buffer, the time of this ob...
virtual void SaveDataToTree(Bool_t val=kTRUE)
If SaveDataToTree is set the data is stored at the end of the buffering into the given TClonesArray...
virtual void WriteOutAllData()
A container class to store digi data during events.
virtual std::vector< FairTimeStamp * > GetAllData()
virtual void ActivateBuffering(Bool_t val=kTRUE)
fActivateBuffering has to be set to kTRUE to use the buffering. Otherwise the data is directly stored...
virtual void SetVerbose(Int_t val)
ClassDef(PndWriteoutBuffer, 1)