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

#include <PndSdsDigiPixelWriteoutBuffer.h>

Inheritance diagram for PndSdsDigiPixelWriteoutBuffer:

Public Member Functions

 PndSdsDigiPixelWriteoutBuffer ()
 
 PndSdsDigiPixelWriteoutBuffer (TString branchName, TString folderName, Bool_t persistance)
 
void AddNewDataToTClonesArray (FairTimeStamp *)
 
virtual ~PndSdsDigiPixelWriteoutBuffer ()
 
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 (PndSdsDigiPixelWriteoutBuffer, 1)
 

Protected Attributes

std::map< PndSdsDigiPixel, double > fData_map
 

Detailed Description

Definition at line 16 of file PndSdsDigiPixelWriteoutBuffer.h.

Constructor & Destructor Documentation

PndSdsDigiPixelWriteoutBuffer::PndSdsDigiPixelWriteoutBuffer ( )

Definition at line 16 of file PndSdsDigiPixelWriteoutBuffer.cxx.

16  :FairWriteoutBuffer()
17 , fData_map()
18 {
19 
20  // TODO Auto-generated constructor stub
21 
22 }
std::map< PndSdsDigiPixel, double > fData_map
PndSdsDigiPixelWriteoutBuffer::PndSdsDigiPixelWriteoutBuffer ( TString  branchName,
TString  folderName,
Bool_t  persistance 
)

Definition at line 25 of file PndSdsDigiPixelWriteoutBuffer.cxx.

25  : FairWriteoutBuffer(branchName, "PndSdsDigiPixel", folderName, persistance),
26 fData_map()
27 {
28 }
std::map< PndSdsDigiPixel, double > fData_map
PndSdsDigiPixelWriteoutBuffer::~PndSdsDigiPixelWriteoutBuffer ( )
virtual

Definition at line 30 of file PndSdsDigiPixelWriteoutBuffer.cxx.

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

Member Function Documentation

void PndSdsDigiPixelWriteoutBuffer::AddNewDataToTClonesArray ( FairTimeStamp *  data)

Definition at line 52 of file PndSdsDigiPixelWriteoutBuffer.cxx.

References fVerbose.

53 {
54  FairRootManager* ioman = FairRootManager::Instance();
55  TClonesArray* myArray = ioman->GetTClonesArray(fBranchName);
56  if (fVerbose > 1) std::cout << "Data Inserted: " << *(PndSdsDigiPixel*)(data) << std::endl;
57  new ((*myArray)[myArray->GetEntries()]) PndSdsDigiPixel(*(PndSdsDigiPixel*)(data));
58 }
int fVerbose
Definition: poormantracks.C:24
Data class to store the digi output of a pixel module.
PndSdsDigiPixelWriteoutBuffer::ClassDef ( PndSdsDigiPixelWriteoutBuffer  ,
 
)
protected
void PndSdsDigiPixelWriteoutBuffer::EraseDataFromDataMap ( FairTimeStamp *  data)
virtual

Definition at line 78 of file PndSdsDigiPixelWriteoutBuffer.cxx.

References fData_map.

79 {
80  PndSdsDigiPixel myData = *(PndSdsDigiPixel*)data;
81  if (fData_map.find(myData) != fData_map.end())
82  fData_map.erase(fData_map.find(myData));
83 }
Data class to store the digi output of a pixel module.
std::map< PndSdsDigiPixel, double > fData_map
void PndSdsDigiPixelWriteoutBuffer::FillDataMap ( FairTimeStamp *  data,
double  activeTime 
)
virtual

Definition at line 73 of file PndSdsDigiPixelWriteoutBuffer.cxx.

References fData_map.

74 {
75  PndSdsDigiPixel myData = *(PndSdsDigiPixel*)data;
76  fData_map[myData] = activeTime;
77 }
Data class to store the digi output of a pixel module.
std::map< PndSdsDigiPixel, double > fData_map
double PndSdsDigiPixelWriteoutBuffer::FindTimeForData ( FairTimeStamp *  data)
virtual

Definition at line 60 of file PndSdsDigiPixelWriteoutBuffer.cxx.

References fData_map, and fVerbose.

61 {
62  std::map<PndSdsDigiPixel, double>::iterator it;
63  PndSdsDigiPixel myData = *(PndSdsDigiPixel*)data;
64  it = fData_map.find(myData);
65  if (it == fData_map.end())
66  return -1;
67  else{
68  if (fVerbose > 1)
69  std::cout << "Search: " << myData << " Found: " << (PndSdsDigiPixel)it->first << " Time: " << it->second << std::endl;
70  return it->second;
71  }
72 }
int fVerbose
Definition: poormantracks.C:24
Data class to store the digi output of a pixel module.
std::map< PndSdsDigiPixel, double > fData_map
std::vector< std::pair< double, FairTimeStamp * > > PndSdsDigiPixelWriteoutBuffer::Modify ( std::pair< double, FairTimeStamp * >  oldData,
std::pair< double, FairTimeStamp * >  newData 
)
virtual

Definition at line 34 of file PndSdsDigiPixelWriteoutBuffer.cxx.

References fVerbose.

35 {
36  std::vector<std::pair<double, FairTimeStamp*> > result;
37  std::pair<double, FairTimeStamp*> singleResult;
38  if (newData.first > 0)
39  singleResult.first = newData.first;
40  singleResult.second = oldData.second;
41  ((PndSdsDigiPixel*)singleResult.second)->AddCharge(((PndSdsDigiPixel*)newData.second)->GetCharge());
42  if (fVerbose > 0){
43  std::cout << "Modify hit" << std::endl;
44  std::cout << "OldData: " << oldData.first << " : " << oldData.second << " NewData: " << newData.first << " : " << newData.second << std::endl;
45  std::cout << "Resulting Data: " << singleResult.first << " : " << singleResult.second << std::endl;
46  }
47 
48  result.push_back(singleResult);
49  return result;
50 }
int fVerbose
Definition: poormantracks.C:24
Data class to store the digi output of a pixel module.

Member Data Documentation

std::map<PndSdsDigiPixel, double> PndSdsDigiPixelWriteoutBuffer::fData_map
protected

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