/[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.2 by pam-fi, Thu May 18 13:06:08 2006 UTC revision 1.7 by pam-fi, Sun Jul 2 17:41:14 2006 UTC
# Line 1  Line 1 
1  /**  /**
2   * FTrkCalibQLookExpert.cpp   * FTrkCalibQLookExpert.cxx
3   *   *
4   * autor: D.Fedele   * autor: D.Fedele
5   * version 2.0   * version v1r05
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 18  Line 18 
18  #include <TPaveText.h>  #include <TPaveText.h>
19  #include <TLatex.h>  #include <TLatex.h>
20  #include <TCanvas.h>  #include <TCanvas.h>
21    #include <TFile.h>
22  #include <TTree.h>  #include <TTree.h>
23  #include <TGraph.h>  #include <TGraph.h>
24  #include <TStyle.h>  #include <TStyle.h>
# Line 29  Line 30 
30  #include <CalibTrk2Event.h>  #include <CalibTrk2Event.h>
31  //  //
32    
33    typedef struct caltrk_def{
 void stringcopy(TString& s1, const TString& s2, Int_t from=0, Int_t to=0){      
     if ( to == 0 ){  
         Int_t t2length = s2.Length();  
         s1 = "";  
         to = t2length;  
     };  
     for (Int_t i = from; i<to; i++){  
         s1.Append(s2[i],1);  
     };  
 };  
   
  typedef struct caltrk_def{  
34    Int_t good0[2];    Int_t good0[2];
35    Int_t daqmode[12];    Int_t daqmode[12];
36    Int_t dspnum[12];    Int_t dspnum[12];
# Line 69  void FTrkCalibQLook_EXPERT(TString file, Line 58  void FTrkCalibQLook_EXPERT(TString file,
58  {    {  
59    //    //
60    //   obtain information about the data file and select the output dir    //   obtain information about the data file and select the output dir
61    const string filepath=file.Data();    Int_t dwpos = file.Last('/');
62    Int_t dwpos = filepath.rfind("DW_");    Int_t dwpos1 = file.Last('.');
63    Int_t dwpos1 = filepath.find(".root");    TString base,ffile ;
64    TString fpath=(filepath.c_str());    ffile=file(dwpos+1,dwpos1-(dwpos+1));
65    TString base,ffile;    if(dwpos>0) base=file(0,dwpos);
   stringcopy(base,fpath,0,dwpos);  
   stringcopy(ffile,fpath,dwpos,dwpos1);  
66    
67    TString out;    TString out;
68    if(outdir.Length()==0){    if(outdir.Length()==0){
# Line 83  void FTrkCalibQLook_EXPERT(TString file, Line 70  void FTrkCalibQLook_EXPERT(TString file,
70    }else{    }else{
71      out = outdir;      out = outdir;
72    }    }
73      if(out.Last('/')+1<out.Length()) out+="/";
74    
75    //    //
76    // inizialise the variables and open the file    // inizialise the variables and open the file
# Line 306  void FTrkCalibQLook_EXPERT(TString file, Line 294  void FTrkCalibQLook_EXPERT(TString file,
294      TH1F *histoasig[12];           //histos of sigma      TH1F *histoasig[12];           //histos of sigma
295      TH1F *histoaped[12];          //histos of pedestals      TH1F *histoaped[12];          //histos of pedestals
296            
297      Double_t posy = 0.95;    // up y-coord - top pads      Float_t posy = 0.95;    // up y-coord - top pads
298      Double_t hpad = 0.15;   // pad height      Float_t hpad = 0.15;   // pad height
299      Double_t posx1=0;          // left  x-coord - pad column      Float_t posx1=0;          // left  x-coord - pad column
300      Double_t posx2=0;          // right x-coord - pad olumn      Float_t posx2=0;          // right x-coord - pad olumn
301      Double_t posx0=0;          //       x-coord - column division      Float_t posx0=0;          //       x-coord - column division
302      Double_t wrel = 0.6;     // relative x size of first sub-column      Float_t wrel = 0.6;     // relative x size of first sub-column
303      Double_t marg = 0.004;   // margin among pads      Float_t marg = 0.004;   // margin among pads
304      stringstream title;      stringstream title;
305      stringstream hid;      stringstream hid;
306    
# Line 335  void FTrkCalibQLook_EXPERT(TString file, Line 323  void FTrkCalibQLook_EXPERT(TString file,
323        /* -----------> HISTOGRAMS          */        /* -----------> HISTOGRAMS          */
324        /* calibration parameters */        /* calibration parameters */
325        title<<"DSP "<<n+1;        title<<"DSP "<<n+1;
326        hid<<"h"<<n;        hid<<"h"<<n<<"i"<<i;
327        histosig[n] = new TH1F(hid.str().c_str(),title.str().c_str(),3072,0.5,3072.5);        histosig[n] = new TH1F(hid.str().c_str(),title.str().c_str(),3072,0.5,3072.5);
328        hid.str("");        hid.str("");
329        hid<<"hh"<<n;        hid<<"hh"<<n<<"i"<<i;
330        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);
331        hid.str("");        hid.str("");
332        hid<<"hhh"<<n;        hid<<"hhh"<<n<<"i"<<i;
333        title.str("");        title.str("");
334        hid.str("");        hid.str("");
335        /* AVERAGE calibration parameters */            /* AVERAGE calibration parameters */    
336        hid<<"ah"<<n;        hid<<"ah"<<n<<"i"<<i;
337        histoasig[n] = new TH1F(hid.str().c_str(),title.str().c_str(),3,0.5,3072.5);        histoasig[n] = new TH1F(hid.str().c_str(),title.str().c_str(),3,0.5,3072.5);
338        hid.str("");        hid.str("");
339        hid<<"ahh"<<n;        hid<<"ahh"<<n<<"i"<<i;
340        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);
341        hid.str("");        hid.str("");
342      };                     //end loop on views      };                     //end loop on views
# Line 453  void FTrkCalibQLook_EXPERT(TString file, Line 441  void FTrkCalibQLook_EXPERT(TString file,
441        li.SetLineStyle(3);        li.SetLineStyle(3);
442        li.SetLineWidth(2);        li.SetLineWidth(2);
443                
444        Double_t maxhist=0;        Float_t maxhist=0;
445        TBox b;        TBox b;
446        b.SetFillColor(6);        b.SetFillColor(6);
447        b.SetFillStyle(3945);        b.SetFillStyle(3945);
# Line 504  void FTrkCalibQLook_EXPERT(TString file, Line 492  void FTrkCalibQLook_EXPERT(TString file,
492    
493                
494        /* plot SIGMA */        /* plot SIGMA */
495        Double_t max=500.;        Float_t max=500.;
496        c2->cd();        c2->cd();
497        trkpadtext[nn]->Draw();        trkpadtext[nn]->Draw();
498        trkpad2[nn]->SetLogy();        trkpad2[nn]->SetLogy();

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.7

  ViewVC Help
Powered by ViewVC 1.1.23