using namespace std;
#include<iostream>
#include<fstream>
#include"hmdctrackgcorrections.h"
#include "TBuffer.h"
#include<math.h>
ClassImp(HMdcTrackGCorrections)
   
HMdcTrackGCorrections::HMdcTrackGCorrections(const Char_t* name, const Char_t* title):
      TNamed(name,title)
{
   for(Int_t i=0; i<34; i++)
      tetaI[i]=18+2*i;
   for(Int_t i=0; i<16; i++)
      phiI[i]=60+2*i;
}
HMdcTrackGCorrections::HMdcTrackGCorrections(HMdcTrackGCorrections &corr):TNamed(corr)
{
   for(Int_t i=0; i<16; i++)
      {
	phiI[i]=corr.getPhiI(i);
      }
   for(Int_t i=0; i<34; i++)
      {
	 tetaI[i]=corr.getThetaI(i);
      }
   
   for(Int_t i=0; i<60; i++)
      {
	 precI[i]=corr.getPrecI(i);
      }
   
   for(Int_t i=0; i<34; i++)
      for(Int_t j=0; j<16; j++)
	 for(Int_t k=0; k<60; k++)
	    {
	       corrE[i][j][k]=corr.getCorrE(i,j,k);
	       corrP[i][j][k]=corr.getCorrP(i,j,k);
	       corrE1[i][j][k]=corr.getCorrE1(i,j,k);
	       corrP1[i][j][k]=corr.getCorrP1(i,j,k);
	    }
}
HMdcTrackGCorrections::~HMdcTrackGCorrections()
{
   ;
}
void HMdcTrackGCorrections::clear()
{
}
void HMdcTrackGCorrections::init(TString infile1, TString infile2,TString infile3,TString infile4)
{
   
   
   
   
   Double_t pp1,pp2,pp3;
   ifstream input1, input2,input3,input4;
   
   input1.open(infile1.Data(),ios::in);
   input2.open(infile2.Data(),ios::in);
   input3.open(infile3.Data(),ios::in);
   input4.open(infile4.Data(),ios::in);
   
   for(Int_t i=0; i<60; i++)
      {
	 input1>>precI[i];
	 input2>>pp1;  
	 input3>>pp2;
	 input4>>pp3;
      }
   for (Int_t k=0; k<34; k++)
      for (Int_t i=0; i<16; i++)
	 for(Int_t j=0; j<60; j++)
	    {
	       input1>>corrE[k][i][j];
	       input2>>corrP[k][i][j];
	       input3>>corrE1[k][i][j];
	       input4>>corrP1[k][i][j];
      }  
   input1.close();
   input2.close();
   input3.close();
   input4.close();   
}
void HMdcTrackGCorrections::Streamer(TBuffer &R__b)
{
   
   UInt_t R__s, R__c;
   if (R__b.IsReading()) {
      Version_t R__v = R__b.ReadVersion(&R__s, &R__c); if (R__v) { }
      TNamed::Streamer(R__b);
      R__b.ReadStaticArray(phiI);
      R__b.ReadStaticArray(tetaI);
      R__b.ReadStaticArray(precI);
      R__b.ReadStaticArray((Double_t*)corrE);
      R__b.ReadStaticArray((Double_t*)corrP);
     
      if(R__v==2)
      {
      R__b.ReadStaticArray((Double_t*)corrE1);
      R__b.ReadStaticArray((Double_t*)corrP1);
      }
     
     
      else 
      if(R__v<=1)
      {
         for (Int_t k=0; k<34; k++)
	  for (Int_t i=0; i<16; i++)
	   for(Int_t j=0; j<60; j++)
	    {
	     corrE1[k][i][j]=corrE[k][i][j];
	     corrP1[k][i][j]=corrP[k][i][j];
	    }
	}
	
	
	
	
       R__b.CheckByteCount(R__s, R__c, HMdcTrackGCorrections::IsA());
       }
   else {
      R__c = R__b.WriteVersion(HMdcTrackGCorrections::IsA(), kTRUE);
      TNamed::Streamer(R__b);
      R__b.WriteArray(phiI, 16);
      R__b.WriteArray(tetaI, 34);
      R__b.WriteArray(precI, 60);
      R__b.WriteArray((Double_t*)corrE, 32640);
      R__b.WriteArray((Double_t*)corrP, 32640);
      R__b.WriteArray((Double_t*)corrE1, 32640);
      R__b.WriteArray((Double_t*)corrP1, 32640);
      
      R__b.SetByteCount(R__c, kTRUE);
	 }
   }
 hmdctrackgcorrections.cc:1  hmdctrackgcorrections.cc:2  hmdctrackgcorrections.cc:3  hmdctrackgcorrections.cc:4  hmdctrackgcorrections.cc:5  hmdctrackgcorrections.cc:6  hmdctrackgcorrections.cc:7  hmdctrackgcorrections.cc:8  hmdctrackgcorrections.cc:9  hmdctrackgcorrections.cc:10  hmdctrackgcorrections.cc:11  hmdctrackgcorrections.cc:12  hmdctrackgcorrections.cc:13  hmdctrackgcorrections.cc:14  hmdctrackgcorrections.cc:15  hmdctrackgcorrections.cc:16  hmdctrackgcorrections.cc:17  hmdctrackgcorrections.cc:18  hmdctrackgcorrections.cc:19  hmdctrackgcorrections.cc:20  hmdctrackgcorrections.cc:21  hmdctrackgcorrections.cc:22  hmdctrackgcorrections.cc:23  hmdctrackgcorrections.cc:24  hmdctrackgcorrections.cc:25  hmdctrackgcorrections.cc:26  hmdctrackgcorrections.cc:27  hmdctrackgcorrections.cc:28  hmdctrackgcorrections.cc:29  hmdctrackgcorrections.cc:30  hmdctrackgcorrections.cc:31  hmdctrackgcorrections.cc:32  hmdctrackgcorrections.cc:33  hmdctrackgcorrections.cc:34  hmdctrackgcorrections.cc:35  hmdctrackgcorrections.cc:36  hmdctrackgcorrections.cc:37  hmdctrackgcorrections.cc:38  hmdctrackgcorrections.cc:39  hmdctrackgcorrections.cc:40  hmdctrackgcorrections.cc:41  hmdctrackgcorrections.cc:42  hmdctrackgcorrections.cc:43  hmdctrackgcorrections.cc:44  hmdctrackgcorrections.cc:45  hmdctrackgcorrections.cc:46  hmdctrackgcorrections.cc:47  hmdctrackgcorrections.cc:48  hmdctrackgcorrections.cc:49  hmdctrackgcorrections.cc:50  hmdctrackgcorrections.cc:51  hmdctrackgcorrections.cc:52  hmdctrackgcorrections.cc:53  hmdctrackgcorrections.cc:54  hmdctrackgcorrections.cc:55  hmdctrackgcorrections.cc:56  hmdctrackgcorrections.cc:57  hmdctrackgcorrections.cc:58  hmdctrackgcorrections.cc:59  hmdctrackgcorrections.cc:60  hmdctrackgcorrections.cc:61  hmdctrackgcorrections.cc:62  hmdctrackgcorrections.cc:63  hmdctrackgcorrections.cc:64  hmdctrackgcorrections.cc:65  hmdctrackgcorrections.cc:66  hmdctrackgcorrections.cc:67  hmdctrackgcorrections.cc:68  hmdctrackgcorrections.cc:69  hmdctrackgcorrections.cc:70  hmdctrackgcorrections.cc:71  hmdctrackgcorrections.cc:72  hmdctrackgcorrections.cc:73  hmdctrackgcorrections.cc:74  hmdctrackgcorrections.cc:75  hmdctrackgcorrections.cc:76  hmdctrackgcorrections.cc:77  hmdctrackgcorrections.cc:78  hmdctrackgcorrections.cc:79  hmdctrackgcorrections.cc:80  hmdctrackgcorrections.cc:81  hmdctrackgcorrections.cc:82  hmdctrackgcorrections.cc:83  hmdctrackgcorrections.cc:84  hmdctrackgcorrections.cc:85  hmdctrackgcorrections.cc:86  hmdctrackgcorrections.cc:87  hmdctrackgcorrections.cc:88  hmdctrackgcorrections.cc:89  hmdctrackgcorrections.cc:90  hmdctrackgcorrections.cc:91  hmdctrackgcorrections.cc:92  hmdctrackgcorrections.cc:93  hmdctrackgcorrections.cc:94  hmdctrackgcorrections.cc:95  hmdctrackgcorrections.cc:96  hmdctrackgcorrections.cc:97  hmdctrackgcorrections.cc:98  hmdctrackgcorrections.cc:99  hmdctrackgcorrections.cc:100  hmdctrackgcorrections.cc:101  hmdctrackgcorrections.cc:102  hmdctrackgcorrections.cc:103  hmdctrackgcorrections.cc:104  hmdctrackgcorrections.cc:105  hmdctrackgcorrections.cc:106  hmdctrackgcorrections.cc:107  hmdctrackgcorrections.cc:108  hmdctrackgcorrections.cc:109  hmdctrackgcorrections.cc:110  hmdctrackgcorrections.cc:111  hmdctrackgcorrections.cc:112  hmdctrackgcorrections.cc:113  hmdctrackgcorrections.cc:114  hmdctrackgcorrections.cc:115  hmdctrackgcorrections.cc:116  hmdctrackgcorrections.cc:117  hmdctrackgcorrections.cc:118  hmdctrackgcorrections.cc:119  hmdctrackgcorrections.cc:120  hmdctrackgcorrections.cc:121  hmdctrackgcorrections.cc:122  hmdctrackgcorrections.cc:123  hmdctrackgcorrections.cc:124  hmdctrackgcorrections.cc:125  hmdctrackgcorrections.cc:126  hmdctrackgcorrections.cc:127  hmdctrackgcorrections.cc:128  hmdctrackgcorrections.cc:129  hmdctrackgcorrections.cc:130  hmdctrackgcorrections.cc:131  hmdctrackgcorrections.cc:132  hmdctrackgcorrections.cc:133  hmdctrackgcorrections.cc:134  hmdctrackgcorrections.cc:135  hmdctrackgcorrections.cc:136  hmdctrackgcorrections.cc:137  hmdctrackgcorrections.cc:138  hmdctrackgcorrections.cc:139  hmdctrackgcorrections.cc:140  hmdctrackgcorrections.cc:141  hmdctrackgcorrections.cc:142  hmdctrackgcorrections.cc:143  hmdctrackgcorrections.cc:144  hmdctrackgcorrections.cc:145  hmdctrackgcorrections.cc:146