TNeProc.h 2.71 KB
Newer Older
Vratislav Chudoba's avatar
Vratislav Chudoba committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
#ifndef TUNPACKPROCESSOR_H
#define TUNPACKPROCESSOR_H
#include <TLine.h>
#include <TGraph.h>
#include <TGraphErrors.h>
#include "TGo4EventProcessor.h"

//class TNeParam;
extern int otl;

class TNeProc : public TGo4EventProcessor 
{
   public:
      TNeProc() ;
      TNeProc(const char* name);
      virtual ~TNeProc() ;

      Bool_t BuildEvent(TGo4EventElement* target); // event processing function
		double GetClasters(unsigned short n, unsigned short *x);
      static long bit[32];
	
 private:
	TH1		*fTrigger;
	TH1		*fSubEvents;
	TH1		*fEventsSizes;
//		RAW
//	CsI
	TH1		*d1CsI_L[16];
	TH1		*d1CsI_R[16];
	TH1		*d1tCsI_L[16];
	TH1		*d1tCsI_R[16];
//	Si LEFT
	TH1		*d1SQX_L[32];
	TH1		*d1SQY_L[16];
	TH1		*d1tSQX_L[32];
	TH1		*d1tSQY_L[16];
	TH1		*d1SQ20[16];
	TH1		*d1tSQ20[16];
//	Si RIGHT
	TH1		*d1SQX_R[32];
	TH1		*d1SQY_R[16];
	TH1		*d1tSQX_R[32];
	TH1		*d1tSQY_R[16];
//	ToF + MWPC + ANNULAR
	TH1		*d1ANR[16];
	TH1		*d1ANS[16];
	TH1		*d1F3[4];
	TH1		*d1tF3[4];
	TH1		*d1F5[4];
	TH1		*d1tF5[4];
	TH1		*d1F6[4];
	TH1		*d1tF6[4];
	TH1		*d1tMWPC[4];
//
//
	TH1		*d1ToF;
	TH1		*d1aF3;
	TH2		*d2ToFaF3;
	TH1		*d1aF5;
	TH2		*d2ToFaF5;
//
	TH2		*d2tF3aF3_L;
	TH2		*d2tF3aF3_R;
	TH2		*d2tF3aF3_U;
	TH2		*d2tF3aF3_D;
	TH2		*d2SQXSQY_L_D;
	TH1		*d1nSQX_L;
	TH1		*d1nSQY_L;
	TH1		*d1mSQX_L;
	TH1		*d1mSQY_L;
	TH1		*d1nSQ20;
	TH2		*d2SQXSQY_R_D;
	TH1		*d1nSQX_R;
	TH1		*d1nSQY_R;
	TH1		*d1mSQX_R;
	TH1		*d1mSQY_R;

	TH2		*d2dE_E_L[16];
	TH2		*d2dE_E_R[16];
//
	TH2		*d2dE_E_L_c[16];
	TH2		*d2dE_E_R_c[16];
//
	TH2		*d2SQ20_SQY_L;

//CALIBRATED
	TH1		*d1ESQX_L;
	TH1		*d1ESQX_R;
	TH1		*d1SQX_L_C[32];
	TH1		*d1SQY_L_C[16];
	TH1		*d1SQX_R_C[32];
	TH1		*d1SQY_R_C[16];
	TH1		*d1ANR_C[16];
	TH1		*d1ANS_C[16];
	TH1		*d1CsI_L_C[16];
	TH1		*d1CsI_R_C[16];
	TH1		*d1SQ20_C[16];
//neutrons		
	TH1		*d1neutAmp[32];
	TH1		*d1neutTAC[32];
	TH1		*d1neutTDC[32];

	TH2		*d2Ngamma[32];
//WIRES
	TH1		*d1X1;
	TH1		*d1Y1;
	TH1		*d1X2;
	TH1		*d1Y2;
	TH1		*d1NX1;
	TH1		*d1NY1;
	TH1		*d1NX2;
	TH1		*d1NY2;
	TH2		*d2XY1;
	TH2		*d2XY2;
	TH1		*d1CX1;
	TH1		*d1CY1;
	TH1		*d1CX2;
	TH1		*d1CY2;
	TH2		*d2Target; 
	TGo4Picture	*fPTrackX;
	TGraph		*fTracksX; 
	TLine           *fLWAX1;
	TLine           *fLWAX2;
	TLine           *fLWAX3;
	
	TGo4Picture	*fPTrackY;
	TGraph		*fTracksY; 
	TLine           *fLWBX1;
	TLine           *fLWBX2;
	TLine           *fLWBX3;
	int           	ntrackx,ntracky;
	int           	itrackAX;
	int           	itrackBX;
	double        	a,dx,dx1,dx2,dy1,dy2,dtx,dty;
   	double 		pxa0, pxa1, pxa2, pxa3, pxa4;
	double 		CsI_L_calib_cont[16], CsI_R_calib_cont[16];

	double 		pxb0, pxb1, pxb2, pxb3, pxb4;
	double 		pya1, pya2, pya3;
	double 		pyb1, pyb2, pyb3;
	double 		ya1, ya2, ya3;	
	double 		yb1, yb2, yb3;	

   ClassDef(TNeProc,1)
};

#endif //TUNPACKPROCESSOR_H