/[PAMELA software]/calo/flight/CaloFranzini/inc/CaloFranzini.h
ViewVC logotype

Diff of /calo/flight/CaloFranzini/inc/CaloFranzini.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by mocchiut, Tue Dec 4 12:05:29 2007 UTC revision 1.4 by mocchiut, Tue Dec 18 09:55:04 2007 UTC
# Line 5  Line 5 
5  #ifndef calofranzini_h  #ifndef calofranzini_h
6  #define calofranzini_h  #define calofranzini_h
7    
8  #include <PamLevel2.h>  #include <iostream>
9    
10  #include <TTree.h>  #include <TTree.h>
11  #include <TFriendElement.h>  #include <TFriendElement.h>
# Line 19  Line 19 
19  #include <TMatrixD.h>  #include <TMatrixD.h>
20  #include <TArrayI.h>  #include <TArrayI.h>
21  #include <TArrayF.h>  #include <TArrayF.h>
22    #include <TStyle.h>
23    #include <TCanvas.h>
24    #include <TStyle.h>
25    #include <TH1F.h>
26    //
27    
28  #include <iostream>  #include <PamLevel2.h>
29    
30  using namespace std;  using namespace std;
31    
# Line 37  class CaloFranzini : public TObject { Line 42  class CaloFranzini : public TObject {
42      TFile *file;      TFile *file;
43      Int_t nbin;      Int_t nbin;
44      TArrayF *brig;      TArrayF *brig;
45        TArrayF *brigm;
46        TArrayF *qplmean[17];
47        TMatrixD *hmat[17];
48        Int_t N;
49        Int_t NC;
50      //      //
51      // needed to avoid reprocessing the same event over and over to obtain the variables;      // needed to avoid reprocessing the same event over and over to obtain the variables;
52      //      //
# Line 45  class CaloFranzini : public TObject { Line 55  class CaloFranzini : public TObject {
55      UInt_t atime;      UInt_t atime;
56      Int_t sntr;      Int_t sntr;
57      Float_t estrip[2][22][96];      Float_t estrip[2][22][96];
58      Float_t qplane[44];      Float_t qplane[43];
59        Bool_t sel;
60        Bool_t cont;
61      //      //
62        Int_t mask18b;
63      Bool_t dofull;      Bool_t dofull;
64      Bool_t dolong;      Bool_t dolong;
65      Int_t degfre;      Int_t degfre;
# Line 67  class CaloFranzini : public TObject { Line 80  class CaloFranzini : public TObject {
80      Float_t GetNormLongTZeta(); ///< Returns longitudinal covariance parameter used for event selection      Float_t GetNormLongTZeta(); ///< Returns longitudinal covariance parameter used for event selection
81      Float_t GetNormFullTZeta(); ///< Returns full calorimeter covariance parameter used for event selection      Float_t GetNormFullTZeta(); ///< Returns full calorimeter covariance parameter used for event selection
82      //      //
83        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);
84        void Contamination(){sel = false; cont = true;}; ///< Set contamination mode: planes from N to 22 are used.
85        Int_t GetDegreeOfFreedom(){return degfre;};
86        //
87      TArrayF *LoadLongAverage(Float_t rig);      TArrayF *LoadLongAverage(Float_t rig);
88      TMatrixD *LoadCovarianceMatrix(Float_t rig);      TMatrixD *LoadCovarianceMatrix(Float_t rig);
89      //      //
90        Float_t GetAverageAt(Int_t plane, Float_t rig);
91        Float_t GetHmatrixAt(Int_t i, Int_t j, Float_t rig);
92        //
93      Bool_t Open(TString matrixfile);      Bool_t Open(TString matrixfile);
94        Bool_t LoadBin();
95        Bool_t LoadMatrices();
96        TFile *GetFile(){return file;};
97      //      //
98      Bool_t CreateMatrixFile(TString matrixfile);      Bool_t CreateMatrixFile(TString matrixfile);
99        Bool_t UpdateMatrixFile(TString matrixfile);
100      void WriteNumBin(Int_t numbin);      void WriteNumBin(Int_t numbin);
101      void WriteRigBin(TArrayF *rigbin);      void WriteRigBin(TArrayF *rigbin);
102      void WriteLongMean(TArrayF *qpl, Int_t bin);      void WriteLongMean(TArrayF *qpl, Int_t bin);
103      void WriteLongMatrix(TMatrixD *matrix, Int_t bin);      void WriteLongMatrix(TMatrixD *matrix, Int_t bin);
104        void WriteInvertedLongMatrix(TMatrixD matrix, Int_t bin);
105      void CloseMatrixFile();      void CloseMatrixFile();
106      //      //
107      void CalculateLongTZeta(){ dofull = false; dolong=true; };      void CalculateLongTZeta(){ dofull = false; dolong=true; };
108      void CalculateFullTZeta(){ dolong = false; dofull=true; };      void CalculateFullTZeta(){ dolong = false; dofull=true; };
109      void SetDebug(Bool_t d){ debug=d; };      void SetDebug(Bool_t d){ debug=d; };
110        void SetNoWpreSampler(Int_t n);
111        void SetNoWcalo(Int_t n);
112        Int_t GetNoWpreSampler(){return N;}; ///< Get the number of W planes used as presampler.
113        Int_t GetNoWcalo(){return NC;}; ///< Get the number of W planes used as calorimeter.
114        void DrawLongAverage(Float_t rig);
115      //      //
116      void Clear();      void Clear();
117      void Clear(Option_t *option){Clear();};      void Clear(Option_t *option){Clear();};

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.23