/[PAMELA software]/quicklook/tracker/flight/macros/FTrkCalibQLook_EXPERT.cxx
ViewVC logotype

Diff of /quicklook/tracker/flight/macros/FTrkCalibQLook_EXPERT.cxx

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.8 by pam-fi, Thu Jul 13 10:13:37 2006 UTC revision 1.14 by pam-fi, Tue Sep 19 15:15:42 2006 UTC
# Line 2  Line 2 
2   * FTrkCalibQLookExpert.cxx   * FTrkCalibQLookExpert.cxx
3   *   *
4   * autor: D.Fedele   * autor: D.Fedele
5   * version v1r06   * version v1r12
6   * Parameters:   * Parameters:
7   *      file - the data file to analyze   *      file - the data file to analyze
8   *      step - select =1 in order to analyze one event at time   *      step - select =1 in order to analyze one event at time
# Line 176  void FTrkCalibQLook_EXPERT(TString file, Line 176  void FTrkCalibQLook_EXPERT(TString file,
176      } else if (toevent > nevents) {              } else if (toevent > nevents) {        
177        maxevent = nevents;        maxevent = nevents;
178      } else {            } else {      
179        maxevent = fromevent;        maxevent = nevents;
180      };      };
181    };    };
182            
# Line 187  void FTrkCalibQLook_EXPERT(TString file, Line 187  void FTrkCalibQLook_EXPERT(TString file,
187    //**********************************************************************    //**********************************************************************
188            
189    Int_t hcevent=hotr->GetEntries();    Int_t hcevent=hotr->GetEntries();
190    printf("\n%d\n",hcevent);    Int_t tcevent=totr->GetEntries();
191    ULong64_t HOBT[hcevent], TOBT[hcevent];    ULong64_t HOBT[hcevent], TOBT[tcevent];
192    for (Int_t i = 0; i < hcevent; i++){    for (Int_t i = 0; i < hcevent; i++){
     totr->GetEntry(i);  
193      hotr->GetEntry(i);      hotr->GetEntry(i);
194      ph = eh4->GetPscuHeader();      ph = eh4->GetPscuHeader();
195      HOBT[i]= ph->GetOrbitalTime();      HOBT[i]= ph->GetOrbitalTime();
196      }
197      for (Int_t i = 0; i < tcevent; i++){
198        totr->GetEntry(i);
199      ph = eh3->GetPscuHeader();      ph = eh3->GetPscuHeader();
200      TOBT[i]= ph->GetOrbitalTime();      TOBT[i]= ph->GetOrbitalTime();
201    }    }
# Line 210  void FTrkCalibQLook_EXPERT(TString file, Line 212  void FTrkCalibQLook_EXPERT(TString file,
212        ph = eh1->GetPscuHeader();        ph = eh1->GetPscuHeader();
213        cod = eh1->GetCounter();        cod = eh1->GetCounter();
214        FOBT[0]= ph->GetOrbitalTime();        FOBT[0]= ph->GetOrbitalTime();
215        ctrk.daqmode[trk1->DSPnumber[m]-1]=trk1->DAQmode[m];        if(trk1->DSPnumber[m]>0){
216        ctrk.dspnum[trk1->DSPnumber[m]-1]=trk1->DSPnumber[m];          if(trk1->DSPnumber[m]<13){
217        ctrk.calibnum[trk1->DSPnumber[m]-1]=trk1->calibnumber[m];            ctrk.daqmode[trk1->DSPnumber[m]-1]=trk1->DAQmode[m];
218        ctrk.ncalev[trk1->DSPnumber[m]-1]=trk1->ncalib_event[m];            ctrk.dspnum[trk1->DSPnumber[m]-1]=trk1->DSPnumber[m];
219        ctrk.ped1[trk1->DSPnumber[m]-1]=trk1->ped_l1[m];            ctrk.calibnum[trk1->DSPnumber[m]-1]=trk1->calibnumber[m];
220        ctrk.ped2[trk1->DSPnumber[m]-1]=trk1->ped_l2[m];            ctrk.ncalev[trk1->DSPnumber[m]-1]=trk1->ncalib_event[m];
221        ctrk.ped3[trk1->DSPnumber[m]-1]=trk1->ped_l3[m];            ctrk.ped1[trk1->DSPnumber[m]-1]=trk1->ped_l1[m];
222        ctrk.sig1[trk1->DSPnumber[m]-1]=trk1->sig_l1[m];            ctrk.ped2[trk1->DSPnumber[m]-1]=trk1->ped_l2[m];
223        ctrk.sig2[trk1->DSPnumber[m]-1]=trk1->sig_l2[m];            ctrk.ped3[trk1->DSPnumber[m]-1]=trk1->ped_l3[m];
224        ctrk.sig3[trk1->DSPnumber[m]-1]=trk1->sig_l3[m];            ctrk.sig1[trk1->DSPnumber[m]-1]=trk1->sig_l1[m];
225        ctrk.nbad1[trk1->DSPnumber[m]-1]=trk1->nbad_l1[m];            ctrk.sig2[trk1->DSPnumber[m]-1]=trk1->sig_l2[m];
226        ctrk.nbad2[trk1->DSPnumber[m]-1]=trk1->nbad_l2[m];            ctrk.sig3[trk1->DSPnumber[m]-1]=trk1->sig_l3[m];
227        ctrk.nbad3[trk1->DSPnumber[m]-1]=trk1->nbad_l3[m];            ctrk.nbad1[trk1->DSPnumber[m]-1]=trk1->nbad_l1[m];
228        ctrk.calfl[trk1->DSPnumber[m]-1]=trk1->cal_flag[m];            ctrk.nbad2[trk1->DSPnumber[m]-1]=trk1->nbad_l2[m];
229        ctrk.crc_c[trk1->DSPnumber[m]-1][0]=trk1->crc_cal[m][0];            ctrk.nbad3[trk1->DSPnumber[m]-1]=trk1->nbad_l3[m];
230        ctrk.crc_c[trk1->DSPnumber[m]-1][1]=trk1->crc_cal[m][1];            ctrk.calfl[trk1->DSPnumber[m]-1]=trk1->cal_flag[m];
231        ctrk.crc_c[trk1->DSPnumber[m]-1][2]=trk1->crc_cal[m][2];            ctrk.crc_c[trk1->DSPnumber[m]-1][0]=trk1->crc_cal[m][0];
232        ctrk.crc_hc[trk1->DSPnumber[m]-1]=trk1->crc_hcal[m];            ctrk.crc_c[trk1->DSPnumber[m]-1][1]=trk1->crc_cal[m][1];
233        for (Int_t j = 0; j < 3072; j++){            ctrk.crc_c[trk1->DSPnumber[m]-1][2]=trk1->crc_cal[m][2];
234          ctrk.dspped[trk1->DSPnumber[m]-1][j]=trk1->DSPped_par[m][j];            ctrk.crc_hc[trk1->DSPnumber[m]-1]=trk1->crc_hcal[m];
235          ctrk.dspsig[trk1->DSPnumber[m]-1][j]=trk1->DSPsig_par[m][j];            for (Int_t j = 0; j < 3072; j++){
236          ctrk.dspbad[trk1->DSPnumber[m]-1][j]=trk1->DSPbad_par[m][j];              ctrk.dspped[trk1->DSPnumber[m]-1][j]=trk1->DSPped_par[m][j];
237        };              ctrk.dspsig[trk1->DSPnumber[m]-1][j]=trk1->DSPsig_par[m][j];
238                ctrk.dspbad[trk1->DSPnumber[m]-1][j]=trk1->DSPbad_par[m][j];
239              };
240            }
241          }
242        ph = eh2->GetPscuHeader();        ph = eh2->GetPscuHeader();
243        FOBT[1]= ph->GetOrbitalTime();        FOBT[1]= ph->GetOrbitalTime();
244        ctrk.daqmode[trk2->DSPnumber[m]-1]=trk2->DAQmode[m];        if(trk2->DSPnumber[m]>0){
245        ctrk.dspnum[trk2->DSPnumber[m]-1]=trk2->DSPnumber[m];          if(trk2->DSPnumber[m]<13){
246        ctrk.calibnum[trk2->DSPnumber[m]-1]=trk2->calibnumber[m];            ctrk.daqmode[trk2->DSPnumber[m]-1]=trk2->DAQmode[m];
247        ctrk.ncalev[trk2->DSPnumber[m]-1]=trk2->ncalib_event[m];            ctrk.dspnum[trk2->DSPnumber[m]-1]=trk2->DSPnumber[m];
248        ctrk.ped1[trk2->DSPnumber[m]-1]=trk2->ped_l1[m];            ctrk.calibnum[trk2->DSPnumber[m]-1]=trk2->calibnumber[m];
249        ctrk.ped2[trk2->DSPnumber[m]-1]=trk2->ped_l2[m];            ctrk.ncalev[trk2->DSPnumber[m]-1]=trk2->ncalib_event[m];
250        ctrk.ped3[trk2->DSPnumber[m]-1]=trk2->ped_l3[m];            ctrk.ped1[trk2->DSPnumber[m]-1]=trk2->ped_l1[m];
251        ctrk.sig1[trk2->DSPnumber[m]-1]=trk2->sig_l1[m];            ctrk.ped2[trk2->DSPnumber[m]-1]=trk2->ped_l2[m];
252        ctrk.sig2[trk2->DSPnumber[m]-1]=trk2->sig_l2[m];            ctrk.ped3[trk2->DSPnumber[m]-1]=trk2->ped_l3[m];
253        ctrk.sig3[trk2->DSPnumber[m]-1]=trk2->sig_l3[m];            ctrk.sig1[trk2->DSPnumber[m]-1]=trk2->sig_l1[m];
254        ctrk.nbad1[trk2->DSPnumber[m]-1]=trk2->nbad_l1[m];            ctrk.sig2[trk2->DSPnumber[m]-1]=trk2->sig_l2[m];
255        ctrk.nbad2[trk2->DSPnumber[m]-1]=trk2->nbad_l2[m];            ctrk.sig3[trk2->DSPnumber[m]-1]=trk2->sig_l3[m];
256        ctrk.nbad3[trk2->DSPnumber[m]-1]=trk2->nbad_l3[m];            ctrk.nbad1[trk2->DSPnumber[m]-1]=trk2->nbad_l1[m];
257        ctrk.calfl[trk2->DSPnumber[m]-1]=trk2->cal_flag[m];            ctrk.nbad2[trk2->DSPnumber[m]-1]=trk2->nbad_l2[m];
258        ctrk.crc_c[trk1->DSPnumber[m]-1][0]=trk2->crc_cal[m][0];            ctrk.nbad3[trk2->DSPnumber[m]-1]=trk2->nbad_l3[m];
259        ctrk.crc_c[trk1->DSPnumber[m]-1][1]=trk2->crc_cal[m][1];            ctrk.calfl[trk2->DSPnumber[m]-1]=trk2->cal_flag[m];
260        ctrk.crc_c[trk1->DSPnumber[m]-1][2]=trk2->crc_cal[m][2];            ctrk.crc_c[trk1->DSPnumber[m]-1][0]=trk2->crc_cal[m][0];
261        ctrk.crc_hc[trk1->DSPnumber[m]-1]=trk2->crc_hcal[m];            ctrk.crc_c[trk1->DSPnumber[m]-1][1]=trk2->crc_cal[m][1];
262        for (Int_t j = 0; j < 3072; j++){            ctrk.crc_c[trk1->DSPnumber[m]-1][2]=trk2->crc_cal[m][2];
263          ctrk.dspped[trk2->DSPnumber[m]-1][j]=trk2->DSPped_par[m][j];            ctrk.crc_hc[trk1->DSPnumber[m]-1]=trk2->crc_hcal[m];
264          ctrk.dspsig[trk2->DSPnumber[m]-1][j]=trk2->DSPsig_par[m][j];            for (Int_t j = 0; j < 3072; j++){
265          ctrk.dspbad[trk2->DSPnumber[m]-1][j]=trk2->DSPbad_par[m][j];              ctrk.dspped[trk2->DSPnumber[m]-1][j]=trk2->DSPped_par[m][j];
266                ctrk.dspsig[trk2->DSPnumber[m]-1][j]=trk2->DSPsig_par[m][j];
267                ctrk.dspbad[trk2->DSPnumber[m]-1][j]=trk2->DSPbad_par[m][j];
268              }
269            }
270        }        }
271      }      }
272                                
# Line 266  void FTrkCalibQLook_EXPERT(TString file, Line 276  void FTrkCalibQLook_EXPERT(TString file,
276      Int_t risposta=0;      Int_t risposta=0;
277      stringstream fromfile;      stringstream fromfile;
278    
279      printf("\n\t%d\n",cod->Get(pctp->CalibHeader));      fromfile<<"FTrkCalibQLook_EXPERT      File: "<<ffile<<"        -- CalibHeader OBT= "<<HOBT[(cod->Get(pctp->CalibHeader))-1]<<" -- Calib pkt OBT= "<<FOBT[0]<<" -- CalibTrailer OBT= "<<TOBT[(cod->Get(pctp->CalibTrailer))]<<" --";
     fromfile<<"FTrkCalibQLook_EXPERT      File: "<<ffile<<"        -- CalibHeader OBT= "<<HOBT[(cod->Get(pctp->CalibHeader))-1]<<" -- Calib pkt OBT= "<<FOBT[0]<<" -- CalibTrailer OBT= "<<TOBT[(cod->Get(pctp->CalibHeader))-1]<<" --";  
