FairRoot/PandaRoot
PndEmcDigiWriteoutBuffer.cxx
Go to the documentation of this file.
1 /*
2  * PndEmcDigiWriteoutBuffer.cxx
3 */
4 
6 
8 
9 #include "PndEmcDigi.h"
10 
12 }
13 
14 
15 PndEmcDigiWriteoutBuffer::PndEmcDigiWriteoutBuffer(TString branchName, TString folderName, Bool_t persistance): FairWriteoutBuffer(branchName, "PndEmcDigi", folderName, persistance)
16 {
17 }
18 
20 }
21 
23 {
24  FairRootManager* ioman = FairRootManager::Instance();
25  TClonesArray* myArray = ioman->GetTClonesArray(fBranchName);
26  if (fVerbose > 1) std::cout << "Data Inserted: " << *(PndEmcDigi*)(data) << std::endl;
27  new ((*myArray)[myArray->GetEntries()]) PndEmcDigi(*(PndEmcDigi*)(data));
28 }
29 
30 double PndEmcDigiWriteoutBuffer::FindTimeForData(FairTimeStamp* data)
31 {
32  std::map<PndEmcDigi, double>::iterator it;
33  PndEmcDigi myData = *(PndEmcDigi*)data;
34  it = fData_map.find(myData);
35  if (it == fData_map.end())
36  return -1;
37  else
38  return it->second;
39 }
40 void PndEmcDigiWriteoutBuffer::FillDataMap(FairTimeStamp* data, double activeTime)
41 {
42  PndEmcDigi myData = *(PndEmcDigi*)data;
43  fData_map[myData] = activeTime;
44 }
46 {
47  PndEmcDigi myData = *(PndEmcDigi*)data;
48  if (fData_map.find(myData) != fData_map.end())
49  fData_map.erase(fData_map.find(myData));
50 }
int fVerbose
Definition: poormantracks.C:24
represents the reconstructed hit of one emc crystal
Definition: PndEmcDigi.h:40
void AddNewDataToTClonesArray(FairTimeStamp *)
virtual void FillDataMap(FairTimeStamp *data, double activeTime)
ClassImp(PndEmcDigiWriteoutBuffer)
virtual double FindTimeForData(FairTimeStamp *data)
std::map< PndEmcDigi, double > fData_map
virtual void EraseDataFromDataMap(FairTimeStamp *data)