--- calo/flight/CaloFranzini/inc/CaloFranzini.h 2008/01/21 10:24:08 1.7 +++ calo/flight/CaloFranzini/inc/CaloFranzini.h 2008/01/25 15:09:05 1.8 @@ -24,6 +24,8 @@ #include #include #include +#include +#include #include // @@ -41,13 +43,14 @@ // PamLevel2 *L2; Bool_t debug; - TFile *file; + TFile *lfile; + TFile *ffile; Int_t nbin; TArrayF *brig; TArrayF *brigm; TArrayF *qplmean[17]; TMatrixD *hmat[17]; - TMatrixF *hfmat[17]; + TMatrixD *hfmat[17]; TMatrixD *fqplmean[17]; Int_t N; Int_t NC; @@ -68,10 +71,20 @@ Bool_t dofull; Bool_t dolong; Int_t degfre; + Int_t fdegfre; // Float_t longtzeta; ///< longitudinal covariance parameter used for event selection Float_t fulltzeta; ///< full calorimeter covariance parameter used for event selection // + Float_t negfulltzeta; + Float_t posfulltzeta; + Float_t minsvalue; + Float_t maxsvalue; + Float_t aveposvar; + Float_t avenegvar; + Int_t numneg; + Int_t numpos; + // public: // @@ -85,9 +98,22 @@ Float_t GetNormLongTZeta(); ///< Returns longitudinal covariance parameter used for event selection Float_t GetNormFullTZeta(); ///< Returns full calorimeter covariance parameter used for event selection // + + Float_t GetFullPositive(){Process(); return posfulltzeta;}; + Float_t GetFullNegative(){Process(); return negfulltzeta;}; + Int_t GetFullNumPositive(){Process(); return numpos;}; + Int_t GetFullNumNegative(){Process(); return numneg;}; + Float_t GetFullMaxVar(){Process(); return maxsvalue;}; + Float_t GetFullMinVar(){Process(); return minsvalue;}; + Float_t GetFullAveragePosVar(){Process(); return aveposvar;}; + Float_t GetFullAverageNegVar(){Process(); return avenegvar;}; + + // void Selection(){sel = true; cont = false;}; ///< Set selection mode: planes from 1 to 22-N are used, plane 18 - N is masked if "emulate18" variable is true (DEFAULT); void Contamination(){sel = false; cont = true;}; ///< Set contamination mode: planes from N to 22 are used. Int_t GetDegreeOfFreedom(){return degfre;}; + Int_t GetLongDegreeOfFreedom(){return degfre;}; + Int_t GetFullDegreeOfFreedom(){return fdegfre;}; // TArrayF *LoadLongAverage(Float_t rig); TMatrixD *LoadCovarianceMatrix(Float_t rig); @@ -99,14 +125,19 @@ Float_t GetFullHmatrixAt(Int_t i, Int_t j, Float_t rig); Float_t GetFullAverageAt(Int_t plane, Int_t strip, Float_t rig, Int_t rigbin); Float_t GetFullHmatrixAt(Int_t i, Int_t j, Float_t rig, Int_t rigbin); + Float_t GetFullHmatrixAt(Int_t i, Int_t j, Float_t rig, Int_t rigbin, Int_t mtherig); // Bool_t Open(TString matrixfile); + Bool_t Open(TString longmatrixfile,TString fullmatrixfile); Bool_t LoadBin(); + Bool_t LoadBin(Bool_t full); Bool_t LoadLong(); Bool_t LoadFull(); Bool_t LoadMatrices(); Bool_t LoadFullMatrices(); - TFile *GetFile(){return file;}; + TFile *GetFile(){return lfile;}; + TFile *GetLongFile(){return lfile;}; + TFile *GetFullFile(){return ffile;}; // TMatrixD *LoadFullAverage(Int_t rigbin); TMatrixD *LoadFullNAverage(Int_t rigbin); @@ -134,8 +165,10 @@ void WriteInvertedFullMatrix(TMatrixD matrix, Int_t bin); void CloseMatrixFile(); // - void CalculateLongTZeta(){ dofull = false; dolong=true; }; - void CalculateFullTZeta(){ dolong = false; dofull=true; }; + void CalculateLongTZeta(){ dolong=true; }; + void CalculateFullTZeta(){ dofull=true; }; + void CalculateLongTZeta(Bool_t bo){ dolong=bo; }; + void CalculateFullTZeta(Bool_t bo){ dofull=bo; }; void SetDebug(Bool_t d){ debug=d; }; void SetNoWpreSampler(Int_t n); void SetNoWcalo(Int_t n);