#include "AliCDBStorage.h"
#include "AliCDBEntry.h"
#include "AliTRDrecoParam.h"
-#include "AliTRDrawStreamBase.h"
+#include "AliTRDrawStream.h"
#include "AliTRDcluster.h"
#include "AliRawReaderMemory.h"
fReconstructor->SetClusters(0x0);
delete fReconstructor;
fReconstructor = 0x0;
- return 0;
if (fRecoParam)
{
delete fRecoParam;
fRecoParam = 0;
}
+
+ return 0;
}
int AliHLTTRDClusterizerComponent::DoEvent( const AliHLTComponentEventData& evtData,
{
// Process an event
+#ifdef HAVE_VALGRIND_CALLGRIND_H
if (evtData.fEventID == 10)
CALLGRIND_START_INSTRUMENTATION;
+ if(GetFirstInputBlock(kAliHLTDataTypeEOR))
+ CALLGRIND_STOP_INSTRUMENTATION;
+#endif
+
+ if(!IsDataEvent())return 0;
+
HLTDebug( "NofBlocks %i", evtData.fBlockCnt );
// Process an event
AliHLTUInt32_t totalSize = 0, offset = 0;
evtData.fEventID, evtData.fEventID,
DataType2Text(inputDataType).c_str(),
DataType2Text(expectedDataType).c_str());
- if(block.fDataType == kAliHLTDataTypeEOR)
- CALLGRIND_STOP_INSTRUMENTATION;
continue;
}
else
return 0;
}
-void AliHLTTRDClusterizerComponent::PrintObject( TClonesArray* inClustersArray)
+void AliHLTTRDClusterizerComponent::PrintObject(
+#ifdef __DEBUG
+ TClonesArray* inClustersArray
+#else
+ TClonesArray*
+#endif
+ )
{
+#ifdef __DEBUG
AliTRDcluster* cluster=0x0;
for (Int_t i=0; i < inClustersArray->GetEntriesFast(); i++){
HLTDebug(" Detector = %i, Amplitude = %f, Center = %f", cluster->GetDetector(), cluster->GetQ(), cluster->GetCenter());
HLTDebug(" LocalTimeBin = %i; NPads = %i; maskedPosition: %s, status: %s", cluster->GetLocalTimeBin(), cluster->GetNPads(),cluster->GetPadMaskedPosition(),cluster->GetPadMaskedPosition());
}
-
+#endif
}
int AliHLTTRDClusterizerComponent::Configure(const char* arguments){
HLTInfo("RecoParam already set!");
}else{
if(fRecoParamType == 0){
- HLTDebug("Low flux params init.");
- fRecoParam = AliTRDrecoParam::GetLowFluxParam();
+#ifndef HAVE_NOT_ALITRD_RECOPARAM_r41621
+ if(fHLTflag){
+ HLTInfo("Low flux HLT params init.");
+ fRecoParam = AliTRDrecoParam::GetLowFluxHLTParam();
+ }else
+#endif
+ {
+ HLTInfo("Low flux params init.");
+ fRecoParam = AliTRDrecoParam::GetLowFluxParam();
+ }
}
if(fRecoParamType == 1){
- HLTDebug("High flux params init.");
- fRecoParam = AliTRDrecoParam::GetHighFluxParam();
+#ifndef HAVE_NOT_ALITRD_RECOPARAM_r41621
+ if(fHLTflag){
+ HLTInfo("High flux HLT params init.");
+ fRecoParam = AliTRDrecoParam::GetHighFluxHLTParam();
+ }else
+#endif
+ {
+ HLTInfo("High flux params init.");
+ fRecoParam = AliTRDrecoParam::GetHighFluxParam();
+ }
}
if(fRecoParamType == 2){
- HLTDebug("Cosmic Test params init.");
+ HLTInfo("Cosmic Test params init.");
fRecoParam = AliTRDrecoParam::GetCosmicTestParam();
}
}
fRecoParam->SetStreamLevel(AliTRDrecoParam::kClusterizer, 0);
fReconstructor->SetRecoParam(fRecoParam);
+ if(!fClusterizer){
+ fClusterizer = new AliHLTTRDClusterizer("TRDCclusterizer", "TRDCclusterizer");
+ HLTDebug("TRDClusterizer at 0x%x", fClusterizer);
+ }
+
TString recoOptions="!cw";
- if(fHLTflag)
+ if(fHLTflag){
recoOptions += ",hlt";
+
+ // we transfer clusters that do no contain the XYZ coodrinates (AliHLTTRDCluster),
+ // thus this coordinate transformation ist useless
+#ifndef HAVE_NOT_ALITRD_CLUSTERIZER_r42837
+ fClusterizer->SetSkipTransform();
+#endif
+ }
if(fProcessTracklets) recoOptions += ",tp";
else recoOptions += ",!tp";
if (fRecoDataType == 0)
{
- AliTRDrawStreamBase::SetRawStreamVersion(AliTRDrawStreamBase::kTRDsimStream);
HLTDebug("Data type expected is SIMULATION!");
}
if (fRecoDataType == 1)
{
- AliTRDrawStreamBase::SetRawStreamVersion(AliTRDrawStreamBase::kTRDrealStream);
HLTDebug("Data type expected is EXPERIMENT!");
}
-#ifndef HAVE_NOT_ALITRD_RAWSTREAM_r39608
- if(fHLTstreamer){
- AliTRDrawStreamBase::SetRawStreamVersion("default");
- HLTDebug("fast rawstreamer used");
- }else{
- AliTRDrawStreamBase::SetRawStreamVersion("FAST");
- HLTDebug("old rawstreamer used");
- }
-#else
- if(fHLTstreamer){
- AliTRDrawStreamBase::SetRawStreamVersion("FAST");
- HLTDebug("fast rawstreamer used");
- }
-#endif
-
- if(!fClusterizer){
- fClusterizer = new AliHLTTRDClusterizer("TRDCclusterizer", "TRDCclusterizer");
- HLTDebug("TRDClusterizer at 0x%x", fClusterizer);
- }
-
fClusterizer->SetRawVersion(fRawDataVersion);
return iResult;
return iResult;
}
+
+void AliHLTTRDClusterizerComponent::GetOCDBObjectDescription(TMap* const targetMap){
+ // Get a list of OCDB object description needed for the particular component
+ if (!targetMap) return;
+ targetMap->Add(new TObjString("HLT/ConfigTRD/ClusterizerComponent"), new TObjString("component arguments"));
+ targetMap->Add(new TObjString("TRD/Calib/ChamberGainFactor"), new TObjString("gain factor of chambers"));
+ targetMap->Add(new TObjString("TRD/Calib/ChamberT0"), new TObjString("T0 of chambers"));
+ targetMap->Add(new TObjString("TRD/Calib/ChamberVdrift"), new TObjString("drift velocity of chambers"));
+ targetMap->Add(new TObjString("TRD/Calib/DetNoise"), new TObjString("noise of chambers"));
+ targetMap->Add(new TObjString("TRD/Calib/LocalGainFactor"), new TObjString("per pad gain factor"));
+ targetMap->Add(new TObjString("TRD/Calib/LocalT0"), new TObjString("per pad T0"));
+ targetMap->Add(new TObjString("TRD/Calib/LocalVdrift"), new TObjString("per pad drift velocity"));
+ targetMap->Add(new TObjString("TRD/Calib/PadNoise"), new TObjString("per pad noise"));
+ targetMap->Add(new TObjString("TRD/Calib/PadStatus"), new TObjString("pad status"));
+ targetMap->Add(new TObjString("TRD/Calib/PRFWidth"), new TObjString("pad response function"));
+}