FairRoot/PandaRoot
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PndGemDigiWriteoutBuffer Class Reference

#include <PndGemDigiWriteoutBuffer.h>

Inheritance diagram for PndGemDigiWriteoutBuffer:

Public Member Functions

 PndGemDigiWriteoutBuffer ()
 
 PndGemDigiWriteoutBuffer (TString branchName, TString folderName, Bool_t persistance)
 
void AddNewDataToTClonesArray (FairTimeStamp *)
 
virtual ~PndGemDigiWriteoutBuffer ()
 
virtual std::vector< std::pair
< double, FairTimeStamp * > > 
Modify (std::pair< double, FairTimeStamp * > oldData, std::pair< double, FairTimeStamp * > newData)
 
virtual double FindTimeForData (FairTimeStamp *data)
 
virtual void FillDataMap (FairTimeStamp *data, double activeTime)
 
virtual void EraseDataFromDataMap (FairTimeStamp *data)
 

Protected Member Functions

 ClassDef (PndGemDigiWriteoutBuffer, 1)
 

Protected Attributes

std::map< PndGemDigi, double > fData_map
 

Detailed Description

Definition at line 16 of file PndGemDigiWriteoutBuffer.h.

Constructor & Destructor Documentation

PndGemDigiWriteoutBuffer::PndGemDigiWriteoutBuffer ( )

Definition at line 15 of file PndGemDigiWriteoutBuffer.cxx.

16  : FairWriteoutBuffer()
17 {
18 
19  // TODO Auto-generated constructor stub
20 
21 }
PndGemDigiWriteoutBuffer::PndGemDigiWriteoutBuffer ( TString  branchName,
TString  folderName,
Bool_t  persistance 
)

Definition at line 24 of file PndGemDigiWriteoutBuffer.cxx.

25  : FairWriteoutBuffer(branchName, "PndGemDigi", folderName, persistance)
26 {
27 }
PndGemDigiWriteoutBuffer::~PndGemDigiWriteoutBuffer ( )
virtual

Definition at line 29 of file PndGemDigiWriteoutBuffer.cxx.

29  {
30  // TODO Auto-generated destructor stub
31 }

Member Function Documentation

void PndGemDigiWriteoutBuffer::AddNewDataToTClonesArray ( FairTimeStamp *  data)

Definition at line 50 of file PndGemDigiWriteoutBuffer.cxx.

References fVerbose.

51 {
52  FairRootManager* ioman = FairRootManager::Instance();
53  TClonesArray* myArray = ioman->GetTClonesArray(fBranchName);
54  if (fVerbose > 1) std::cout << "Data Inserted: " << *(PndGemDigi*)(data) << std::endl;
55  new ((*myArray)[myArray->GetEntries()]) PndGemDigi(*(PndGemDigi*)(data));
56 }
int fVerbose
Definition: poormantracks.C:24
PndGemDigiWriteoutBuffer::ClassDef ( PndGemDigiWriteoutBuffer  ,
 
)
protected
void PndGemDigiWriteoutBuffer::EraseDataFromDataMap ( FairTimeStamp *  data)
virtual

Definition at line 73 of file PndGemDigiWriteoutBuffer.cxx.

References fData_map.

74 {
75  PndGemDigi myData = *(PndGemDigi*)data;
76  if (fData_map.find(myData) != fData_map.end())
77  fData_map.erase(fData_map.find(myData));
78 }
std::map< PndGemDigi, double > fData_map
void PndGemDigiWriteoutBuffer::FillDataMap ( FairTimeStamp *  data,
double  activeTime 
)
virtual

Definition at line 68 of file PndGemDigiWriteoutBuffer.cxx.

References fData_map.

69 {
70  PndGemDigi myData = *(PndGemDigi*)data;
71  fData_map[myData] = activeTime;
72 }
std::map< PndGemDigi, double > fData_map
double PndGemDigiWriteoutBuffer::FindTimeForData ( FairTimeStamp *  data)
virtual

Definition at line 58 of file PndGemDigiWriteoutBuffer.cxx.

References fData_map.

59 {
60  std::map<PndGemDigi, double>::iterator it;
61  PndGemDigi myData = *(PndGemDigi*)data;
62  it = fData_map.find(myData);
63  if (it == fData_map.end())
64  return -1;
65  else
66  return it->second;
67 }
std::map< PndGemDigi, double > fData_map
std::vector< std::pair< double, FairTimeStamp * > > PndGemDigiWriteoutBuffer::Modify ( std::pair< double, FairTimeStamp * >  oldData,
std::pair< double, FairTimeStamp * >  newData 
)
virtual

Definition at line 33 of file PndGemDigiWriteoutBuffer.cxx.

References fVerbose.

33  {
34  std::vector<std::pair<double, FairTimeStamp*> > result;
35  std::pair<double, FairTimeStamp*> singleResult;
36  if (newData.first > 0)
37  singleResult.first = oldData.first + newData.first;
38  singleResult.second = oldData.second;
39  ((PndGemDigi*)singleResult.second)->AddCharge(((PndGemDigi*)newData.second)->GetCharge());
40  if (fVerbose > 0){
41  std::cout << "Modify hit" << std::endl;
42  std::cout << "OldData: " << oldData.first << " : " << oldData.second << " NewData: " << newData.first << " : " << newData.second << std::endl;
43  std::cout << "Resulting Data: " << singleResult.first << " : " << singleResult.second << std::endl;
44  }
45 
46  result.push_back(singleResult);
47  return result;
48 }
int fVerbose
Definition: poormantracks.C:24

Member Data Documentation

std::map<PndGemDigi, double> PndGemDigiWriteoutBuffer::fData_map
protected

Definition at line 32 of file PndGemDigiWriteoutBuffer.h.

Referenced by EraseDataFromDataMap(), FillDataMap(), and FindTimeForData().


The documentation for this class was generated from the following files: