- Adding check and flagging for HG present
[u/mrichter/AliRoot.git] / HLT / CALO / AliHLTCaloDigitMaker.cxx
index 7370efa..ce6c934 100644 (file)
@@ -227,9 +227,11 @@ AliHLTCaloDigitMaker::Reset()
 void AliHLTCaloDigitMaker::AddDigit(AliHLTCaloChannelDataStruct* channelData, AliHLTCaloCoordinate &coord)\r
 {\r
 \r
+  // Some book keeping of the pointers\r
   AliHLTCaloDigitDataStruct *tmpDigit = fDigitStructPtr + 1;\r
 \r
-  if(fChannelBook[coord.fX][coord.fZ])\r
+  // Check if we already have a digit in this position, and correct the book keeping correspondently\r
+  if(fChannelBook[coord.fX][coord.fZ]) \r
     {\r
       tmpDigit = fDigitStructPtr;\r
       fDigitStructPtr = fChannelBook[coord.fX][coord.fZ];\r
@@ -238,7 +240,6 @@ void AliHLTCaloDigitMaker::AddDigit(AliHLTCaloChannelDataStruct* channelData, Al
     }\r
   \r
   fChannelBook[coord.fX][coord.fZ] = fDigitStructPtr;\r
-\r
  \r
   fDigitStructPtr->fX = coord.fX;\r
   fDigitStructPtr->fZ = coord.fZ;\r
@@ -251,6 +252,7 @@ void AliHLTCaloDigitMaker::AddDigit(AliHLTCaloChannelDataStruct* channelData, Al
   if(coord.fGain == fCaloConstants->GetHIGHGAIN() )\r
     {\r
       fDigitStructPtr->fEnergy = channelData->fEnergy*fHighGainFactors[coord.fX][coord.fZ];\r
+      fDigitStructPtr->fHgPresent = true;\r
       if(channelData->fEnergy >= fMaxEnergy)\r
        {\r
          fDigitStructPtr->fOverflow = true;\r
@@ -301,6 +303,7 @@ bool AliHLTCaloDigitMaker::UseDigit(AliHLTCaloCoordinate &channelCoordinates, Al
                  //printf("UseDigit: Already have digit with, x: %d, z: %d, with low gain: %d\n", channelCoordinates.fX, channelCoordinates.fZ);\r
          if(channel->fEnergy > fMaxEnergy )\r
            {\r
+             tmpDigit->fHgPresent = true;\r
              return false;\r
            }\r
          return true;\r
@@ -319,7 +322,7 @@ void AliHLTCaloDigitMaker::SetBadChannel(Int_t x, Int_t z, Bool_t bad)
 void AliHLTCaloDigitMaker::SetGain(Int_t x, Int_t z, Float_t ratio, Float_t gain)\r
 {\r
    // See header file for class documentation\r
-   \r
+   HLTDebug("Applying gain: %f for channel x: %d, z: %d", gain, x, z); \r
    fHighGainFactors[x][z] = gain;\r
    fLowGainFactors[x][z] = gain * ratio;\r
    \r