FlyoDoc_2011 Pisa 2011 by GmP --- 011

flyopunta/src/src_uti62/trgmpstraw.h

00001 /***************************************************************************
00002  *   Copyright (C) 2005 by Giuseppe Pierazzini          Pisa 05.09.05      *
00003  *   pierazzini@unipi.it                                                   *
00004  *                                     F l y o                             *
00005  *   Epsi/NA48                                                             *
00006  ***************************************************************************/
00007 /* Authors G.Pierazzini - G.Ruggiero */
00008 
00009 #ifndef TRGMPTRAW_H
00010 #define TRGMPTRAW_H
00011 #include "gmatrix.h"
00012 #include "devstraw.h"
00013 #include "clusgmp.h"
00014 
00015 
00016 struct Track
00017 {
00018     int id,mask,camere,single;
00019     int ic0,ic1,ic2,ic3;
00020     short int msk0,msk1,msk2,msk3, used_plans;
00021     double zby_y,zby_x;
00022     double chiq_fit;
00023     double charge;
00024     gvet Xmg;
00025     gvet Xhodx;
00026     gvet Xlkr;
00027     gvet P_in,P_out;
00028     void Print_Trk();
00029 };
00030 
00031 static const int MAXTRACK=10;
00032 class TrgmpStraw
00033 {
00034 private:
00035     int ntrk;
00036     int ncls0,ncls1,ncls2,ncls3;
00037     double z_centro_mag, Scatter_base;
00038     ClusterStraw  *pcl,*pcl0,*pcl1,*pcl2,*pcl3;
00039 
00040     void Track2Root();
00041 
00042 
00043 public:
00044     TrgmpStraw();
00045     ~TrgmpStraw();
00046 
00047     void Make_Trk();
00048     double Fitting(short int);
00049     int Verify(short int,int );
00050 
00051     //general public ddata
00052     // Max 10 tracks reconstruced
00053     Track Traccia[MAXTRACK];
00054     Track TrkNow;
00055 
00056     // Structure for root
00057     int charge_all;
00058     int ntrk_done;
00059     struct
00060     {
00061         int id[MAXTRACK],mask[MAXTRACK],camere[MAXTRACK],single[MAXTRACK],usepl[MAXTRACK],
00062         ic0[MAXTRACK],ic1[MAXTRACK],ic2[MAXTRACK],ic3[MAXTRACK];
00063         float zbyy[MAXTRACK],  zbyx[MAXTRACK];
00064         float chiq[MAXTRACK], charge[MAXTRACK], xmg[MAXTRACK], ymg[MAXTRACK],p[MAXTRACK],py[MAXTRACK];
00065         float  pxin[MAXTRACK],pzin[MAXTRACK],pxout[MAXTRACK],pzout[MAXTRACK];
00066         float  xhodx[MAXTRACK],yhodx[MAXTRACK];
00067         float  xlkr[MAXTRACK],ylkr[MAXTRACK];
00068     } Trk2Root;
00069 
00070 };
00071 
00072 #if defined(MAINFLYO)
00073 TrgmpStraw  * Trkstraw;
00074 #endif
00075 
00076 #if !defined(MAINFLYO)
00077 extern TrgmpStraw* Trkstraw;
00078 #endif
00079 
00080 #endif
 All Classes Namespaces Files Functions Variables