X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MONITOR%2FmonitorGDC.cxx;h=924a5c1819a870f39624f73c55dc6971e86da32f;hb=da8b7dc9014b9ad9dc149fe9f5fceb5d57f2b808;hp=823e09016312961f65ca7a1eda967867d99955dd;hpb=af885e0fc45eeab1177d3d34f858ccd8836787fb;p=u%2Fmrichter%2FAliRoot.git diff --git a/MONITOR/monitorGDC.cxx b/MONITOR/monitorGDC.cxx index 823e0901631..924a5c1819a 100644 --- a/MONITOR/monitorGDC.cxx +++ b/MONITOR/monitorGDC.cxx @@ -34,6 +34,7 @@ #include "AliRawReaderDate.h" #include "event.h" #include "monitor.h" +/* #include #include #include @@ -42,14 +43,16 @@ #include #include #include -#include -#include "AliITSgeomTGeo.h" -#include "AliITSgeom.h" -#include "AliMagF.h" -#include "AliMagFMaps.h" #include #include #include +*/ +#include "AliESDEvent.h" +#include "AliESDVertex.h" +#include "AliTracker.h" +#include +#include "AliITSgeomTGeo.h" +#include "AliITSgeom.h" #endif //_____________________________________________________________________________ @@ -64,10 +67,11 @@ private: //_____________________________________________________________________________ AliGDCInterruptHandler::AliGDCInterruptHandler() : - TSignalHandler(kSigInterrupt, kFALSE) + TSignalHandler(kSigInterrupt, kFALSE), + fStop(kFALSE) { - fStop = kFALSE; -}; + +} //_____________________________________________________________________________ @@ -101,33 +105,27 @@ int main(int argc, char** argv) if (status) ::Fatal("monitorDeclareMp", monitorDecodeError(status)); // initialize HLT transformations - if (!AliHLTTransform::Init("./", kFALSE)) { - ::Fatal("AliHLTTransform::Init", "HLT initialization failed"); - } + // if (!AliHLTTransform::Init("./", kFALSE)) { + // ::Fatal("AliHLTTransform::Init", "HLT initialization failed"); + // } + AliESDEvent *esd = new AliESDEvent; esd->CreateStdContent(); - // AliKalmanTrack::SetConvConst( - // 1000/0.299792458/AliHLTTransform::GetSolenoidField() - // ); - AliITSgeom *geom = new AliITSgeom(); - geom->ReadNewFile("$ALICE_ROOT/ITS/ITSgeometry_vPPRasymmFMD.det"); - if (!geom) return 1; - Int_t sfield = 0; - switch ((Int_t)(AliHLTTransform::GetSolenoidField()+0.5)) { - case 2: - sfield = AliMagFMaps::k2kG; - break; - case 4: - sfield = AliMagFMaps::k4kG; - break; - case 5: - sfield = AliMagFMaps::k5kG; - break; - default: - ::Fatal("AliHLTTransform::GetSolenoidField", "Incorrect magnetic field"); - } - AliMagF* field = new AliMagFMaps("Maps","Maps", 2, 1., 10., sfield); - AliTracker::SetFieldMap(field,kTRUE); + + // AliITSgeom *geom = new AliITSgeom(); + // geom->ReadNewFile("$ALICE_ROOT/ITS/ITSgeometry_vPPRasymmFMD.det"); + // if (!geom) return 1; + // Int_t sfield = 0; + // switch ((Int_t)(AliHLTTransform::GetSolenoidField()+0.5)) { + // case 2: + // sfield = AliMagF::k2kG; + // break; + // case 5: + // sfield = AliMagF::k5kG; + // break; + // default: + // ::Fatal("AliHLTTransform::GetSolenoidField", "Incorrect magnetic field"); + // } // Init PID AliPID pid; @@ -166,164 +164,164 @@ int main(int argc, char** argv) } else { - AliHLTBenchmark *fBenchmark = new AliHLTBenchmark(); - fBenchmark->Start("Overall timing"); +// AliHLTBenchmark *fBenchmark = new AliHLTBenchmark(); +// fBenchmark->Start("Overall timing"); - // ITS clusterer and vertexer - fBenchmark->Start("ITS Clusterer"); - AliHLTITSclusterer clusterer(0); - AliRawReader *itsrawreader=new AliRawReaderDate(ptr); - TTree* treeClusters = new TTree("TreeL3ITSclusters"," "); //make a tree - clusterer.Digits2Clusters(itsrawreader,treeClusters); - fBenchmark->Stop("ITS Clusterer"); +// // ITS clusterer and vertexer +// fBenchmark->Start("ITS Clusterer"); +// AliHLTITSclusterer clusterer(0); +// AliRawReader *itsrawreader=new AliRawReaderDate(ptr); +// TTree* treeClusters = new TTree("TreeL3ITSclusters"," "); //make a tree +// clusterer.Digits2Clusters(itsrawreader,treeClusters); +// fBenchmark->Stop("ITS Clusterer"); - AliHLTITSVertexerZ vertexer; - AliESDVertex *vertex = vertexer.FindVertexForCurrentEvent(geom,treeClusters); - Double_t vtxPos[3]; - Double_t vtxErr[3]={0.005,0.005,0.010}; - vertex->GetXYZ(vtxPos); - // vertex->GetSigmaXYZ(vtxErr); - esd->SetVertex(vertex); - - // TPC Hough reconstruction - Float_t ptmin = 0.1*AliHLTTransform::GetSolenoidField(); - Float_t zvertex = vtxPos[2]; - - // Run the Hough Transformer - fBenchmark->Start("Init"); - AliHLTHough *hough1 = new AliHLTHough(); - - hough1->SetThreshold(4); - hough1->CalcTransformerParams(ptmin); - hough1->SetPeakThreshold(70,-1); - // printf("Pointer is %x\n",ptr); - hough1->Init("./", kFALSE, 100, kFALSE,4,0,(Char_t*)ptr,zvertex); - hough1->SetAddHistograms(); - fBenchmark->Stop("Init"); - - fBenchmark->Start("Init"); - AliHLTHough *hough2 = new AliHLTHough(); - - hough2->SetThreshold(4); - hough2->CalcTransformerParams(ptmin); - hough2->SetPeakThreshold(70,-1); - // printf("Pointer is %x\n",ptr); - hough2->Init("./", kFALSE, 100, kFALSE,4,0,(Char_t*)ptr,zvertex); - hough2->SetAddHistograms(); - fBenchmark->Stop("Init"); - - Int_t nglobaltracks = 0; - /* - hough1->StartProcessInThread(0,17); - hough2->StartProcessInThread(18,35); - - // gSystem->Sleep(20000); - if(hough1->WaitForThreadFinish()) - ::Fatal("AliHLTHough::WaitForThreadFinish"," Can not join the required thread! "); - if(hough2->WaitForThreadFinish()) - ::Fatal("AliHLTHough::WaitForThreadFinish"," Can not join the required thread! "); - - gSystem->MakeDirectory("hough1"); - hough1->WriteTracks("./hough1"); - gSystem->MakeDirectory("hough2"); - hough2->WriteTracks("./hough2"); - */ - - for(int slice=0; slice<=17; slice++) - { - // cout<<"Processing slice "<Start("ReadData"); - hough1->ReadData(slice,0); - fBenchmark->Stop("ReadData"); - fBenchmark->Start("Transform"); - hough1->Transform(); - fBenchmark->Stop("Transform"); - hough1->AddAllHistogramsRows(); - hough1->FindTrackCandidatesRow(); - fBenchmark->Start("AddTracks"); - hough1->AddTracks(); - fBenchmark->Stop("AddTracks"); - - // AliHLTTrackArray* tracks = (AliHLTTrackArray*)hough1->GetTracks(0); - // nglobaltracks += tracks->GetNTracks(); - } - for(int slice=18; slice<=35; slice++) - { - // cout<<"Processing slice "<Start("ReadData"); - hough2->ReadData(slice,0); - fBenchmark->Stop("ReadData"); - fBenchmark->Start("Transform"); - hough2->Transform(); - fBenchmark->Stop("Transform"); - hough2->AddAllHistogramsRows(); - hough2->FindTrackCandidatesRow(); - fBenchmark->Start("AddTracks"); - hough2->AddTracks(); - fBenchmark->Stop("AddTracks"); - - // AliHLTTrackArray* tracks = (AliHLTTrackArray*)hough2->GetTracks(0); - // nglobaltracks += tracks->GetNTracks(); - } - - nglobaltracks += hough1->FillESD(esd); - nglobaltracks += hough2->FillESD(esd); - - // ITS tracker - AliHLTITStracker itsTracker(0); - itsTracker.SetVertex(vtxPos,vtxErr); - - itsTracker.LoadClusters(treeClusters); - itsTracker.Clusters2Tracks(esd); - itsTracker.UnloadClusters(); - - fBenchmark->Stop("Overall timing"); - time.Set(); - if (file) fprintf(file, "%s\n", time.AsString()); - if (file) fprintf(file, "run: %d event: %d %d\n", - rawReader.GetRunNumber(), - rawReader.GetEventId()[0], - rawReader.GetEventId()[1]); - if (errorCode) fprintf(file, "ERROR: %d\n", errorCode); - - if (file) fprintf(file, "Hough Transformer found %d tracks\n",nglobaltracks); - - hough1->DoBench("hough1"); - hough2->DoBench("hough2"); - fBenchmark->Analyze("overall"); - if (file) { - FILE* bench = fopen("hough1.dat", "r"); - while (bench && !feof(bench)) { - char buffer[256]; - if (!fgets(buffer, 256, bench)) break; - fprintf(file, "%s", buffer); - } - fclose(bench); - } - if (file) { - FILE* bench = fopen("hough2.dat", "r"); - while (bench && !feof(bench)) { - char buffer[256]; - if (!fgets(buffer, 256, bench)) break; - fprintf(file, "%s", buffer); - } - fclose(bench); - } - if (file) { - FILE* bench = fopen("overall.dat", "r"); - while (bench && !feof(bench)) { - char buffer[256]; - if (!fgets(buffer, 256, bench)) break; - fprintf(file, "%s", buffer); - } - fclose(bench); - fprintf(file, "\n\n"); - } - - delete hough1; - delete hough2; - - esd->Reset(); +// AliHLTITSVertexerZ vertexer; +// AliESDVertex *vertex = vertexer.FindVertexForCurrentEvent(geom,treeClusters); +// Double_t vtxPos[3]; +// Double_t vtxErr[3]={0.005,0.005,0.010}; +// vertex->GetXYZ(vtxPos); +// // vertex->GetSigmaXYZ(vtxErr); +// esd->SetVertex(vertex); + +// // TPC Hough reconstruction +// Float_t ptmin = 0.1*AliHLTTransform::GetSolenoidField(); +// Float_t zvertex = vtxPos[2]; + +// // Run the Hough Transformer +// fBenchmark->Start("Init"); +// AliHLTHough *hough1 = new AliHLTHough(); + +// hough1->SetThreshold(4); +// hough1->CalcTransformerParams(ptmin); +// hough1->SetPeakThreshold(70,-1); +// // printf("Pointer is %x\n",ptr); +// hough1->Init("./", kFALSE, 100, kFALSE,4,0,(Char_t*)ptr,zvertex); +// hough1->SetAddHistograms(); +// fBenchmark->Stop("Init"); + +// fBenchmark->Start("Init"); +// AliHLTHough *hough2 = new AliHLTHough(); + +// hough2->SetThreshold(4); +// hough2->CalcTransformerParams(ptmin); +// hough2->SetPeakThreshold(70,-1); +// // printf("Pointer is %x\n",ptr); +// hough2->Init("./", kFALSE, 100, kFALSE,4,0,(Char_t*)ptr,zvertex); +// hough2->SetAddHistograms(); +// fBenchmark->Stop("Init"); + +// Int_t nglobaltracks = 0; +// /* +// hough1->StartProcessInThread(0,17); +// hough2->StartProcessInThread(18,35); + +// // gSystem->Sleep(20000); +// if(hough1->WaitForThreadFinish()) +// ::Fatal("AliHLTHough::WaitForThreadFinish"," Can not join the required thread! "); +// if(hough2->WaitForThreadFinish()) +// ::Fatal("AliHLTHough::WaitForThreadFinish"," Can not join the required thread! "); + +// gSystem->MakeDirectory("hough1"); +// hough1->WriteTracks("./hough1"); +// gSystem->MakeDirectory("hough2"); +// hough2->WriteTracks("./hough2"); +// */ + +// for(int slice=0; slice<=17; slice++) +// { +// // cout<<"Processing slice "<Start("ReadData"); +// hough1->ReadData(slice,0); +// fBenchmark->Stop("ReadData"); +// fBenchmark->Start("Transform"); +// hough1->Transform(); +// fBenchmark->Stop("Transform"); +// hough1->AddAllHistogramsRows(); +// hough1->FindTrackCandidatesRow(); +// fBenchmark->Start("AddTracks"); +// hough1->AddTracks(); +// fBenchmark->Stop("AddTracks"); + +// // AliHLTTrackArray* tracks = (AliHLTTrackArray*)hough1->GetTracks(0); +// // nglobaltracks += tracks->GetNTracks(); +// } +// for(int slice=18; slice<=35; slice++) +// { +// // cout<<"Processing slice "<Start("ReadData"); +// hough2->ReadData(slice,0); +// fBenchmark->Stop("ReadData"); +// fBenchmark->Start("Transform"); +// hough2->Transform(); +// fBenchmark->Stop("Transform"); +// hough2->AddAllHistogramsRows(); +// hough2->FindTrackCandidatesRow(); +// fBenchmark->Start("AddTracks"); +// hough2->AddTracks(); +// fBenchmark->Stop("AddTracks"); + +// // AliHLTTrackArray* tracks = (AliHLTTrackArray*)hough2->GetTracks(0); +// // nglobaltracks += tracks->GetNTracks(); +// } + +// nglobaltracks += hough1->FillESD(esd); +// nglobaltracks += hough2->FillESD(esd); + +// // ITS tracker +// AliHLTITStracker itsTracker(0); +// itsTracker.SetVertex(vtxPos,vtxErr); + +// itsTracker.LoadClusters(treeClusters); +// itsTracker.Clusters2Tracks(esd); +// itsTracker.UnloadClusters(); + +// fBenchmark->Stop("Overall timing"); +// time.Set(); +// if (file) fprintf(file, "%s\n", time.AsString()); +// if (file) fprintf(file, "run: %d event: %d %d\n", +// rawReader.GetRunNumber(), +// rawReader.GetEventId()[0], +// rawReader.GetEventId()[1]); +// if (errorCode) fprintf(file, "ERROR: %d\n", errorCode); + +// if (file) fprintf(file, "Hough Transformer found %d tracks\n",nglobaltracks); + +// hough1->DoBench("hough1"); +// hough2->DoBench("hough2"); +// fBenchmark->Analyze("overall"); +// if (file) { +// FILE* bench = fopen("hough1.dat", "r"); +// while (bench && !feof(bench)) { +// char buffer[256]; +// if (!fgets(buffer, 256, bench)) break; +// fprintf(file, "%s", buffer); +// } +// fclose(bench); +// } +// if (file) { +// FILE* bench = fopen("hough2.dat", "r"); +// while (bench && !feof(bench)) { +// char buffer[256]; +// if (!fgets(buffer, 256, bench)) break; +// fprintf(file, "%s", buffer); +// } +// fclose(bench); +// } +// if (file) { +// FILE* bench = fopen("overall.dat", "r"); +// while (bench && !feof(bench)) { +// char buffer[256]; +// if (!fgets(buffer, 256, bench)) break; +// fprintf(file, "%s", buffer); +// } +// fclose(bench); +// fprintf(file, "\n\n"); +// } + +// delete hough1; +// delete hough2; + +// esd->Reset(); } // }