bug fix: Digits were not sorted in NextBunch()
authorsgorbuno <sgorbuno@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 3 Oct 2010 22:04:48 +0000 (22:04 +0000)
committersgorbuno <sgorbuno@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 3 Oct 2010 22:04:48 +0000 (22:04 +0000)
HLT/TPCLib/AliHLTTPCDigitReaderUnpacked.cxx
HLT/TPCLib/AliHLTTPCDigitReaderUnpacked.h

index c8be290..45aaa76 100644 (file)
@@ -292,6 +292,13 @@ AliHLTUInt32_t AliHLTTPCDigitReaderUnpacked::GetAltroBlockHWaddr() const
   return (AliHLTUInt32_t)(fMapping->GetHwAddress((UInt_t)GetSortedRow(),(UInt_t)GetSortedPad()));//fTPCRawStream->GetHWAddress();
 }
 
+AliHLTTPCDigitData AliHLTTPCDigitReaderUnpacked::GetSortedDigit(){
+  // see header file for class documentation
+  assert(fData);
+  if (!fData) return AliHLTTPCDigitData();
+  return fData[fBinRowPositionSorted.at(fBin)];
+}
+
 Int_t AliHLTTPCDigitReaderUnpacked::GetSortedTime(){
   // see header file for class documentation
   assert(fData);
@@ -389,7 +396,7 @@ int AliHLTTPCDigitReaderUnpacked::NextBunch()
   fPrevPad = GetSortedPad();
   fPrevRow = GetSortedRow();
   fDataBunch.push_back(GetSortedSignal());
-  fDigitsVector.push_back(fData[fBin]);
+  fDigitsVector.push_back(GetSortedDigit());
 
   do{
     if(NextSignal()){
@@ -398,7 +405,7 @@ int AliHLTTPCDigitReaderUnpacked::NextBunch()
            fPrevTime = GetSortedTime();
            //fDataBunch.insert(fDataBunch.begin(), GetSortedSignal());// add the signal to the beginning of the buffer     
            fDataBunch.push_back(GetSortedSignal());// add the signal to the beginning of the buffer
-           fDigitsVector.push_back(fData[fBin]);
+           fDigitsVector.push_back(GetSortedDigit());
          }
          else{//end of bunch but not of channel
            break;
index 48d1d89..ff50823 100644 (file)
@@ -76,6 +76,7 @@ public:
   AliHLTUInt32_t GetAltroBlockHWaddr() const;
   int GetBunchSize();
   const UInt_t* GetSignals();
+  AliHLTTPCDigitData GetSortedDigit();
   Int_t GetSortedTime();    
   Int_t GetSortedSignal();
   Int_t GetSortedPad() const;