280            
281      gStyle->SetLabelSize(0.08,"x");      gStyle->SetLabelSize(0.07,"x");
282      gStyle->SetLabelSize(0.08,"y");      gStyle->SetLabelSize(0.07,"y");
283      gStyle->SetTitleFillColor(10);      gStyle->SetTitleFillColor(10);
284      gStyle->SetTitleFontSize(0.1);      gStyle->SetTitleFontSize(0.08);
285      gStyle->SetTitleOffset(0.8,"y");      gStyle->SetTitleOffset(0.8,"y");
286      gStyle->SetTitleOffset(1.,"x");      gStyle->SetTitleOffset(0.9,"x");
287      gStyle->SetTitleSize(0.06,"y");      gStyle->SetTitleSize(0.06,"y");
288      gStyle->SetTitleSize(0.06,"x");      gStyle->SetTitleSize(0.06,"x");
289      gStyle->SetOptStat(0);      gStyle->SetOptStat(101110);  
290        gStyle->SetStatX(0.9);  
291        gStyle->SetStatW(0.4);    
292        gStyle->SetStatColor(10);
293        gStyle->SetStatFontSize(0.1);
294            
295      //      //
296      //  draw display area      //  draw display area
297    
298      TLatex *tzz=new TLatex();      TLatex *tzz=new TLatex();
299      tzz->SetTextFont(32);      tzz->SetTextFont(32);
300      tzz->SetTextColor(1);      tzz->SetTextColor(1);
# Line 297  void FTrkCalibQLook_EXPERT(TString file, Line 311  void FTrkCalibQLook_EXPERT(TString file,
311      tzz->DrawLatex(.01,0.98,fromfile.str().c_str());      tzz->DrawLatex(.01,0.98,fromfile.str().c_str());
312      tzz->DrawLatex(.90,0.98,"SIGMA");      tzz->DrawLatex(.90,0.98,"SIGMA");
313    
314      
315        TCanvas *sig=new TCanvas("sig","FTrkCalibQLook_EXPERT_histosig",canvasx,canvasy);
316        sig->SetFillColor(10);
317        tzz->DrawLatex(.01,0.98,fromfile.str().c_str());
318        tzz->DrawLatex(.85,0.97,"Histograms of the sigmas");
319        
320    
321    
322      //  draw pads      //  draw pads
323      TPad *trkpad1[12],*trkpad2[12];        //pad for histos      TPad *trkpad1[12],*trkpad2[12],*trkpad3[36];        //pad for histos
324      TPaveText *trkpadtext[12]; //pad for header      TPaveText *trkpadtext[12]; //pad for header
325      TH1F *histosig[12];           //histos of sigma      TH1F *histosig[12];           //histos of sigma
326      TH1F *histoped[12];          //histos of pedestals        TH1F *histoped[12];          //histos of pedestals  
327      TH1F *histoasig[12];           //histos of sigma      TH1F *histoasig[12];           //histos of sigma
328      TH1F *histoaped[12];          //histos of pedestals      TH1F *histoaped[12];          //histos of pedestals
329    
330        TH1F *histosiglad[12][3];           //histos of sigma
331        stringstream title;
332        stringstream hid;
333            
334      Float_t posy = 0.95;    // up y-coord - top pads      Float_t posy = 0.95;    // up y-coord - top pads
335      Float_t hpad = 0.15;   // pad height      Float_t hpad = 0.15;   // pad height
# Line 312  void FTrkCalibQLook_EXPERT(TString file, Line 338  void FTrkCalibQLook_EXPERT(TString file,
338      Float_t posx0=0;          //       x-coord - column division      Float_t posx0=0;          //       x-coord - column division
339      Float_t wrel = 0.6;     // relative x size of first sub-column      Float_t wrel = 0.6;     // relative x size of first sub-column
340      Float_t marg = 0.004;   // margin among pads      Float_t marg = 0.004;   // margin among pads
     stringstream title;  
     stringstream hid;  
