X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TRD%2FAliTRDReconstructor.cxx;h=083e7a8c42db45a8667720a86ae5cbf318d7fd8f;hb=b9f62e5ee285c84c8110b22fb4bd159d78124494;hp=fecdec89f982e4ab033b3159ce9776fae7e9fc1c;hpb=d0177bb64755aa2321c9652eb9bebbbc070998d8;p=u%2Fmrichter%2FAliRoot.git diff --git a/TRD/AliTRDReconstructor.cxx b/TRD/AliTRDReconstructor.cxx index fecdec89f98..083e7a8c42d 100644 --- a/TRD/AliTRDReconstructor.cxx +++ b/TRD/AliTRDReconstructor.cxx @@ -46,6 +46,7 @@ #include "AliTRDtrackletWord.h" #include "AliTRDtrackletMCM.h" #include "AliTRDonlineTrackMatching.h" +#include "AliTRDcalibDB.h" #define SETFLG(n,f) ((n) |= f) #define CLRFLG(n,f) ((n) &= ~f) @@ -122,7 +123,9 @@ AliTRDReconstructor::~AliTRDReconstructor() // // Destructor // - + AliTRDcalibDB* calib = AliTRDcalibDB::Instance(); + if (calib) calib->Invalidate(); + // if(fClusterizer){ delete fClusterizer; fClusterizer = NULL; @@ -142,7 +145,7 @@ AliTRDReconstructor::~AliTRDReconstructor() delete fgTracks; fgTracks = NULL; } - if(fSteerParam&kOwner){ + if((fSteerParam&kOwner)|| AliTRDReconstructor::GetStreamLevel()>0){ for(Int_t itask = 0; itask < AliTRDrecoParam::kTRDreconstructionTasks; itask++) if(fDebugStream[itask]) delete fDebugStream[itask]; } @@ -167,7 +170,7 @@ void AliTRDReconstructor::Init(){ if(IsDebugStreaming()){ for(Int_t task = 0; task < AliTRDrecoParam::kTRDreconstructionTasks; task++){ TDirectory *savedir = gDirectory; - fDebugStream[task] = new TTreeSRedirector(Form("TRD.Debug%s.root", fgTaskNames[task])); + fDebugStream[task] = new TTreeSRedirector(Form("TRD.Debug%s.root", fgTaskNames[task]),"recreate"); savedir->cd(); SETFLG(fSteerParam, kOwner); } @@ -241,16 +244,17 @@ void AliTRDReconstructor::Reconstruct(TTree *digitsTree } ResetContainers(); - AliTRDclusterizer clusterizer(fgTaskNames[AliTRDrecoParam::kClusterizer], fgTaskNames[AliTRDrecoParam::kClusterizer]); - clusterizer.SetReconstructor(this); - clusterizer.SetUseLabels(kTRUE); - clusterizer.SetStoreRawSignals(kTRUE); - clusterizer.OpenOutput(clusterTree); - clusterizer.ReadDigits(digitsTree); - clusterizer.ReadTracklets(); - clusterizer.ReadTracks(); - clusterizer.MakeClusters(); - fgNTimeBins = clusterizer.GetNTimeBins(); + // AliTRDclusterizer clusterizer(fgTaskNames[AliTRDrecoParam::kClusterizer], fgTaskNames[AliTRDrecoParam::kClusterizer]); + fClusterizer->SetReconstructor(this); + fClusterizer->SetUseLabels(kTRUE); + fClusterizer->SetStoreRawSignals(kTRUE); + fClusterizer->OpenOutput(clusterTree); + fClusterizer->ResetRecPoints(); + fClusterizer->ReadDigits(digitsTree); + fClusterizer->ReadTracklets(); + fClusterizer->ReadTracks(); + fClusterizer->MakeClusters(); + fgNTimeBins = fClusterizer->GetNTimeBins(); } //_____________________________________________________________________________