--- eventviewer/flight/src/FEVdetector.cpp 2007/11/08 11:05:34 1.21 +++ eventviewer/flight/src/FEVdetector.cpp 2012/01/03 20:53:29 1.34 @@ -72,6 +72,7 @@ #include // extern Bool_t existfile(TString); +extern Bool_t NODB; // using namespace std; @@ -97,6 +98,10 @@ var.showac = false; } +void FEVdetector::Reset(){ + L2 = NULL; +} + void FEVdetector::checkctrlword(){ var.SHOWDEC = 0; var.TOF = 0; @@ -206,7 +211,7 @@ void FEVdetector::GetEntry(Int_t i){ thisentry = i; if ( level.file == 2 ){ - L2->Clear(); + // L2->Clear(); // printf("qui\n"); L2->GetEntry(i); if ( var.showall ){ @@ -394,14 +399,17 @@ Int_t dlen = 10; // char o[200000]; + char zz[200000]; char col[13]; char col2[13]; // setcolor(col,RESET, GREEN, WHITE); sprintf(o,"%s======> EVENT:%i\n",col, thisentry); + sprintf(zz,"======> EVENT:%i\n", thisentry); // setcolor(col,RESET, RED, WHITE); sprintf(o,"%s%sBranch %s\n",o,col,b1->GetName()); + sprintf(zz,"%sBranch %s\n",zz,b1->GetName()); setcolor(col,RESET, BLACK, WHITE); sprintf(o,"%s%s",o,col); // @@ -429,6 +437,7 @@ setcolor(col,RESET, BLUE, WHITE); setcolor(col2,RESET, BLACK, WHITE); sprintf(o,"%s%s %-15s%s =",o,col,((TBranch*)branch_array->At(l))->GetName(),col2); + sprintf(zz,"%s %-15s =",zz,((TBranch*)branch_array->At(l))->GetName()); // j = 0; // @@ -441,8 +450,10 @@ while ( j < length ){ if ( j < length -1 ){ sprintf(o,"%s %i ,",o,(Int_t)tb->GetValue(j,0)); + sprintf(zz,"%s %i ,",zz,(Int_t)tb->GetValue(j,0)); } else { sprintf(o,"%s %i",o,(Int_t)tb->GetValue(j,0)); + sprintf(zz,"%s %i",zz,(Int_t)tb->GetValue(j,0)); }; j++; }; @@ -454,8 +465,10 @@ while ( j < length ){ if ( j < length -1 ){ sprintf(o,"%s %u ,",o,(UInt_t)tb->GetValue(j,0)); + sprintf(zz,"%s %u ,",zz,(UInt_t)tb->GetValue(j,0)); } else { sprintf(o,"%s %u",o,(UInt_t)tb->GetValue(j,0)); + sprintf(zz,"%s %u",zz,(UInt_t)tb->GetValue(j,0)); }; j++; }; @@ -467,8 +480,10 @@ while ( j < length ){ if ( j < length -1 ){ sprintf(o,"%s %f ,",o,tb->GetValue(j,0)); + sprintf(zz,"%s %f ,",zz,tb->GetValue(j,0)); } else { sprintf(o,"%s %f",o,tb->GetValue(j,0)); + sprintf(zz,"%s %f",zz,tb->GetValue(j,0)); }; j++; }; @@ -503,6 +518,7 @@ // printf("ciao %s \n",pr->Data()); // }; sprintf(o,"%s TString - not implemented yet -",o); + sprintf(zz,"%s TString - not implemented yet -",zz); }; // // TArray @@ -603,10 +619,12 @@ // sprintf(o,"%s\n",o); // sprintf(o,"%s TArray - not implemented yet -",o); + sprintf(zz,"%s TArray - not implemented yet -",zz); // }; // sprintf(o,"%s\n",o); + sprintf(zz,"%s\n",zz); break; case 3: // @@ -615,6 +633,7 @@ setcolor(col,RESET, BLUE, WHITE); setcolor(col2,RESET, BLACK, WHITE); sprintf(o,"%s%s %-15s%s = %d\n",o,col,tb->GetName(), col2, tb->GetNdata()); + sprintf(zz,"%s %-15s = %d\n",zz,tb->GetName(), tb->GetNdata()); // if ( tb->GetNdata() ){ @@ -665,11 +684,14 @@ setcolor(col,RESET, BLUE, WHITE); setcolor(col2,RESET, BLACK, WHITE); sprintf(o,"%s%s %-15s%s = ",o,col,foglia->GetName(),col2); + sprintf(zz,"%s %-15s = ",zz,foglia->GetName()); while ( j < cl->GetEntriesFast() ){ if ( j < cl->GetEntriesFast() -1 ){ sprintf(o,"%s %i ,",o,(Int_t)stb->GetValue(j,slength)); + sprintf(zz,"%s %i ,",zz,(Int_t)stb->GetValue(j,slength)); } else { sprintf(o,"%s %i",o,(Int_t)stb->GetValue(j,slength)); + sprintf(zz,"%s %i",zz,(Int_t)stb->GetValue(j,slength)); }; j++; }; @@ -682,11 +704,14 @@ setcolor(col,RESET, BLUE, WHITE); setcolor(col2,RESET, BLACK, WHITE); sprintf(o,"%s%s %-15s%s = ",o,col,foglia->GetName(),col2); + sprintf(zz,"%s %-15s = ",zz,foglia->GetName()); while ( j < cl->GetEntriesFast() ){ if ( j < cl->GetEntriesFast() -1 ){ sprintf(o,"%s %f ,",o,stb->GetValue(j,slength)); + sprintf(zz,"%s %f ,",zz,stb->GetValue(j,slength)); } else { sprintf(o,"%s %f",o,stb->GetValue(j,slength)); + sprintf(zz,"%s %f",zz,stb->GetValue(j,slength)); }; j++; }; @@ -699,6 +724,7 @@ setcolor(col,RESET, BLUE, WHITE); setcolor(col2,RESET, BLACK, WHITE); sprintf(o,"%s%s %-15s%s = ",o,col,foglia->GetName(),col2); + sprintf(zz,"%s %-15s = ",zz,foglia->GetName()); Bool_t bold = true; while ( j < tb->GetNdata() ){ if ( bold ){ @@ -712,12 +738,15 @@ while ( jj < slength ){ if ( jj < slength-1 ){ sprintf(o,"%s %f ,",o,stb->GetValue(j,jj,true)); + sprintf(zz,"%s %f ,",zz,stb->GetValue(j,jj,true)); } else { sprintf(o,"%s %f",o,stb->GetValue(j,jj,true)); + sprintf(zz,"%s %f",zz,stb->GetValue(j,jj,true)); }; jj++; }; if ( j < tb->GetNdata() -1 ) sprintf(o,"%s ,",o); + if ( j < tb->GetNdata() -1 ) sprintf(zz,"%s ,",zz); if ( !bold ){ bold = true; } else { @@ -738,17 +767,21 @@ setcolor(col,RESET, BLUE, WHITE); setcolor(col2,RESET, BLACK, WHITE); sprintf(o,"%s%s %-15s%s = ",o,col,foglia->GetName(),col2); + sprintf(zz,"%s %-15s = ",zz,foglia->GetName()); while ( j < tb->GetNdata() ){ Int_t jj = 0; while ( jj < slength ){ if ( jj < slength-1 ){ sprintf(o,"%s %i ,",o,(Int_t)stb->GetValue(j,jj,true)); + sprintf(zz,"%s %i ,",zz,(Int_t)stb->GetValue(j,jj,true)); } else { sprintf(o,"%s %i",o,(Int_t)stb->GetValue(j,jj,true)); + sprintf(zz,"%s %i",zz,(Int_t)stb->GetValue(j,jj,true)); }; jj++; }; if ( j < tb->GetNdata() -1 ) sprintf(o,"%s ,",o); + if ( j < tb->GetNdata() -1 ) sprintf(zz,"%s ,",zz); j++; }; }; @@ -781,6 +814,7 @@ setcolor(col,RESET, BLUE, WHITE); setcolor(col2,RESET, BLACK, WHITE); sprintf(o,"%s%s %s[%i]%s = ",o,col,foglia->GetName(),arr->GetSize(),col2); + sprintf(zz,"%s %s[%i] = ",zz,foglia->GetName(),arr->GetSize()); // while ( j < tb->GetNdata() ){ // @@ -791,12 +825,15 @@ while ( jj < arlen ){ if ( jj < arlen-1 ){ sprintf(o,"%s %i ,",o,arr->At(jj)); + sprintf(zz,"%s %i ,",zz,arr->At(jj)); } else { sprintf(o,"%s %i",o,arr->At(jj)); + sprintf(zz,"%s %i",zz,arr->At(jj)); }; jj++; }; if ( j < tb->GetNdata() -1 ) sprintf(o,"%s ,",o); + if ( j < tb->GetNdata() -1 ) sprintf(zz,"%s ,",zz); j++; }; }; @@ -814,6 +851,7 @@ setcolor(col,RESET, BLUE, WHITE); setcolor(col2,RESET, BLACK, WHITE); sprintf(o,"%s%s %s[%i]%s = ",o,col,foglia->GetName(),arr->GetSize(),col2); + sprintf(zz,"%s %s[%i] = ",zz,foglia->GetName(),arr->GetSize()); // while ( j < tb->GetNdata() ){ // @@ -824,17 +862,21 @@ while ( jj < arlen ){ if ( jj < arlen-1 ){ sprintf(o,"%s %f ,",o,arr->At(jj)); + sprintf(zz,"%s %f ,",zz,arr->At(jj)); } else { sprintf(o,"%s %f",o,arr->At(jj)); + sprintf(zz,"%s %f",zz,arr->At(jj)); }; jj++; }; if ( j < tb->GetNdata() -1 ) sprintf(o,"%s ,",o); + if ( j < tb->GetNdata() -1 ) sprintf(zz,"%s ,",zz); j++; }; }; }; sprintf(o,"%s\n",o); + sprintf(zz,"%s\n",zz); break; }; }; @@ -843,8 +885,8 @@ break; }; }; - // pamgui->DIALOG(0,o); printf("%s\n",o); + pamgui->DIALOG(4,zz); }; @@ -1016,17 +1058,18 @@ // if ( level.file == 2 ){ cintcom.str(""); - cintcom << "PamLevel2 *L2 = (PamLevel2*)0x" << hex; + cintcom << "PamLevel2 *L2 = (PamLevel2*)" << hex; //con const e l2 funziona cintcom << L2; gROOT->ProcessLine(cintcom.str().c_str()); + // printf(" comando: %s \n",cintcom.str().c_str()); } else { cintcom.str(""); - cintcom << "TTree *otr = (TTree*)0x" << hex; + cintcom << "TTree *otr = (TTree*)" << hex; cintcom << otr; gROOT->ProcessLine(cintcom.str().c_str()); // cintcom.str(""); - cintcom << "struct Variables &var = (struct Variables &)0x" << hex; + cintcom << "struct Variables &var = (struct Variables &)" << hex; cintcom << &var; gROOT->ProcessLine(cintcom.str().c_str()); }; @@ -1057,15 +1100,16 @@ // if ( level.file == 2 ){ // - printf(" %s \n",ddec.Data()); + // printf(" %s \n",ddec.Data()); if ( !L2 ){ L2 = new PamLevel2("",file.Data(),ddec.Data()); + if ( NODB ) L2->NoDBconnections(); otr = L2->GetPamTree(); - printf(" l2 constructor\n"); + // printf(" l2 constructor\n"); // printf(" abst %u obt %u qtot %f \n",L2->GetOrbitalInfo()->absTime,L2->GetOrbitalInfo()->OBT,L2->GetCaloLevel2()->qtot); } else { // - printf(" l2 already exist \n"); + // printf(" l2 already exist \n"); otr = L2->GetPamTree(gSystem->DirName(file.Data()),file.Data(),ddec.Data()); L2->GetRunTree(gSystem->DirName(file.Data()),file.Data()); // @@ -1448,10 +1492,10 @@ text->DrawLatex(var.xxvc+0.17*var.sfx,var.yxvc-0.08*var.sfy,"CAS1"); text->DrawLatex(var.xyvc-0.192*var.sfx,var.yyvc-0.08*var.sfy,"CAS4"); text->DrawLatex(var.xyvc+0.17*var.sfx,var.yyvc-0.08*var.sfy,"CAS3"); - text->DrawLatex(var.xxvc-0.192*var.sfx,var.yxvc+0.48*var.sfy,"CARD2"); - text->DrawLatex(var.xxvc+0.155*var.sfx,var.yxvc+0.48*var.sfy,"CARD3"); - text->DrawLatex(var.xyvc-0.170*var.sfx,var.yyvc+0.48*var.sfy,"CARD1"); - text->DrawLatex(var.xyvc+0.13*var.sfx,var.yyvc+0.48*var.sfy,"CARD4"); + text->DrawLatex(var.xxvc-0.222*var.sfx,var.yxvc+0.48*var.sfy,"CARD2"); + text->DrawLatex(var.xxvc+0.185*var.sfx,var.yxvc+0.48*var.sfy,"CARD3"); + text->DrawLatex(var.xyvc-0.190*var.sfx,var.yyvc+0.48*var.sfy,"CARD1"); + text->DrawLatex(var.xyvc+0.16*var.sfx,var.yyvc+0.48*var.sfy,"CARD4"); text->DrawLatex(var.xxvc-0.192*var.sfx,var.yxvc+0.39*var.sfy,"CAT3"); text->DrawLatex(var.xxvc+0.155*var.sfx,var.yxvc+0.39*var.sfy,"CAT4"); text->DrawLatex(var.xyvc-0.170*var.sfx,var.yyvc+0.39*var.sfy,"CAT2"); @@ -1579,6 +1623,7 @@ // // print infos on terminal // + // if ( !var.selex ){ printf(" File: %s \n",var.thefilename.Data()); if ( !s4pulser && !calotrig ){ printf(" Pkt_num: %i - Progressive number: %i \n",(int)headc,thisentry+1); @@ -1589,7 +1634,7 @@ if ( calotrig ){ printf(" Pkt_num: %i - Progressive number: %i - CALO trigger -\n",(int)headc,thisentry+1); }; - printf(" On Board Time: %i (delta %i) [ms]\n",OBT,DOBT); + printf(" On Board Time: %u (delta %i) [ms]\n",OBT,DOBT); const char *trc2 = trcs; printf(" TRIGGER: %s \n",trc2); printf(" AC: CARD hit = %i CAT hit = %i CAS hit = %i \n",var.hcard,var.hcat,var.hcas); @@ -1601,6 +1646,7 @@ printf(" CALO: NSTRIP = %i QTOT = %i [MIP]\n",var.nstrip,var.qtot); printf(" S4: %.2f [MIP] TOF: beta = %.2f \n",var.s4sig,var.beta[4]); printf(" ND: Trigger: neutrons = %i - Background: upper = %i lower = %i \n",var.trup,var.bkup,var.bkbo); + // }; // } @@ -1911,6 +1957,7 @@ if ( !var.TOF ) return; // Int_t tt = 0; + Int_t rj = 0; // // force level0, i.e. show patterntrig variable! // @@ -1940,6 +1987,13 @@ Float_t mt31[2][3]; Float_t mt32[2][3]; // + memset(mt11,0,2*8*sizeof(Float_t)); + memset(mt12,0,2*6*sizeof(Float_t)); + memset(mt21,0,2*2*sizeof(Float_t)); + memset(mt22,0,2*2*sizeof(Float_t)); + memset(mt31,0,2*3*sizeof(Float_t)); + memset(mt32,0,2*3*sizeof(Float_t)); + // Int_t S3 = 0; Int_t S2 = 0; Int_t S12 = 0; @@ -2104,7 +2158,9 @@ Float_t s12p = 0.055; ocolo = 10; TPolyLine *ftof12ya[6]; + rj=6; for ( Int_t j=0; j<6; j++){ + rj--; Float_t xc1[4]={ (s12p*j), s12p*(j), s12p*(j+1), (s12p*j)}; Float_t yc1[4]={ -ws13, 0., 0., -ws13}; Float_t xc[4]; @@ -2120,10 +2176,10 @@ } else { colo = 1; }; - ColorMIP(ms12a[j],colo); + ColorMIP(ms12a[rj],colo); // if ( colo != 10 ) ocolo = colo; - if ( mt12[0][j] == 4095. ) colo = noadc; + if ( mt12[0][rj] == 4095. ) colo = noadc; // ftof12ya[j]->SetFillColor(colo); ftof12ya[j]->SetLineWidth(1); @@ -2133,7 +2189,9 @@ // B s12p = 0.055; TPolyLine *ftof12yb[6]; + rj=6; for ( Int_t j=0; j<6; j++){ + rj--; Float_t xc1[4]={ (s12p*j), s12p*(j+1), s12p*(j+1), (s12p*j)}; Float_t yc1[4]={ -ws13, -ws13, 0., -ws13}; Float_t xc[4]; @@ -2149,10 +2207,10 @@ } else { colo = 1; }; - ColorMIP(ms12b[j],colo); + ColorMIP(ms12b[rj],colo); // if ( colo != 10 ) ocolo = colo; - if ( mt12[1][j] == 4095. ) colo = noadc; + if ( mt12[1][rj] == 4095. ) colo = noadc; // ftof12yb[j]->SetFillColor(colo); ftof12yb[j]->SetLineWidth(1); @@ -2186,7 +2244,9 @@ Float_t s21p = 0.075; ocolo = 10; TPolyLine *ftof21ya[2]; + rj=2; for ( Int_t j=0; j<2; j++){ + rj--; Float_t xc1[4]={ s21p*(j-1), s21p*(j-1), s21p*j, s21p*(j-1)}; Float_t yc1[4]={ 0., ws2, ws2, 0.}; Float_t xc[4]; @@ -2202,10 +2262,10 @@ } else { colo = 1; }; - ColorMIP(ms21a[j],colo); + ColorMIP(ms21a[rj],colo); // if ( colo != 10 ) ocolo = colo; - if ( mt21[0][j] == 4095. ) colo = noadc; + if ( mt21[0][rj] == 4095. ) colo = noadc; // ftof21ya[j]->SetFillColor(colo); ftof21ya[j]->SetLineWidth(1); @@ -2215,7 +2275,9 @@ // B s21p = 0.075; TPolyLine *ftof21yb[2]; + rj=2; for ( Int_t j=0; j<2; j++){ + rj--; Float_t xc1[4]={ s21p*(j-1), s21p*j, s21p*j, s21p*(j-1)}; Float_t yc1[4]={ 0., 0., ws2, 0.}; Float_t xc[4]; @@ -2231,10 +2293,10 @@ } else { colo = 1; }; - ColorMIP(ms21b[j],colo); + ColorMIP(ms21b[rj],colo); // if ( colo != 10 ) ocolo = colo; - if ( mt21[1][j] == 4095. ) colo = noadc; + if ( mt21[1][rj] == 4095. ) colo = noadc; // ftof21yb[j]->SetFillColor(colo); ftof21yb[j]->SetLineWidth(1); @@ -2349,7 +2411,9 @@ Float_t s31p = 0.060; ocolo = 10; TPolyLine *ftof31xa[3]; + rj=3; for ( Int_t j=0; j<3; j++){ + rj--; Float_t xc1[4]={ (s31p*j), (s31p*j), s31p*(j+1), (s31p*j)}; Float_t yc1[4]={ 0., ws13, ws13, 0.}; Float_t xc[4]; @@ -2365,10 +2429,10 @@ } else { colo = 1; }; - ColorMIP(ms31a[j],colo); + ColorMIP(ms31a[rj],colo); // if ( colo != 10 ) ocolo = colo; - if ( mt31[0][j] == 4095. ) colo = noadc; + if ( mt31[0][rj] == 4095. ) colo = noadc; // ftof31xa[j]->SetFillColor(colo); ftof31xa[j]->SetLineWidth(1); @@ -2378,7 +2442,9 @@ // B s31p = 0.060; TPolyLine *ftof31xb[3]; + rj=3; for ( Int_t j=0; j<3; j++){ + rj--; Float_t xc1[4]={ (s31p*j), s31p*(j+1), s31p*(j+1), (s31p*j)}; Float_t yc1[4]={ 0., 0., ws13, 0.}; Float_t xc[4]; @@ -2394,10 +2460,10 @@ } else { colo = 1; }; - ColorMIP(ms31b[j],colo); + ColorMIP(ms31b[rj],colo); // if ( colo != 10 ) ocolo = colo; - if ( mt31[1][j] == 4095. ) colo = noadc; + if ( mt31[1][rj] == 4095. ) colo = noadc; // ftof31xb[j]->SetFillColor(colo); ftof31xb[j]->SetLineWidth(1); @@ -2429,7 +2495,9 @@ Float_t s32p = 0.050; ocolo = 10; TPolyLine *ftof32ya[3]; + rj=3; for ( Int_t j=0; j<3; j++){ + rj--; Float_t xc1[4]={ (s32p*j), (s32p*j), s32p*(j+1), (s32p*j)}; Float_t yc1[4]={ -ws13, 0., 0., -ws13}; Float_t xc[4]; @@ -2445,10 +2513,10 @@ } else { colo = 1; }; - ColorMIP(ms32a[j],colo); + ColorMIP(ms32a[rj],colo); // if ( colo != 10 ) ocolo = colo; - if ( mt32[0][j] == 4095. ) colo = noadc; + if ( mt32[0][rj] == 4095. ) colo = noadc; // ftof32ya[j]->SetFillColor(colo); ftof32ya[j]->SetLineWidth(1); @@ -2457,7 +2525,9 @@ }; s32p = 0.050; TPolyLine *ftof32yb[3]; + rj=3; for ( Int_t j=0; j<3; j++){ + rj--; Float_t xc1[4]={ (s32p*j), s32p*(j+1), s32p*(j+1), (s32p*j)}; Float_t yc1[4]={ -ws13, -ws13, 0., -ws13}; Float_t xc[4]; @@ -2473,10 +2543,10 @@ } else { colo = 1; }; - ColorMIP(ms32b[j],colo); + ColorMIP(ms32b[rj],colo); // if ( colo != 10 ) ocolo = colo; - if ( mt32[1][j] == 4095. ) colo = noadc; + if ( mt32[1][rj] == 4095. ) colo = noadc; // ftof32yb[j]->SetFillColor(colo); ftof32yb[j]->SetLineWidth(1); @@ -2707,17 +2777,18 @@ // // Bool_t repeat = true; - Int_t numtr = 1; -// Int_t numtr = 0; + // Int_t numtr = 1; + Int_t numtr = 0; Int_t repuntil = 0; + Int_t repuntiltr = 0; // // var.tofraw = 0; // if ( level.file == 2 ) repuntil = L2->GetToFLevel2()->ntrk(); // printf("repuntil = %i \n",repuntil); - //if ( level.file == 2 ) repuntil = L2->GetTrkLevel2()->GetNTracks(); - //repuntil = L2->GetNTracks(); + if ( level.file == 2 ) repuntiltr = L2->GetTrkLevel2()->GetNTracks(); + // repuntiltr = L2->GetNTracks(); // while ( repeat ){ // printf("B repuntil = %i \n",repuntil); @@ -2726,13 +2797,14 @@ // // ToFTrkVar *ptt = 0; -// PamTrack *ptrack = 0; + PamTrack *ptrack = 0; Float_t adc[4][12]; Float_t tdc[4][12]; memset(adc,0,4*12*sizeof(Float_t)); memset(tdc,0,4*12*sizeof(Float_t)); // // + Int_t myseq = 0; // if ( repuntil == 0 || var.tofraw ){ if ( repuntil == 1 || var.tofraw ){ numtr = 0; @@ -2740,13 +2812,23 @@ repeat = false; } else { // +// printf(" deH_ \n"); // - if ( numtr >= repuntil-1 ) repeat = false; - // - // printf(" numtr is %i \n",numtr); - ptt = L2->GetToFLevel2()->GetToFTrkVar(numtr); - //ptrack = L2->GetTrack(numtr); - //ptt = ptrack->GetToFTrack(); + if ( numtr == 0 ){ +// printf(" ques \n"); + ptt = L2->GetToFLevel2()->GetToFTrkVar(0); + myseq = 0; +// printf(" que \n"); + + } else { + if ( numtr >= (repuntiltr-1) ) repeat = false; + // + printf(" numtr is %i \n",numtr); + // ptt = L2->GetToFLevel2()->GetToFTrkVar(numtr); + ptrack = L2->GetTrack(numtr-1); + ptt = ptrack->GetToFTrack(); + myseq = ptt->trkseqno + 1; + }; }; // xp11[0] = 0.; @@ -2760,20 +2842,22 @@ // ii = 2; // - Int_t myseq = ptt->trkseqno + 1; + // Int_t myseq = ptt->trkseqno + 1; + // +// printf(" qui \n"); L2->GetToFLevel2()->GetMatrix(myseq,adc,tdc); // - // printf(" qua \n"); +// printf(" qua \n"); // - for ( Int_t i = 0; i<8; i++ ) { - if ( adc[ch11a[i]][hb11a[i]] < 1000. ){ - ms11a[i] = adc[ch11a[i]][hb11a[i]]; - }; - if ( adc[ch11b[i]][hb11b[i]] < 1000. ){ - ms11b[i] = adc[ch11b[i]][hb11b[i]]; - }; - // xp11[i] = 0.; - }; + // for ( Int_t i = 0; i<8; i++ ) { + // if ( adc[ch11a[i]][hb11a[i]] < 1000. ){ + // ms11a[i] = adc[ch11a[i]][hb11a[i]]; + // }; + // if ( adc[ch11b[i]][hb11b[i]] < 1000. ){ + // ms11b[i] = adc[ch11b[i]][hb11b[i]]; + // }; + // xp11[i] = 0.; + // }; Int_t nmtof = 0; Float_t mtof = 0.; @@ -2890,7 +2974,7 @@ if ( level.file == -1 ){ ColorMIP(ms11a[j]+ms11b[j],colo); } else { - ColorTOFMIP(ms11a[j]+ms11b[j],colo); + ColorTOFMIP((ms11a[j]+ms11b[j])/2.,colo); }; // if ( colo != 10 ) ocolo = colo; @@ -2920,15 +3004,20 @@ ftof11y->Draw(); TPolyLine *sftof11[8]; tt = 1; - if ( level.file == -1 ) tt = 8; + rj=1; + if ( level.file == -1 ){ + tt = 8; + rj = 8; + }; for ( Int_t j=0; j 0.164 ) higp = 0.164; - if ( lowp < higp && ( level.file == -1 || (level.file == 2 && xp11[j] != 0.))){ + if ( lowp < higp && ( level.file == -1 || (level.file == 2 && xp11[rj] != 0.))){ Float_t nxc1[5]={ lowp, higp, higp, lowp, lowp}; Float_t nyc1[5]={ 0.0015, 0.0015, ws13-0.0015, ws13-0.0015, 0.0015}; Float_t nxc[5]; @@ -2953,7 +3042,9 @@ Float_t s12p = 0.055; ocolo = 10; TPolyLine *ftof12y[6]; + rj = 6; for ( Int_t j=0; j<6; j++){ + rj--; Float_t nxc1[5]={ (s12p*j), (s12p*j), s12p*(j+1), s12p*(j+1), (s12p*j)}; Float_t nyc1[5]={ -ws13, 0., 0., -ws13, -ws13}; Float_t nxc[5]; @@ -2970,9 +3061,9 @@ colo = 1; }; if ( level.file == -1 ){ - ColorMIP(ms12a[j]+ms12b[j],colo); + ColorMIP(ms12a[rj]+ms12b[rj],colo); } else { - ColorTOFMIP(ms12a[j]+ms12b[j],colo); + ColorTOFMIP((ms12a[rj]+ms12b[rj])/2.,colo); }; // if ( colo != 10 ) ocolo = colo; @@ -3039,7 +3130,9 @@ Float_t s21p = 0.075; ocolo = 10; TPolyLine *ftof21y[2]; + rj=2; for ( Int_t j=0; j<2; j++){ + rj--; Float_t nxc1[5]={ s21p*(j-1), s21p*(j-1), s21p*j,s21p*j, s21p*(j-1)}; Float_t nyc1[5]={ 0., ws2, ws2, 0., 0.}; Float_t nxc[5]; @@ -3056,9 +3149,9 @@ colo = 1; }; if ( level.file == -1 ){ - ColorMIP(ms21a[j]+ms21b[j],colo); + ColorMIP(ms21a[rj]+ms21b[rj],colo); } else { - ColorTOFMIP(ms21a[j]+ms21b[j],colo); + ColorTOFMIP((ms21a[rj]+ms21b[rj])/2.,colo); }; // if ( colo != 10 ) ocolo = colo; @@ -3144,7 +3237,7 @@ if ( level.file == -1 ){ ColorMIP(ms22a[j]+ms22b[j],colo); } else { - ColorTOFMIP(ms22a[j]+ms22b[j],colo); + ColorTOFMIP((ms22a[j]+ms22b[j])/2.,colo); }; // if ( colo != 10 ) ocolo = colo; @@ -3175,16 +3268,21 @@ ftof22y->Draw(); TPolyLine *sftof22[2]; tt = 1; - if ( level.file == -1 ) tt = 2; + rj = 1; + if ( level.file == -1 ){ + tt = 2; + rj = 2; + }; for (Int_t j=0; j 0.074 ) higp = 0.074; - if ( lowp < higp && ( level.file == -1 || (level.file == 2 && xp22[j] != 0.))){ + if ( lowp < higp && ( level.file == -1 || (level.file == 2 && xp22[rj] != 0.))){ Float_t nxc1[5]={ lowp, higp, higp, lowp, lowp}; Float_t nyc1[5]={ -0.0015, -0.0015, -ws2+0.0015, -ws2+0.0015, -0.0015}; Float_t nxc[5]; @@ -3204,7 +3302,7 @@ }; }; // - + //daquiinbasso // // S31 X-view // @@ -3230,7 +3328,7 @@ if ( level.file == -1 ){ ColorMIP(ms31a[j]+ms31b[j],colo); } else { - ColorTOFMIP(ms31a[j]+ms31b[j],colo); + ColorTOFMIP((ms31a[j]+ms31b[j])/2.,colo); }; // if ( colo != 10 ) ocolo = colo; @@ -3261,16 +3359,21 @@ ftof31y->Draw(); TPolyLine *sftof31[3]; tt = 1; - if ( level.file == -1 ) tt = 3; + rj = 1; + if ( level.file == -1 ){ + tt = 3; + rj = 3; + }; for (Int_t j=0; j 0.074 ) higp = 0.074; - if ( lowp < higp && ( level.file == -1 || (level.file == 2 && xp31[j] != 0.))){ + if ( lowp < higp && ( level.file == -1 || (level.file == 2 && xp31[rj] != 0.))){ Float_t nxc1[5]={ lowp, higp, higp, lowp, lowp}; Float_t nyc1[5]={ 0.0015, 0.0015, ws13-0.0015, ws13-0.0015, 0.0015}; Float_t nxc[5]; @@ -3297,7 +3400,9 @@ Float_t s32p = 0.050; ocolo = 10; TPolyLine *ftof32y[3]; + rj = 3; for ( Int_t j=0; j<3; j++){ + rj--; Float_t nxc1[5]={ (s32p*j), (s32p*j), s32p*(j+1),s32p*(j+1), (s32p*j)}; Float_t nyc1[5]={ -ws13, 0., 0., -ws13, -ws13}; Float_t nxc[5]; @@ -3314,9 +3419,9 @@ colo = 1; }; if ( level.file == -1 ){ - ColorMIP(ms32a[j]+ms32b[j],colo); + ColorMIP(ms32a[rj]+ms32b[rj],colo); } else { - ColorTOFMIP(ms32a[j]+ms32b[j],colo); + ColorTOFMIP((ms32a[rj]+ms32b[rj])/2.,colo); }; // if ( colo != 10 ) ocolo = colo; @@ -5030,9 +5135,9 @@ for (Int_t m = 0; m<3; m++){ if ( trk->signcluster[l][m] != 0. ){ if ( planeno == 10 ) { - x = 1024 - trk->addrcluster[l][m]; - } else { x = trk->addrcluster[l][m]; + } else { + x = 1024 - trk->addrcluster[l][m]; }; linea = new TLine(14.+x,0.01,14.+x,0.3); linea->SetLineWidth(2); @@ -5102,7 +5207,7 @@ trkpad[planepad]->cd(); trkpad[planepad]->Range(-7.05,0.,7.05,8.); for (Int_t img=0; img<2; img++){ - x = singlet->coord[img]; + x = -singlet->coord[img]; Float_t xsig = singlet->sgnl; if ( xsig > 8. ) xsig = 8.; // @@ -5158,8 +5263,8 @@ trkpad[planepad]->Range(-8.1,0.,8.1,8.); // x = track->xm[plane]; - Float_t xsig = track->dedx_x[plane]; - if ( track->xgood[plane] ){ + Float_t xsig = fabs(track->dedx_x[plane]); + if ( track->XGood(plane) ){ //if ( x > -100 ){ if ( xsig > 8. ) xsig = 8.; if ( var.bw ){ @@ -5167,7 +5272,7 @@ } else { sigcol2 = 1; }; - ColorTRKMIP(track->dedx_x[plane],sigcol2,0); + ColorTRKMIP(fabs(track->dedx_x[plane]),sigcol2,0); linea = new TLine(x,0.01,x,xsig); linea->SetLineWidth(2); linea->SetLineColor(sigcol2); @@ -5187,9 +5292,9 @@ planepad = plane * 2; trkpad[planepad]->cd(); trkpad[planepad]->Range(-7.05,0.,7.05,8.); - x = track->ym[plane]; - xsig = track->dedx_y[plane]; - if ( track->ygood[plane] ){ + x = -track->ym[plane]; + xsig = fabs(track->dedx_y[plane]); + if ( track->YGood(plane) ){ // if ( x > -100 ){ if ( xsig > 8. ) xsig = 8.; if ( var.bw ){ @@ -5197,7 +5302,7 @@ } else { sigcol2 = 1; }; - ColorTRKMIP(track->dedx_y[plane],sigcol2,0); + ColorTRKMIP(fabs(track->dedx_y[plane]),sigcol2,0); linea = new TLine(x,0.01,x,xsig); linea->SetLineWidth(2); linea->SetLineColor(sigcol2); @@ -5249,11 +5354,11 @@ for (Int_t plane = 0; plane<6; plane++){ // x = track->xm[plane]; - Float_t y = track->ym[plane]; - Float_t xsig = track->dedx_x[plane]; - Float_t ysig = track->dedx_y[plane]; + Float_t y = -track->ym[plane]; + Float_t xsig = fabs(track->dedx_x[plane]); + Float_t ysig = fabs(track->dedx_y[plane]); // if ( x > -100 && y > -100. ){ - if ( track->xgood[plane] && track->ygood[plane] ){ + if ( track->XGood(plane) && track->YGood(plane) ){ if ( var.bw ){ sigcol1 = -1; sigcol2 = -1; @@ -5371,8 +5476,8 @@ for (Int_t sing = 0; sing < min(totsx,totsy); sing++){ // x = arrax->At(orderx->At(sing)); - Float_t y1 = array1->At(ordery->At(sing)); - Float_t y2 = array2->At(ordery->At(sing)); + Float_t y1 = -array1->At(ordery->At(sing)); + Float_t y2 = -array2->At(ordery->At(sing)); Float_t xsig = sigarrax->At(orderx->At(sing)); Float_t ysig = sigarray->At(ordery->At(sing)); if ( x > -100 && y1 > -100. ){ @@ -5465,14 +5570,14 @@ for (Int_t m = 0; m<3; m++){ if ( trk->signcluster[l][m] != 0. ){ if ( planeno == 10 ) { - x = 1024 - trk->addrcluster[l][m]; - } else { x = trk->addrcluster[l][m]; + } else { + x = 1024 - trk->addrcluster[l][m]; }; x += 1024.; if ( trk->signcluster[l][m]> ysig ){ ysig = trk->signcluster[l][m]; - yh1[ncro] = x-1024.; + yh1[ncro] = x - 1024.; yh2[ncro] = x; }; }; @@ -5500,14 +5605,14 @@ for (Int_t m = 0; m<3; m++){ if ( trk->signcluster[e][m] != 0. ){ if ( planeno == 10 ) { - x = 1024 - trk->addrcluster[e][m]; - } else { x = trk->addrcluster[e][m]; + } else { + x = 1024 - trk->addrcluster[e][m]; }; x += 1024.; if ( trk->signcluster[e][m]> ysig ){ ysig = trk->signcluster[e][m]; - yh1[ncro] = x-1024.; + yh1[ncro] = x - 1024.; yh2[ncro] = x; }; }; @@ -5580,7 +5685,7 @@ }; for (Int_t plane = 0; plane < 22; plane++){ calx[plane] = (L2->GetCaloLevel2()->cbar[plane][0]/100.)*var.sfx + var.xxvc;; - caly[plane] = (L2->GetCaloLevel2()->cbar[plane][1]/100.)*var.sfx + var.xyvc; + caly[plane] = (-L2->GetCaloLevel2()->cbar[plane][1]/100.)*var.sfx + var.xyvc; // calzx[plane] = zpiano[plane] -5.81*var.sfy/1000. + var.yxvc; calzx[plane] = zpiano[plane] + var.yxvc; calzy[plane] = zpiano[plane] + var.yyvc; @@ -5629,7 +5734,7 @@ // for (Int_t plane = 0; plane < 22; plane++){ calx[plane] = (ctra->tbar[plane][0]/100.)*var.sfx + var.xxvc;; - caly[plane] = (ctra->tbar[plane][1]/100.)*var.sfx + var.xyvc; + caly[plane] = (-ctra->tbar[plane][1]/100.)*var.sfx + var.xyvc; // calzx[plane] = zpiano[plane] -5.81*var.sfy/1000. + var.yxvc; calzx[plane] = zpiano[plane] + var.yxvc; calzy[plane] = zpiano[plane] + var.yyvc; @@ -5716,22 +5821,23 @@ // Trajectory *tr = new Trajectory(npoint,zin); // - ifail = track->DoTrack2(tr); + // ifail = track->DoTrack2(tr); + ifail = track->DoTrack(tr); // if ( !ifail ){ for ( Int_t e = 0; e < npoint ; e++) { tx[e] = ((float)tr->x[e]/100.)*var.sfx + var.xxvc; - ty[e] = ((float)tr->y[e]/100.)*var.sfx + var.xyvc; + ty[e] = (-(float)tr->y[e]/100.)*var.sfx + var.xyvc; if ( e < 50 ) { - ptx1[e] = ((float)tr->y[e]/100.)*var.sfx + var.xcat; + ptx1[e] = (-(float)tr->y[e]/100.)*var.sfx + var.xcat; pty1[e] = ((float)tr->x[e]/100.)*var.sfy + var.ycat; } else { - ptx2[e-50] = ((float)tr->y[e]/100.)*var.sfx + var.xcat; + ptx2[e-50] = (-(float)tr->y[e]/100.)*var.sfx + var.xcat; pty2[e-50] = ((float)tr->x[e]/100.)*var.sfy + var.ycat; }; if ( e > 84 ) { tx1[e-85] = ((float)tr->x[e]/100.)*var.nds4 + var.xxvc; - ty1[e-85] = ((float)tr->y[e]/100.)*var.nds4 + var.xyvc; + ty1[e-85] = (-(float)tr->y[e]/100.)*var.nds4 + var.xyvc; tzx1[e-85] = (0.112)*var.sfy+((float)zin[e]/100.)*var.sfy + var.yxvc; tzy1[e-85] = (0.112)*var.sfy+((float)zin[e]/100.)*var.sfy + var.yyvc; }; @@ -5971,7 +6077,7 @@ Xview->Draw("box same"); }; if ( l == 1 ) { - Yview->Fill(n,21-m,1.); + Yview->Fill(95-n,21-m,1.); pd2->cd(); Yview->Draw("box same"); }; @@ -6200,7 +6306,7 @@ Xview->Draw("box same"); }; if ( l == 1 ) { - Yview->Fill(n,21-m,1.); + Yview->Fill(96-n,21-m,1.); pd2->cd(); Yview->Draw("box same"); }; @@ -6287,17 +6393,19 @@ // stringstream xvev; stringstream yvev; - for (Int_t ii = 0; ii < L2->GetCaloLevel2()->nstrip; ii++){ + // for (Int_t ii = 0; ii < L2->GetCaloLevel2()->nstrip; ii++){ + for (Int_t ii = 0; ii < L2->GetCaloLevel1()->istrip; ii++){ Int_t colo; Int_t l; Int_t m; Int_t n; - Float_t mip = L2->GetCaloLevel1()->DecodeEstrip(ii,l,m,n); + Bool_t satura = false; + Float_t mip = L2->GetCaloLevel1()->DecodeEstrip(ii,l,m,n,satura); if ( var.bw ){ colo = -1; } else { colo = 1; - }; + }; ColorMIP(mip,colo); if ( l == 0 ) { xvev.str(""); @@ -6306,7 +6414,11 @@ xvev << " " << l; gDirectory->Delete(xvev.str().c_str()); TH2F *Xview = new TH2F(xvev.str().c_str(),"",96,-0.5,95.5,22,-0.5,21.5); - Xview->SetFillColor(colo); + if ( satura ){ + Xview->SetFillColor(kBlack); + } else { + Xview->SetFillColor(colo); + }; Xview->Fill(n,21-m,1.); pd1->cd(); Xview->Draw("box same"); @@ -6318,8 +6430,12 @@ yvev << " " << l; gDirectory->Delete(yvev.str().c_str()); TH2F *Yview = new TH2F(yvev.str().c_str(),"",96,-0.5,95.5,22,-0.5,21.5); - Yview->SetFillColor(colo); - Yview->Fill(n,21-m,1.); + if ( satura ){ + Yview->SetFillColor(kBlack); + } else { + Yview->SetFillColor(colo); + }; + Yview->Fill(96-n,21-m,1.); pd2->cd(); Yview->Draw("box same"); };