341    
342        
343      for(Int_t n = 0; n<12; n++){      for(Int_t n = 0; n<12; n++){
344        if ( (n+1)%2 ) {        if ( (n+1)%2 ) {
345          if(n>1)posy = posy-(marg*2+hpad);          if(n>1)posy = posy-(marg*2+hpad);
346          posx1 = marg;          posx1 = marg;
347          posx2 = 0.5 - marg;          posx2 = 0.5 - marg;
348          posx0 = 0.5*wrel;          posx0 = 0.5*wrel;
349    
350        } else {        } else {
351          posx1 = posx1 + 0.5;          posx1 = posx1 + 0.5;
352          posx2 = posx2 + 0.5;          posx2 = posx2 + 0.5;
353          posx0 = posx0 + 0.5;          posx0 = posx0 + 0.5;
354    
355        };        };
356        /* -----------> pad for histograms  */        /* -----------> pad for histograms  */
357        trkpad1[n] = new TPad("pad1"," ",posx1,posy-hpad,posx0-marg,posy,18,0,0);        trkpad1[n] = new TPad("pad1"," ",posx1,posy-hpad,posx0-marg,posy,18,0,0);
# Line 341  void FTrkCalibQLook_EXPERT(TString file, Line 368  void FTrkCalibQLook_EXPERT(TString file,
368        histoped[n] = new TH1F(hid.str().c_str(),title.str().c_str(),3072,0.5,3072.5);        histoped[n] = new TH1F(hid.str().c_str(),title.str().c_str(),3072,0.5,3072.5);
369        hid.str("");        hid.str("");
370        hid<<"hhh"<<n<<"i"<<i;        hid<<"hhh"<<n<<"i"<<i;
       title.str("");  
371        hid.str("");        hid.str("");
372        /* AVERAGE calibration parameters */            /* AVERAGE calibration parameters */    
373        hid<<"ah"<<n<<"i"<<i;        hid<<"ah"<<n<<"i"<<i;
# Line 350  void FTrkCalibQLook_EXPERT(TString file, Line 376  void FTrkCalibQLook_EXPERT(TString file,
376        hid<<"ahh"<<n<<"i"<<i;        hid<<"ahh"<<n<<"i"<<i;
377        histoaped[n] = new TH1F(hid.str().c_str(),title.str().c_str(),3,0.5,3072.5);        histoaped[n] = new TH1F(hid.str().c_str(),title.str().c_str(),3,0.5,3072.5);
378        hid.str("");        hid.str("");
379          for(int ii=0;ii<3;ii++){
380            title.str("");
381            title<<"DSP "<<n+1<<" / Lad "<<ii+1;
382            hid<<"hhhh"<<n<<"i"<<i<<"ii"<<ii;
383            histosiglad[n][ii] = new TH1F(hid.str().c_str(),title.str().c_str(),32,-0.5,30.5);
384            hid.str("");
385          }
386          title.str("");
387      };                     //end loop on views      };                     //end loop on views
388        
389        Float_t tposy = 0.95;    // up y-coord - top pads
390        Float_t thpad = 0.;   // pad height
391        Float_t tposx1=0;          // left  x-coord - pad column
392        Float_t tposx0=0;          //       x-coord - column division
393        Float_t twrel = 0.;     // relative x size of first sub-column
394        Float_t tmarg = 0.002;   // margin among pads
395        thpad = (tposy-tmarg*11)/6;
396        twrel = (1-tmarg*12)/6;
397    
398        for(Int_t n = 0; n<36; n++){
399          if ( (n+1)%6==1 ) {
400            if(n>1) tposy = tposy-(tmarg*2+thpad);
401            tposx1 = tmarg;
402            tposx0 = tposx1 + twrel;
403          } else {
404            tposx1 = tposx0 + 2*tmarg;
405            tposx0 = tposx1 + twrel;
406          }
407          trkpad3[n]= new TPad("pad3"," ",tposx1,tposy-thpad,tposx0,tposy,18,0,0);
408        }
409        
410      
411      stringstream message;      stringstream message;
412      
413      //--------------------------------      //--------------------------------
414      //CHECK CALIBRATION procedure      //CHECK CALIBRATION procedure
415      //--------------------------------      //--------------------------------
# Line 362  void FTrkCalibQLook_EXPERT(TString file, Line 417  void FTrkCalibQLook_EXPERT(TString file,
417      Int_t calok = 0;//BAD        Int_t calok = 0;//BAD  
418      for(Int_t n = 0; n<12; n++){      for(Int_t n = 0; n<12; n++){
419        if(ctrk.ncalev[n]==0 && ctrk.calfl[n]==0)calok = 1;//GOOD        if(ctrk.ncalev[n]==0 && ctrk.calfl[n]==0)calok = 1;//GOOD
420          
421                
422        nn=ctrk.dspnum[n]-1;        nn=ctrk.dspnum[n]-1;
423        /*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*        /*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*
# Line 438  void FTrkCalibQLook_EXPERT(TString file, Line 493  void FTrkCalibQLook_EXPERT(TString file,
493        for(Int_t j = 0; j < 3072; j++){        for(Int_t j = 0; j < 3072; j++){
494          histosig[nn]->Fill((Float_t)j,ctrk.dspsig[nn][j]);          histosig[nn]->Fill((Float_t)j,ctrk.dspsig[nn][j]);
495          histoped[nn]->Fill((Float_t)j,ctrk.dspped[nn][j]);          histoped[nn]->Fill((Float_t)j,ctrk.dspped[nn][j]);
496            if(j<1024) histosiglad[nn][0]->Fill(ctrk.dspsig[nn][j]);
497            if(j>=1024 && j<2048) histosiglad[nn][1]->Fill(ctrk.dspsig[nn][j]);
498            if(j>=2048 && j<3072) histosiglad[nn][2]->Fill(ctrk.dspsig[nn][j]);
499        };        };
500        histoasig[nn]->Fill(1,ctrk.sig1[nn]);        histoasig[nn]->Fill(1,ctrk.sig1[nn]);
501        histoasig[nn]->Fill(1025,ctrk.sig2[nn]);        histoasig[nn]->Fill(1025,ctrk.sig2[nn]);
# Line 454  void FTrkCalibQLook_EXPERT(TString file, Line 512  void FTrkCalibQLook_EXPERT(TString file,
512                
513        Float_t maxhist=0;        Float_t maxhist=0;
514        TBox b;        TBox b;
       b.SetFillColor(6);  
       b.SetFillStyle(3945);  
515        /* plot PEDESTAL */        /* plot PEDESTAL */
516        c1->cd();        c1->cd();
517        trkpadtext[nn]->Draw();        trkpadtext[nn]->Draw();
# Line 463  void FTrkCalibQLook_EXPERT(TString file, Line 519  void FTrkCalibQLook_EXPERT(TString file,
519        trkpad1[nn]->cd();        trkpad1[nn]->cd();
520        trkpad1[nn]->SetFillColor(10);        trkpad1[nn]->SetFillColor(10);
521        trkpad1[nn]->SetFrameFillColor(10);        trkpad1[nn]->SetFrameFillColor(10);
522          histoped[nn]->SetStats(kFALSE);
523        histoped[nn]->SetLineColor(1);        histoped[nn]->SetLineColor(1);
524        histoped[nn]->SetFillColor(12);        histoped[nn]->SetFillColor(12);
525        histoped[nn]->SetLineWidth(1);        histoped[nn]->SetLineWidth(1);
# Line 476  void FTrkCalibQLook_EXPERT(TString file, Line 533  void FTrkCalibQLook_EXPERT(TString file,
533          histoped[nn]->Draw("b");          histoped[nn]->Draw("b");
534          if(nn==1){          if(nn==1){
535            maxhist=histoped[nn]->GetMaximum();            maxhist=histoped[nn]->GetMaximum();
536            b.DrawBox(2816.,700.,3060.,maxhist);            b.SetFillColor(6);
537              b.SetFillStyle(3945);
538              b.DrawBox(2944.,700.,3060.,maxhist);
539    
540              b.SetFillColor(107);
541              b.SetFillStyle(3954);
542              b.DrawBox(2816.,700.,2944.,maxhist);
543              b.DrawBox(2048.,700.,2176.,maxhist);
544            }
545            else if(nn==4){
546              maxhist=histoped[nn]->GetMaximum();
547              b.SetFillColor(107);
548              b.SetFillStyle(3954);
549              b.DrawBox(384.,2200.,512.,maxhist);
550          }          }
551          else if(nn==6){          else if(nn==6){
552            maxhist=histoped[nn]->GetMaximum();            maxhist=histoped[nn]->GetMaximum();
553              b.SetFillColor(6);
554              b.SetFillStyle(3945);
555            b.DrawBox(2560.,2200.,2816.,maxhist);            b.DrawBox(2560.,2200.,2816.,maxhist);
556              b.DrawBox(1024.,2200.,1535.,maxhist);
557              
558              b.SetFillColor(107);
559              b.SetFillStyle(3954);
560            b.DrawBox(512.,2200.,768.,maxhist);            b.DrawBox(512.,2200.,768.,maxhist);
561            b.DrawBox(1024.,2200.,1792.,maxhist);            b.DrawBox(1536.,2200.,1792.,maxhist);
562            }
563            else if(nn==7){
564              maxhist=histoped[nn]->GetMaximum();
565              b.SetFillColor(107);
566              b.SetFillStyle(3954);
567              b.DrawBox(512.,700.,768.,maxhist);
568          }          }
569          else if(nn==11){          else if(nn==11){
570            maxhist=histoped[nn]->GetMaximum();            maxhist=histoped[nn]->GetMaximum();
571              b.SetFillColor(6);
572              b.SetFillStyle(3945);
573            b.DrawBox(768.,700.,1024.,maxhist);            b.DrawBox(768.,700.,1024.,maxhist);
574              
575              b.SetFillColor(107);
576              b.SetFillStyle(3954);
577              b.DrawBox(0.,700.,512.,maxhist);
578              b.DrawBox(1920.,700.,2048.,maxhist);
579              b.DrawBox(2176.,700.,2304.,maxhist);
580          }          }
581        }        }
582        else histoped[nn]->Draw("axis");        else histoped[nn]->Draw("axis");
# Line 511  void FTrkCalibQLook_EXPERT(TString file, Line 601  void FTrkCalibQLook_EXPERT(TString file,
601        trkpad2[nn]->cd();        trkpad2[nn]->cd();
602        trkpad2[nn]->SetFillColor(10);        trkpad2[nn]->SetFillColor(10);
603        trkpad2[nn]->SetFrameFillColor(10);        trkpad2[nn]->SetFrameFillColor(10);
604          histosig[nn]->SetStats(kFALSE);
605        histosig[nn]->SetLineColor(1);        histosig[nn]->SetLineColor(1);
606        histosig[nn]->SetFillColor(12);        histosig[nn]->SetFillColor(12);
607        histosig[nn]->SetLineWidth(1);        histosig[nn]->SetLineWidth(1);
# Line 524  void FTrkCalibQLook_EXPERT(TString file, Line 615  void FTrkCalibQLook_EXPERT(TString file,
615          histosig[nn]->Draw("b");          histosig[nn]->Draw("b");
616          if(nn==1){          if(nn==1){
617            maxhist=histosig[nn]->GetMaximum();            maxhist=histosig[nn]->GetMaximum();
618            b.DrawBox(2816.,0.,3060.,maxhist);            b.SetFillColor(6);
619              b.SetFillStyle(3945);
620              b.DrawBox(2944.,0.,3060.,maxhist);
621    
622              b.SetFillColor(107);
623              b.SetFillStyle(3954);
624              b.DrawBox(2816.,0.,2944.,maxhist);
625              b.DrawBox(2048.,0.,2176.,maxhist);
626            }
627            else if(nn==4){
628              maxhist=histosig[nn]->GetMaximum();
629              b.SetFillColor(107);
630              b.SetFillStyle(3954);
631              b.DrawBox(384.,0.,512.,maxhist);
632          }          }
633          else if(nn==6){          else if(nn==6){
634            maxhist=histosig[nn]->GetMaximum();            maxhist=histosig[nn]->GetMaximum();
635              b.SetFillColor(6);
636              b.SetFillStyle(3945);
637            b.DrawBox(2560.,0.,2816.,maxhist);            b.DrawBox(2560.,0.,2816.,maxhist);
638              b.DrawBox(1024.,0.,1535.,maxhist);
639              
640              b.SetFillColor(107);
641              b.SetFillStyle(3954);
642              b.DrawBox(512.,0.,768.,maxhist);
643              b.DrawBox(1536.,0.,1792.,maxhist);
644            }
645            else if(nn==7){
646              maxhist=histosig[nn]->GetMaximum();
647              b.SetFillColor(107);
648              b.SetFillStyle(3954);
649            b.DrawBox(512.,0.,768.,maxhist);            b.DrawBox(512.,0.,768.,maxhist);
           b.DrawBox(1024.,0.,1792.,maxhist);  
650          }          }
651          else if(nn==11){          else if(nn==11){
652            maxhist=histosig[nn]->GetMaximum();            maxhist=histosig[nn]->GetMaximum();
653              b.SetFillColor(6);
654              b.SetFillStyle(3945);
655            b.DrawBox(768.,0.,1024.,maxhist);            b.DrawBox(768.,0.,1024.,maxhist);
656              
657              b.SetFillColor(107);
658              b.SetFillStyle(3954);
659              b.DrawBox(0.,0.,512.,maxhist);
660              b.DrawBox(1920.,0.,2048.,maxhist);
661              b.DrawBox(2176.,0.,2304.,maxhist);
662          }          }
663        }        }
664        else histosig[nn]->Draw("axis");        else histosig[nn]->Draw("axis");
# Line 542  void FTrkCalibQLook_EXPERT(TString file, Line 666  void FTrkCalibQLook_EXPERT(TString file,
666        li.DrawLine(1024.5,0,1024.5,max);        li.DrawLine(1024.5,0,1024.5,max);
667        li.DrawLine(2048.5,0,2048.5,max);        li.DrawLine(2048.5,0,2048.5,max);
668                
669          for(int ii=0;ii<3;ii++){
670            sig->cd();
671      };//end loop on views          trkpad3[nn*3+ii]->Draw();
672            trkpad3[nn*3+ii]->cd();
673            trkpad3[nn*3+ii]->SetFillColor(10);
674            trkpad3[nn*3+ii]->SetFrameFillColor(10);
675            trkpad3[nn*3+ii]->SetLogy();
676            histosiglad[nn][ii]->SetLineColor(1);
677            histosiglad[nn][ii]->SetFillColor(1);
678            histosiglad[nn][ii]->SetLineWidth(1);
679            histosiglad[nn][ii]->GetXaxis()->SetTitle("SIG (ADC channels)");
680            histosiglad[nn][ii]->GetXaxis()->CenterTitle();
681            histosiglad[nn][ii]->Draw("");  
682          }
683            
684        };//end loop on views
685      c1->Update();//draw pads in canvas      c1->Update();//draw pads in canvas
686      c2->Update();//draw pads in canvas      c2->Update();//draw pads in canvas
687        sig->Update();//draw pads in canvas
688      stringstream nom1;      
689      stringstream nom2;      stringstream nom1,nom2,nom3;
690          
691      if(!strcmp(outfile.Data(),"ps")||!strcmp(outfile.Data(),"pdf")){      if(!strcmp(outfile.Data(),"ps")||!strcmp(outfile.Data(),"pdf")){
692        nom1.str("");        nom1.str("");
693        nom2.str("");        nom2.str("");
694          nom3.str("");
695        nom1<<out<<ffile<<"_FTrkCalibQLook_EXPERT-pkt"<<i+1<<".ps(";        nom1<<out<<ffile<<"_FTrkCalibQLook_EXPERT-pkt"<<i+1<<".ps(";
696        nom2<<out<<ffile<<"_FTrkCalibQLook_EXPERT-pkt"<<i+1<<".ps)";        nom2<<out<<ffile<<"_FTrkCalibQLook_EXPERT-pkt"<<i+1<<".ps";
697          nom3<<out<<ffile<<"_FTrkCalibQLook_EXPERT-pkt"<<i+1<<".ps)";
698        c1->Print(nom1.str().c_str(),"Landscape");        c1->Print(nom1.str().c_str(),"Landscape");
699        c2->Print(nom2.str().c_str(),"Landscape");        c2->Print(nom2.str().c_str(),"Landscape");
700          sig->Print(nom3.str().c_str(),"Landscape");
701          
702        if(!strcmp(outfile.Data(),"pdf")){        if(!strcmp(outfile.Data(),"pdf")){
703          stringstream com;          stringstream com;
704          com<<"ps2pdf13 "<<out<<ffile<<"_FTrkCalibQLook_EXPERT-pkt"<<i+1<<".ps "<<out<<ffile<<"_FTrkCalibQlook_EXPERT-pkt"<<i+1<<".pdf";          com<<"ps2pdf13 "<<out<<ffile<<"_FTrkCalibQLook_EXPERT-pkt"<<i+1<<".ps "<<out<<ffile<<"_FTrkCalibQlook_EXPERT-pkt"<<i+1<<".pdf";
# Line 574  void FTrkCalibQLook_EXPERT(TString file, Line 714  void FTrkCalibQLook_EXPERT(TString file,
714      else{      else{
715        nom1.str("");        nom1.str("");
716        nom2.str("");        nom2.str("");
717          nom3.str("");
718        nom1<<out<<ffile<<"_FTrkCalibQLook_EXPERT-ped-pkt"<<i+1<<"."<<outfile.Data();        nom1<<out<<ffile<<"_FTrkCalibQLook_EXPERT-ped-pkt"<<i+1<<"."<<outfile.Data();
719        nom2<<out<<ffile<<"_FTrkCalibQLook_EXPERT-sig-pkt"<<i+1<<"."<<outfile.Data();        nom2<<out<<ffile<<"_FTrkCalibQLook_EXPERT-sig-pkt"<<i+1<<"."<<outfile.Data();
720          nom3<<out<<ffile<<"_FTrkCalibQLook_EXPERT-histosig-pkt"<<i+1<<"."<<outfile.Data();
721        c1->Print(nom1.str().c_str());        c1->Print(nom1.str().c_str());
722        c2->Print(nom2.str().c_str());        c2->Print(nom2.str().c_str());
723          sig->Print(nom3.str().c_str());
724      }      }
725              
726      if(step==1 && i!=maxevent-1 ){        if(step==1 && i!=maxevent-1 ){  
727        printf("\n Press 1<enter> to continue, 2<enter> to quit.\n");        printf("\n Press 1<enter> to continue, 2<enter> to quit.\n");
728        cin>>risposta;        cin>>risposta;

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.14

  ViewVC Help
Powered by ViewVC 1.1.23