/[PAMELA software]/DarthVader/TrackerLevel2/src/TrkProcess.cpp
ViewVC logotype

Diff of /DarthVader/TrackerLevel2/src/TrkProcess.cpp

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

revision 1.8 by pam-fi, Fri Feb 16 14:56:01 2007 UTC revision 1.15 by mocchiut, Wed Mar 6 14:18:33 2013 UTC
# Line 11  using namespace std; Line 11  using namespace std;
11  TrkProcess::TrkProcess(){  TrkProcess::TrkProcess(){
12            
13      idrun = 0;      idrun = 0;
14      dbg_mode.SetNone();  //    dbg_mode.SetNone();
15      get1  = 0;      get1  = 0;
16      full1 = 0;      full1 = 0;
17      geth  = 0;      geth  = 0;
# Line 35  TrkProcess::TrkProcess(){ Line 35  TrkProcess::TrkProcess(){
35      file2 = "";      file2 = "";
36            
37      ostatus = 0;      ostatus = 0;
38    
39        npar = 0;
40    
41        nskip = 0;
42    
43    //     TrkParams::SetTrackingMode();
44    //     TrkParams::SetPrecisionFactor();
45    //     TrkParams::SetStepMin();  
46        TrkParams::SetMiniDefault();
47        TrkParams::SetPFA();
48  };  };
49                    
50  /**  /**
# Line 47  TrkProcess::TrkProcess(ULong64_t run, TF Line 57  TrkProcess::TrkProcess(ULong64_t run, TF
57      idrun = run;      idrun = run;
58  //    DEBUG = false;  //    DEBUG = false;
59  //    VERBOSE = false;  //    VERBOSE = false;
60      dbg_mode.SetWarning();  //    dbg_mode.SetWarning();
61      get1  = 0;      get1  = 0;
62      full1 = 0;      full1 = 0;
63      get2 = 1;      get2 = 1;
# Line 79  TrkProcess::TrkProcess(ULong64_t run, TF Line 89  TrkProcess::TrkProcess(ULong64_t run, TF
89      else if (!frameh.CompareTo("hbook", TString::kIgnoreCase)) ifrooth =false;      else if (!frameh.CompareTo("hbook", TString::kIgnoreCase)) ifrooth =false;
90    
91      ostatus = 0;      ostatus = 0;
92        
93        npar=0;
94                    
95        nskip = 0;
96    
97    //     TrkParams::SetTrackingMode();
98    //     TrkParams::SetPrecisionFactor();
99    //     TrkParams::SetStepMin();  
100        TrkParams::SetMiniDefault();
101        TrkParams::SetPFA();
102    
103  };  };
104  /**  /**
105   * Set processing variables according to input custom parameters   * Set processing variables according to input custom parameters
106   */       */    
107  void TrkProcess::HandleCustomPar(int ncustom, char *vcustom[]){  int TrkProcess::HandleCustomPar(int ncustom, char *vcustom[]){
108    
109      for (int i=0; i< ncustom; i++){      for (int i=0; i< ncustom; i++){
110    
111          cout << "Handling Parameter " << i+1  << " of " << ncustom << ": "  << vcustom[i] << endl;
112    
113            // -----------------------------------------------------//
114            if (!strcmp(vcustom[i], "--simu")){
115                cout << "Setting DarthVader to use Simulated Data\n";
116                TrkParams::SetSimuFlag(kTRUE);
117                continue;
118            }  
119          // -----------------------------------------------------//          // -----------------------------------------------------//
120          if (!strcmp(vcustom[i], "-processFolder")){          if (!strcmp(vcustom[i], "-processFolder")){
121              if (++i >= ncustom) throw -3;              if (++i >= ncustom) throw -3;
# Line 143  void TrkProcess::HandleCustomPar(int ncu Line 171  void TrkProcess::HandleCustomPar(int ncu
171              continue;              continue;
172          }            }  
173          // -----------------------------------------------------//              // -----------------------------------------------------//    
174            if (!strcmp(vcustom[i], "-pfa")){
175                if (++i >= ncustom)throw -3;
176                TrkParams::SetPFA(atoi(vcustom[i]));
177                continue;
178            }  
179            // -----------------------------------------------------//    
180            if (!strcmp(vcustom[i], "-skip")){
181                if (++i >= ncustom)throw -3;
182                nskip = atoi(vcustom[i]);
183                continue;
184            }  
185            // -----------------------------------------------------//    
186            if ( atoi(vcustom[i]) < 0){
187                if (++i >= ncustom)throw -3;
188                partype[npar]=-1*atoi(vcustom[i-1]);
189                parpath[npar]=vcustom[i];
190                npar++;
191                continue;
192            }  
193            // -----------------------------------------------------//    
194          if (!strcmp(vcustom[i], "--verbose") || !strcmp(vcustom[i], "-v")){          if (!strcmp(vcustom[i], "--verbose") || !strcmp(vcustom[i], "-v")){
195  //          VERBOSE = true;              TrkParams::SetVerboseMode();
196              this->SetVerboseMode();              continue;
197            }
198            // -----------------------------------------------------//    
199            if (!strcmp(vcustom[i], "--warning") || !strcmp(vcustom[i], "-w")){
200                TrkParams::SetWarningMode();
201              continue;              continue;
202          }          }
203          // -----------------------------------------------------//              // -----------------------------------------------------//    
204            if (!strcmp(vcustom[i], "--help") || !strcmp(vcustom[i], "-h")){
205                PrintHelp();
206                return 1;
207            }
208            // -----------------------------------------------------//    
209          else if (!strcmp(vcustom[i], "--debug") || !strcmp(vcustom[i], "-d")){          else if (!strcmp(vcustom[i], "--debug") || !strcmp(vcustom[i], "-d")){
210  //          DEBUG = true;              TrkParams::SetDebugMode();
             this->SetDebugMode();  
211              continue;              continue;
212          };          };
213      }        }  
# Line 172  void TrkProcess::HandleCustomPar(int ncu Line 228  void TrkProcess::HandleCustomPar(int ncu
228    
229      ostatus = 0;      ostatus = 0;
230    
231        return 0;
232    
233  };  };
234  /**  /**
235   * \brief Process Level0 event   * \brief Process Level0 event
# Line 182  void TrkProcess::HandleCustomPar(int ncu Line 240  void TrkProcess::HandleCustomPar(int ncu
240  void TrkProcess::ProcessEvent(TrkLevel0 *l0_event){  void TrkProcess::ProcessEvent(TrkLevel0 *l0_event){
241    
242      // fill Level0 common from Level0 object      // fill Level0 common from Level0 object
 //    l0_event->GetCommonVar(&level0event_);  
243      l0_event->GetLevel0Struct();      l0_event->GetLevel0Struct();
244      // process the event Level0->Level1->Level2      // process the event Level0->Level1->Level2
245      int F77err = 0;      int F77err = 0;
# Line 190  void TrkProcess::ProcessEvent(TrkLevel0 Line 247  void TrkProcess::ProcessEvent(TrkLevel0
247      reductionflight_(&F77err);      reductionflight_(&F77err);
248      if(F77err < 0)throw F77err;      if(F77err < 0)throw F77err;
249      //      //
250      int pfa=0;      if(get2) analysisflight_();
     if(get2) analysisflight_(&pfa);  
251      //      //
252      ostatus = F77err;      ostatus = F77err;
253            
254  };  };
255                                    
256  void TrkProcess::Dump(){  void TrkProcess::Dump(){
257        cout << endl;
258        cout << " |-------------------------------------| "<<endl;
259        cout << "   tracker-processing input-parameters   "<< endl;
260        cout << " |-------------------------------------| "<<endl;
261        cout << "   idRun           " << idrun << endl;
262        cout << "                   (skip " << nskip <<" events)"<< endl;    
263        cout << "   get level1      " << get1 << endl;
264        cout << "   full level1     " << full1 << endl;
265        cout << "   get level2      " << get2 << endl;
266        cout << "   get hough       " << geth << endl;
267    //    cout << " frame1          " << frame1 << endl;
268    //    cout << " frame2          " << frame2 << endl;
269    //    cout << " frameh          " << frame2 << endl;
270    //    cout << " file1           " << file1 << endl;
271        cout << "   output file     " << file2 << endl;
272    //    cout << " outdir          " << outdir << endl;
273    //    cout << " process folder  " << pfolder << endl;
274    //    cout << " standalone mode " << standalone << endl;
275        for(int i=0; i<npar; i++)
276            cout << "   force loading parameters of type "<<partype[i]<<" from <--- "<<parpath[i]<<endl;
277        cout<<endl;
278    
279    //     cout << " debug mode      warning " << dbg_mode.warning << endl;
280    //     cout << " debug mode      verbose " << dbg_mode.verbose << endl;
281    //     cout << " debug mode      debug   " << dbg_mode.debug << endl << endl;
282        
283    }
284    
285      cout <<endl<< "Tracker process parameters: "<< endl;  void TrkProcess::PrintHelp(){
286      cout << " idRun           " << idrun << endl;  
287      cout << " get level1      " << get1 << endl;      printf( "\n\n +TRK [ options ] \n \n");
288      cout << " full level1     " << full1 << endl;  //    printf( "\n --version          : Print tracker software version and exit ");      
289      cout << " get level2      " << get2 << endl;      printf( "Options:");
290      cout << " get hough       " << geth << endl;      printf( "\n --help, -h                     : Print this help and exit ");  
291      cout << " frame1          " << frame1 << endl;  //    printf( "\n -idRun RUN         : ID number of the run to be processed (for reprocessing RUN=0) \n");
292      cout << " frame2          " << frame2 << endl;  //    printf( "\n -outDir OUTDIR     : Path where to put the LEVEL2 output                    [default ./ ] ");
293      cout << " frameh          " << frame2 << endl;  //    printf( "\n -processFolder DIR   : Directory (relative to OUTDIR) for other output files  [default TrackerFolder/ ] ");
294      cout << " file1           " << file1 << endl;  //    printf( "\n -processFile FILE  : Name of the LEVEL2 output file                         [default RUN.Level2.root]");
295      cout << " file2           " << file2 << endl;  //    printf( "\n -processFile1 FILE   : Name of the LEVEL1 output file                         [default RUN.Level1.rz]");
296      cout << " outdir          " << outdir << endl;  //    printf( "\n -frame1 FRAME        : type of output for LEVEL1, root/hbook                  [default hbook ] ");
297      cout << " process folder  " << pfolder << endl;  //    printf( "\n -frame2 FRAME        : type of output for LEVEL2, root/hbook                  [default root  ] ");            
298      cout << " standalone mode " << standalone << endl;      printf( "\n --get1, --get-level1           : get LEVEL1 output (store only cluster associated to tracks) [default (no LEVEL1 output) ]  ");
299      cout << " debug mode      warning " << dbg_mode.warning << endl;      printf( "\n --get1-full, --get-level1-full : get LEVEL1 output (store all clusters)                      [default (no LEVEL1 output) ]  ");
300      cout << " debug mode      verbose " << dbg_mode.verbose << endl;      printf( "\n --dontget2, --dontget-level2   : do not get LEVEL2 output                                    [default (get LEVEL2 output)]");
301      cout << " debug mode      debug   " << dbg_mode.debug << endl << endl;      printf( "\n --geth,, --get-hough           : get Hough-transform output                                  [default (no Hough-t. output) ]  ");
302        printf( "\n -pfa PFAID                     : type of output for LEVEL2, root/hbook                       [default 14 (COG4)  ] ");          
303        printf( "\n -N PATH                        : load parameter of type N=1,2... from PATH                   [default (from DB)  ] ");  
304        printf( "\n --verbose, -v                  : verbose mode ");      
305        printf( "\n --debug, -d                    : debug mode ");
306        printf( "\n --warning, -w                  : warning mode ");      
307        printf( "\n -skip NEV                      : skip first NEV events from each run ");        
308    //    printf( "\n --standalone, -s   : standalone mode (without RunInfo) ... but it might not work \n");        
309    //    printf( "\n -host HOST         : Name for the host                                      [default mysql://localhost/pamelaprod ]");
310    //    printf( "\n -user USER         : Username for the DB                                    [default anonymous] ");
311    //    printf( "\n -psw  PSW          : Password for the DB                                    [default (none)]\n \n \n");
312            
313    
314  }  }

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

  ViewVC Help
Powered by ViewVC 1.1.23