#ifndef ETA_INTERPOLATION_GLOBAL_H #define ETA_INTERPOLATION_GLOBAL_H #include "etaInterpolationBase.h" class etaInterpolationGlobal : public virtual etaInterpolationBase { public: etaInterpolationGlobal(int nx=400, int ny=400, int ns=25, int nsy=25, int nb=-1, int nby=-1, double emin=1, double emax=0) : etaInterpolationBase(nx,ny,ns,nsy, nb, nby,emin,emax){}; virtual void prepareInterpolation(int &ok) { ok=1; #ifdef MYROOT1 if (hhx) delete hhx; if (hhy) delete hhy; hhx=new TH2D("hhx","hhx",heta->GetNbinsX(),heta->GetXaxis()->GetXmin(),heta->GetXaxis()->GetXmax(), heta->GetNbinsY(),heta->GetYaxis()->GetXmin(),heta->GetYaxis()->GetXmax()); hhy=new TH2D("hhy","hhy",heta->GetNbinsX(),heta->GetXaxis()->GetXmin(),heta->GetXaxis()->GetXmax(), heta->GetNbinsY(),heta->GetYaxis()->GetXmin(),heta->GetYaxis()->GetXmax()); #endif ///*Eta Distribution Rebinning*/// // double bsizeX=1./nSubPixelsX; //precision // cout<<"nPixelsX = "<(ib+1)*tot_eta*bsize) ib++; for (int iby=0; iby0) hhx[ibx+iby*nbetaX]=hix[ibx]/tot_x; else hhx[ibx+iby*nbetaX]=-1; if (tot_y>0) hhy[ibx+iby*nbetaX]=hiy[iby]/tot_y; else hhy[ibx+iby*nbetaX]=-1; } } /* ib=0; */ /* for (int iby=0; iby(ib+1)*tot_eta*bsize) ib++; */ /* for (int ibx=0; ibxSetBinContent(ibx+1,iby+1,ib); */ /* #endif */ /* #ifndef MYROOT1 */ /* hhy[ibx+iby*nbeta]=ib; */ /* #endif */ /* } */ /* } */ return ; }; etaInterpolationGlobal(etaInterpolationGlobal *orig): etaInterpolationBase(orig) {}; }; //etaInterpolationBase(nx,ny, ns, nsy, nb, nby, emin, emax), class eta2InterpolationGlobal : public virtual eta2InterpolationBase, public virtual etaInterpolationGlobal { public: eta2InterpolationGlobal(int nx=400, int ny=400, int ns=25, int nsy=25, int nb=-1, int nby=-1, double emin=1, double emax=0) : eta2InterpolationBase(nx,ny, ns, nsy, nb, nby, emin, emax), etaInterpolationGlobal(nx,ny, ns, nsy, nb, nby, emin, emax){ cout << "e2pxy " << nbetaX << " " << nbetaY << etamin << " " << etamax << " " << nSubPixelsX<< " " << nSubPixelsY << endl; }; eta2InterpolationGlobal(eta2InterpolationGlobal *orig): etaInterpolationBase(orig), etaInterpolationGlobal(orig) {}; virtual eta2InterpolationGlobal* Clone() { return new eta2InterpolationGlobal(this);}; }; //etaInterpolationBase(nx,ny, ns, nsy, nb, nby, emin, emax), class eta3InterpolationGlobal : public virtual eta3InterpolationBase, public virtual etaInterpolationGlobal { public: eta3InterpolationGlobal(int nx=400, int ny=400, int ns=25, int nsy=25, int nb=-1, int nby=-1, double emin=1, double emax=0) : eta3InterpolationBase(nx,ny, ns, nsy, nb, nby, emin, emax), etaInterpolationGlobal(nx,ny, ns, nsy, nb, nby, emin, emax){ cout << "e3pxy " << nbetaX << " " << nbetaY << etamin << " " << etamax << " " << nSubPixelsX<< " " << nSubPixelsY << endl; }; eta3InterpolationGlobal(eta3InterpolationGlobal *orig): etaInterpolationBase(orig), etaInterpolationGlobal(orig) {}; virtual eta3InterpolationGlobal* Clone() {return new eta3InterpolationGlobal(this);}; }; #endif