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

#include <PndSciTHitWriteoutBuffer.h>

Inheritance diagram for PndSciTHitWriteoutBuffer:

Public Member Functions

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

Protected Member Functions

 ClassDef (PndSciTHitWriteoutBuffer, 1)
 

Protected Attributes

std::map< PndSciTHit, double > fData_map
 

Detailed Description

Definition at line 18 of file PndSciTHitWriteoutBuffer.h.

Constructor & Destructor Documentation

PndSciTHitWriteoutBuffer::PndSciTHitWriteoutBuffer ( )

Definition at line 17 of file PndSciTHitWriteoutBuffer.cxx.

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

Definition at line 21 of file PndSciTHitWriteoutBuffer.cxx.

21  : FairWriteoutBuffer(branchName, "PndSciTHit", folderName, persistance)
22 {
23 }
PndSciTHitWriteoutBuffer::~PndSciTHitWriteoutBuffer ( )
virtual

Definition at line 25 of file PndSciTHitWriteoutBuffer.cxx.

25  {
26  // TODO Auto-generated destructor stub
27 }

Member Function Documentation

void PndSciTHitWriteoutBuffer::AddNewDataToTClonesArray ( FairTimeStamp *  data)

Definition at line 30 of file PndSciTHitWriteoutBuffer.cxx.

References fVerbose.

31 {
32  FairRootManager* ioman = FairRootManager::Instance();
33  TClonesArray* myArray = ioman->GetTClonesArray(fBranchName);
34  if (fVerbose > 1) std::cout << "Data Inserted: " << *(PndSciTHit*)(data) << std::endl;
35  new ((*myArray)[myArray->GetEntries()]) PndSciTHit(*(PndSciTHit*)(data));
36 }
int fVerbose
Definition: poormantracks.C:24
PndSciTHitWriteoutBuffer::ClassDef ( PndSciTHitWriteoutBuffer  ,
 
)
protected
void PndSciTHitWriteoutBuffer::EraseDataFromDataMap ( FairTimeStamp *  data)
virtual

Definition at line 58 of file PndSciTHitWriteoutBuffer.cxx.

References fData_map.

59 {
60  PndSciTHit myData = *(PndSciTHit*)data;
61  if (fData_map.find(myData) != fData_map.end())
62  fData_map.erase(fData_map.find(myData));
63 }
std::map< PndSciTHit, double > fData_map
void PndSciTHitWriteoutBuffer::FillDataMap ( FairTimeStamp *  data,
double  activeTime 
)
virtual

Definition at line 52 of file PndSciTHitWriteoutBuffer.cxx.

References fData_map.

53 {
54  PndSciTHit myData = *(PndSciTHit*)data;
55  fData_map[myData] = activeTime;
56 }
std::map< PndSciTHit, double > fData_map
double PndSciTHitWriteoutBuffer::FindTimeForData ( FairTimeStamp *  data)
virtual

Definition at line 38 of file PndSciTHitWriteoutBuffer.cxx.

References fData_map, and fVerbose.

39 {
40  std::map<PndSciTHit, double>::iterator it;
41  PndSciTHit myData = *(PndSciTHit*)data;
42  it = fData_map.find(myData);
43  if (it == fData_map.end())
44  return -1;
45  else{
46  if (fVerbose > 1)
47  std::cout << "Search: " << myData << " Found: " << (PndSciTHit)it->first << " Time: " << it->second << std::endl;
48  return it->second;
49  }
50 }
int fVerbose
Definition: poormantracks.C:24
std::map< PndSciTHit, double > fData_map
std::vector< std::pair< double, FairTimeStamp * > > PndSciTHitWriteoutBuffer::Modify ( std::pair< double, FairTimeStamp * >  oldData,
std::pair< double, FairTimeStamp * >  newData 
)
virtual

Definition at line 67 of file PndSciTHitWriteoutBuffer.cxx.

References fVerbose.

68 {
69  std::vector<std::pair<double, FairTimeStamp*> > result;
70  std::pair<double, FairTimeStamp*> singleResult;
71 
72  singleResult.first = oldData.first;
73  singleResult.second = oldData.second;
74  ((PndSciTHit*)singleResult.second)->AddCharge(((PndSciTHit*)newData.second)->GetCharge());
75 
76 
77 
78  if (fVerbose > 0){
79  std::cout << "Modify hit" << std::endl;
80  std::cout << "OldData: " << oldData.first << " : " << oldData.second << " NewData: " << newData.first << " : " << newData.second << std::endl;
81  std::cout << "Resulting Data: " << singleResult.first << " : " << singleResult.second << std::endl;
82  }
83 
84  result.push_back(singleResult);
85  return result;
86 }
int fVerbose
Definition: poormantracks.C:24

Member Data Documentation

std::map<PndSciTHit, double> PndSciTHitWriteoutBuffer::fData_map
protected

Definition at line 39 of file PndSciTHitWriteoutBuffer.h.

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


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