- //see header file for documentation\r
- Int_t nRecPoints = 0;\r
- fNRecPoints = 0;\r
- fUsedSize = 0;\r
- fNDigits = nDigits;\r
- fRecPointDataPtr = fFirstRecPointPtr;\r
-\r
- //Clusterization starts\r
- for(Int_t i = 0; i < nDigits; i++)\r
- { \r
- fDigitsInCluster = 0;\r
-\r
- if(fDigitsPointerArray[i]->fEnergy < fEmcClusteringThreshold)\r
- {\r
- continue;\r
- }\r
- CheckArray();\r
- CheckBuffer();\r
-\r
- // First digit is placed at the fDigits member variable in the recpoint\r
- fDigitIndexPtr = &(fRecPointDataPtr->fDigits);\r
- //fUsedSize += sizeof(AliHLTCaloRecPointDataStruct);\r
- \r
- fRecPointDataPtr->fAmp = 0;\r
- fRecPointDataPtr->fModule = fDigitsPointerArray[i]->fModule;\r
-\r
- // Assigning the digit to this rec point\r
- fRecPointDataPtr->fDigits = i;\r
- fUsedSize += sizeof(AliHLTCaloRecPointDataStruct);\r
- \r
- // Incrementing the pointer to be ready for new entry\r
- fDigitIndexPtr++;\r
-\r
- fRecPointDataPtr->fAmp += fDigitsPointerArray[i]->fEnergy;\r
- fDigitsPointerArray[i]->fEnergy = 0;\r
- fDigitsInCluster++;\r
- nRecPoints++;\r
-\r
- // Scanning for the neighbours\r
- if(ScanForNeighbourDigits(i, fRecPointDataPtr) != 0)\r
- {\r
- return -1;\r
- }\r
-\r
- //fUsedSize += sizeof(AliHLTCaloRecPointDataStruct) + (fDigitsInCluster-1)*sizeof(AliHLTCaloDigitDataStruct); \r
- \r
- fRecPointDataPtr->fMultiplicity = fDigitsInCluster; \r
- fRecPointArray[fNRecPoints] = fRecPointDataPtr; \r
- \r
- fRecPointDataPtr = reinterpret_cast<AliHLTCaloRecPointDataStruct*>(fDigitIndexPtr);\r
-\r
- fNRecPoints++;\r
- \r
+ //see header file for documentation\r
+ Int_t nRecPoints = 0;\r
+ fNRecPoints = 0;\r
+ fUsedSize = 0;\r
+ fNDigits = nDigits;\r
+ fRecPointDataPtr = fFirstRecPointPtr;\r
+\r
+ // Sort our digits\r
+ SortDigits();\r
+\r
+ //Clusterization starts\r
+ for (Int_t i = 0; i < nDigits; i++)\r
+ {\r
+ fDigitsInCluster = 0;\r
+\r
+ if (fDigitsPointerArray[i]->fEnergy < fEmcClusteringThreshold)\r
+ {\r
+ continue;\r
+ }\r
+\r
+ CheckArray();\r
+ CheckBuffer();\r
+\r
+ // First digit is placed at the fDigits member variable in the recpoint\r
+ fDigitIndexPtr = &(fRecPointDataPtr->fDigits);\r
+\r
+ fRecPointDataPtr->fAmp = 0;\r
+ fRecPointDataPtr->fModule = fDigitsPointerArray[i]->fModule;\r
+\r
+ // Assigning the digit to this rec point\r
+ fRecPointDataPtr->fDigits = i;\r
+ fUsedSize += sizeof(AliHLTCaloRecPointDataStruct);\r
+\r
+ // Incrementing the pointer to be ready for new entry\r
+ fDigitIndexPtr++;\r
+\r
+ fRecPointDataPtr->fAmp += fDigitsPointerArray[i]->fEnergy;\r
+ fDigitsPointerArray[i]->fEnergy = 0;\r
+ fDigitsInCluster++;\r
+ nRecPoints++;\r
+\r
+ // Scanning for the neighbours\r
+ if (ScanForNeighbourDigits(i, fRecPointDataPtr) != 0)\r
+ {\r
+ return -1;\r
+ }\r
+\r
+ //fUsedSize += sizeof(AliHLTCaloRecPointDataStruct) + (fDigitsInCluster-1)*sizeof(AliHLTCaloDigitDataStruct);\r
+\r
+ fRecPointDataPtr->fMultiplicity = fDigitsInCluster;\r
+ fRecPointArray[fNRecPoints] = fRecPointDataPtr;\r
+\r
+ fRecPointDataPtr = reinterpret_cast<AliHLTCaloRecPointDataStruct*>(fDigitIndexPtr);\r
+\r
+ fNRecPoints++;\r
+\r