#include "AliTRDSignalIndex.h"
#include "AliTRDRawStream.h"
+#include "AliTRDRawStreamV2.h"
+
+#include "AliTRDfeeParam.h"
ClassImp(AliTRDclusterizerV2)
// AliTRDclusterizerV2 default constructor
//
+ fRawVersion = AliTRDfeeParam::Instance()->GetRAWversion();
}
//_____________________________________________________________________________
fDigitsManager->CreateArrays();
fGeometry = new AliTRDgeometry;
+
+ fRawVersion = AliTRDfeeParam::Instance()->GetRAWversion();
}
//_____________________________________________________________________________
fDigitsManager->BuildIndexes(i);
}
+ Bool_t fR = kFALSE;
if (indexes->HasEntry())
{
if (fAddLabels)
tracksIn->Expand();
}
}
- Bool_t fR = MakeClusters(i);
+ fR = MakeClusters(i);
fReturn = fR && fReturn;
}
+
+ if (fR == kFALSE)
+ {
+ WriteClusters(i);
+ ResetRecPoints();
+ }
//digitsIn->Compress(1,0);
// no compress just remove
fDigitsManager->RemoveDigits(i);
fDigitsManager->CreateArrays();
}
- AliTRDRawStream input(rawReader);
+ //AliTRDRawStream input(rawReader);
+ AliTRDRawStreamV2 input(rawReader);
input.SetRawVersion( fRawVersion );
input.Init();
+ AliInfo(Form("Stream version: %s", input.IsA()->GetName()));
+
// Loop through the digits
Int_t lastdet = -1;
Int_t det = 0;
if (lastdet != -1)
{
digits = fDigitsManager->GetDigits(lastdet);
+ Bool_t iclusterBranch = kFALSE;
if (indexes->HasEntry())
- MakeClusters(lastdet);
+ iclusterBranch = MakeClusters(lastdet);
+ if (iclusterBranch == kFALSE)
+ {
+ WriteClusters(lastdet);
+ ResetRecPoints();
+ }
}
if (digits)
if (lastdet != -1)
{
- MakeClusters(lastdet);
+ Bool_t iclusterBranch = kFALSE;
+ if (indexes->HasEntry())
+ iclusterBranch = MakeClusters(lastdet);
+ if (iclusterBranch == kFALSE)
+ {
+ WriteClusters(lastdet);
+ ResetRecPoints();
+ }
+ //MakeClusters(lastdet);
if (digits)
{
fDigitsManager->RemoveDigits(lastdet);
fDigitsManager->SetUseDictionaries(fAddLabels);
- AliTRDRawStream input(rawReader);
+ //AliTRDRawStream input(rawReader);
+ AliTRDRawStreamV2 input(rawReader);
input.SetRawVersion( fRawVersion );
input.Init();
+
+ AliInfo(Form("Stream version: %s", input.IsA()->GetName()));
Int_t det = 0;
while ((det = input.NextChamber(fDigitsManager)) >= 0)
{
+ Bool_t iclusterBranch = kFALSE;
if (fDigitsManager->GetIndexes(det)->HasEntry())
- MakeClusters(det);
+ iclusterBranch = MakeClusters(det);
+ if (iclusterBranch == kFALSE)
+ {
+ WriteClusters(det);
+ ResetRecPoints();
+ }
fDigitsManager->RemoveDigits(det);
fDigitsManager->RemoveDictionaries(det);
fDigitsManager->ClearIndexes(det);
}
// ADC thresholds
- Float_t ADCthreshold = simParam->GetADCthreshold();
+ // Float_t ADCthreshold = simParam->GetADCthreshold();
+ Float_t ADCthreshold = 0; // There is no ADC threshold anymore, and simParam should not be used ni clusterizer. KO
+
// Threshold value for the maximum
Float_t maxThresh = recParam->GetClusMaxThresh();
// Threshold value for the digit signal
if (recParam->TCOn()) {
DeConvExp(inADC,outADC,nTimeTotal,recParam->GetTCnexp());
}
+
indexesIn->ResetTbinCounter();
while (indexesIn->NextTbinIndex(iTime))
{