FlyoDoc_2011 Pisa 2011 by GmP --- 011

flyopunta/src/src_main/fitscntrl.cpp

00001 /***************************************************************************
00002                           gdevfis.cpp  -  description
00003                              -------------------
00004     begin                : Sun Nov 26 2000
00005     copyright            : (C) 2000 by Giuseppe m Pierazzini
00006     email                : pierazzini@unipi.it
00007  ***************************************************************************
00008  *                                                                         *
00009  *   NA48  simulation program.                                             *
00010  *                                                                         *
00011  ***************************************************************************/
00012 
00013 
00014 //
00015 //      Fisica    Pisa 4- 11-2000  GmP
00016 //
00017 #define FISICA
00018 
00019 #define APRI    0
00020 #define RIEMPI  1
00021 #define CHIUDI  2
00022 
00023 
00024 #define NEUTRI  1
00025 #define CARICHI 2
00026 #define ALLCHR  3
00027 #include "flyoh.h"
00028 #include "flyoana.h"
00029 
00030 
00031 
00032 //-------------------------------------------------------------
00033 //                F i t s C o n t r o l
00034 //-------------------------------------------------------------
00035 void FitsControl(int caso)
00036 {
00037   // caso 0 inizializza
00038   // caso 1 fits
00039   // caso 2 summary
00040 
00041 
00042   Analisi *ana;
00043 
00044 
00045   //  int ht,hts;
00046   int ko=0;
00047 
00048   switch (caso)
00049   {
00050   case APRI:
00051     //int K4g,K6g,K2p,K3p,K3l,Ka2pi,Pi2g,E2g,E6g,K2p2g,Bea;
00052     //int Kenu,Kpc2g,Kpcp0,Kpcp0g,Kpc2p0,K2p0enu,K2pcenu,Kpc3g;
00053 
00054     if(K4g>0)     Ak4gam  = new AnaK4g;     // tipo 1
00055     if(K6g>0)     Ak6gam  = new AnaK6g;     // tipo 2
00056     if(K2p>0)     Ak2pi   = new AnaK2pi;    // tipo 3
00057     if(K3p>0)     Ak3pi   = new AnaK3pi;    // tipo 4 
00058     if(Kl2>0)     Akl2    = new AnaKl2;     // tipo 23 
00059     if(Ke2g>0)    Ake2g  = new AnaKe2g;     // tipo 24
00060     if(Kpivv>0)   Akpivv  = new AnaKpivv;   // tipo 25 
00061     if(Kmunu>0)   Akmunu = new AnaKmunu;   // tipo 29
00062     if(Kpip0>0)   Akpip0  = new AnaKpip0;  // tipo 28
00063     if(Kpip0ee>0) Akpip0ee  = new AnaKpip0ee;  // tipo 31
00064     if(Kpovv>0)   Akpovv  = new AnaKpovv;   // tipo 26
00065     if(Bea>0)     Beamprt = new AnaBeam;    // tipo 30; 
00066     if(Ausr>0)    Auser   = new AnaUser;    // tipo 0
00067     if(Klambda>0) Aklambda= new AnaKlambda; // tipo 27
00068     break;
00069 
00070   case RIEMPI:
00071 
00072     // analizza i dati se richiesto
00073     ana=Primofit;
00074     FitDone=-10;
00075     while (ana != 0)
00076     {
00077       //       ana->Write_titol(); Gout<<"\n FisicaContrl    "<<endl;
00078       
00079       if(FitDone<(ko=ana->Fisica())) FitDone=ko;
00080       //     Gout<<"FitFlag "<<FitDone<<endl;
00081 
00082       ana=ana->next;
00083     }
00084     // still FitDone=-100  No fit requested
00085     // FitDone=ko;     // >= -1  bad fit ; 1 fit ok;
00086     // Gout<<"\n FitCtr "<<evento_.Event<<" FitDone="<<FitDone<<" WrtNt="<<WrtNt;
00087     break;
00088 
00089   case CHIUDI:
00090 
00091     ana=Primofit;
00092   while (ana != 0){ana->print_scale(); ana=ana->next; }
00093 
00094     break;
00095   default:
00096     break;
00097   }
00098 }
 All Classes Namespaces Files Functions Variables